Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bsq swap 2 #8

Closed
wants to merge 47 commits into from
Closed

Conversation

chimp1984
Copy link

Merged and rebased latest master

sqrrm and others added 30 commits September 29, 2021 14:42
Broaden type requirement
Let Offer handle all OfferPayload data access.
An interface for OfferPayload currently only used by OfferPayload. Some
features won't be available for newer payload types but to fit this into
the Offer and Trade framework it's necessary to hack it a bit.
Offer protobuf has oneof FeeTxOfferPayload and AtomicOfferPayload. This is
backwards compatible since the wire format is the same for the old Offer
and the new one with offer_payload set since the index is the same.
Add a hidden account type that's automatically used for BSQ trades. This
means old orders not using AtomicAccount can still complete the trades
as per normal and new offers placed with AtomicAccount can be taken by
anyone with an upgraded client, but won't be possible to take by users
with older clients.

The atomic account is added on startup if not already added. There is no
data associated with the account, a new BSQ address will be chosen
automatically during the atomic trade process.
Copy paste of normal take offer code with extra steps removed

Added AtomicTxBuilder prototype as a way to build the atomic tx, verify
inputs and gather input requirements. Only the input requirement is used
during the take offer process.
This prepares for letting TradeManager handle AtomicTrade that is a Tradable
Add atomic trade tab under portfolio
Set txid when parsing AtomicTrade from protobuf
- Add offers service protos: GetAtomicOffer, GetMyAtomicOffer,
  GetAtomicOffers, GetMyAtomicOffers, CreateAtomicOffer.

- Add proto message AtomicOfferInfo.

- Add bool tradeAtomic field to CreateCryptoCurrencyPaymentAccountRequest.

- Add trades service protos: GetAtomicTrade, TakeAtomicOffer.

- Add proto message AtomicTradeInfo.
ghubstan and others added 17 commits September 29, 2021 14:42
All trade fees are now paid using BSQ for atomic trades. The UI elements
have still not been removed
Clean up some copy paste residue from UI classes

Remove unused AtomicModel
Use bitcoinj version that clones incoming transactions.

This fixes inconsistent wallet problems caused by bisq creating
transactions with outputs going to both the BSQ and BTC wallets.
We need to use capabilities to check if we can send a
msg to the peer containing BSQ_Swap offer data.
Added also support for BundleOfEnvelopes in the
noCapabilityRequiredOrCapabilityIsSupported method and
refactored the method.
@sqrrm
Copy link
Owner

sqrrm commented Sep 29, 2021

Commits already cherry picked and master merged

@sqrrm sqrrm closed this Sep 29, 2021
sqrrm pushed a commit that referenced this pull request Dec 16, 2022
…-opt-n-doc

Fix API CLI's '--payment-account-id' opt name, document 'createcryptopaymentacct' (#8)
sqrrm pushed a commit that referenced this pull request Dec 16, 2022
…service

Remove GetTradeStatistics service from grpc.proto [#8]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants