Commit Graph

5931 Commits

Author SHA1 Message Date
jmacxx
42428b79b9
CashByMail show terms and conditions upon taking an offer 2021-04-06 22:03:52 -05:00
Devin Bileck
b85b0862cb
Add BTC node wubwzaadboxwiffa.onion
Adding this node to help alleviate the increased network load.
2021-04-05 11:53:44 -07:00
jmacxx
62021e4223
Fix shutdown persistence issue in Seednode 2021-04-02 23:26:35 -05:00
ghubstan
6bde12ba40
Improve takeoffer output and failure reason messaging
- Added AvailabilityResultWithDescription proto for better takeoffer failure msgs.
- Added VerifyBsqSentToAddress impl to api, but don't expose to CLI yet.
- Show BSQ Buyer Address in gettrade output (changed cli output formatting classes).
- Fixed api.model.PaymentAccountPayloadInfo altcoin instant acct support bug
2021-04-01 16:40:08 -03:00
ghubstan
6299dc33d9
Merge branch '01-api-add-createcryptopaymentacct' into 02-api-trade-contract-details 2021-04-01 15:58:59 -03:00
ghubstan
58c885efc1
Add support for creating instant altcoin payment accounts in api
- Added bool tradeInstant field to proto message def.
- Adjusted core createcryptopaymentacct impl to new tradeInstant request param.
- Adjusted cli side createcryptopaymentacct impl to new tradeInstant request param.
- Fixed CliMain's takeoffer help text (was missing the --payment-account opt).
2021-04-01 15:43:48 -03:00
ghubstan
2d66a5996d
Merge branch 'master' into 01-api-add-createcryptopaymentacct 2021-04-01 14:54:05 -03:00
jmacxx
089e476901
fix NPE in portfolio view when market price n/a 2021-04-01 09:47:12 +02:00
jmacxx
d567170bdb
use semaphore for SPV resync 2021-04-01 09:47:02 +02:00
Christoph Atteneder
dca0d5b5c2
Merge pull request #5385 from jmacxx/fix_npe_portfolio_view
Fix NPE in Portfolio View when market price n/a
2021-04-01 09:43:37 +02:00
sqrrm
308d8dec52
Merge pull request #5380 from jmacxx/spv_resync_use_semaphore
Use semaphore for SPV resync
2021-03-31 23:00:25 +02:00
jmacxx
e00532a040
fix NPE in portfolio view when market price n/a 2021-03-31 15:13:10 -05:00
jmacxx
26da6cbbe3
use semaphore for SPV resync 2021-03-30 22:42:48 -05:00
cd2357
ca5f41a9d9
Merge remote-tracking branch 'bisq-network/hotfix/v1.6.1' into upgrade-javafax-14
# Conflicts:
#	build.gradle
2021-03-29 18:37:14 +02:00
jmacxx
bf81c03708
Add a visual border indication for dispute chat window 2021-03-28 15:53:01 -05:00
jmacxx
094da74433
allow default fee values in leniency check 2021-03-28 20:14:59 +02:00
Christoph Atteneder
0815a99930
Update translations for v1.6.1 2021-03-28 20:13:34 +02:00
Christoph Atteneder
fd17c5790e
Merge pull request #5365 from jmacxx/fee_validation_default_rate
Allow default fee values in leniency check
2021-03-28 20:04:52 +02:00
jmacxx
93da6815b3
allow default fee values in leniency check 2021-03-27 15:50:58 -05:00
ghubstan
9e035e5542
Provide more offer & contract detail available to CLI.
This change adds offer and trade contract detail to the API's Offer
and Trade protos, and improves CLI output formatting.

- Appended missing fields to OfferInfo proto message:
	uint64 sellerSecurityDeposit = 20;
	string offerFeePaymentTxId = 21;
	uint64 txFee = 22;
	uint64 makerFee = 23;

- Added new api proto messages ContractInfo and PaymentAccountPayloadInfo.
  Lighterweight protos are needed because core Trade/Contract classes are
  not visible to CLI.

- Appended ContractInfo field to api proto message TradeInfo.

- Added proto / model converters for ContractInfo and PaymentAccountPayloadInfo,
  and adjusted OfferInfo & TradeInfo.

- Improved CLI output formatting.  Added more trade detail to CLI's gettrade output,
  and prepared to support BTC/BSQ trading pair.  Note a reviewer is advised to
  look at the CLI outout formatting class files instead getting bogged down in the
  many commit changes.
2021-03-25 19:23:06 -03:00
ghubstan
c3f5669cf8
Add api method createcryptopaymentacct
This change supports creation of BSQ BLOCKCHAIN payment method accounts.

- Added proto message defs to grpc.proto.
- Added grpc server boilerplate to GrpcPaymentAccountsService.
- Added server impl to CoreApi, CorePaymentAccountsService.
- Added createcryptopaymentacct-help.txt.
- Added CLI side support for new api method.
- Added opt parsing unit tests to OptionParsersTest.

This is the 1st PR in a series, with the goal of supporting the BTC/BSQ trading
pair.  Support for other crypto currency payment accounts will be added later.
2021-03-25 18:36:26 -03:00
Christoph Atteneder
306f0f0126
Update bitcoinj checkpoints for v1.6.0 2021-03-24 10:55:02 +01:00
jmacxx
39d86b4f80
Fee validation leniency using old DAO param values 2021-03-24 09:58:24 +01:00
Christoph Atteneder
4290613973
Merge pull request #5347 from jmacxx/fee_validation_allow_old_param
Fee validation leniency using old DAO param values
2021-03-24 09:58:02 +01:00
jmacxx
508b523186
Review changes for Disputes GUI
highlight trade period end using an appropriate CSS alert style
system messages to show in chat unread message count
2021-03-24 09:46:25 +01:00
jmacxx
e9b3b9ac1f
Review changes for Disputes GUI
highlight trade period end using an appropriate CSS alert style
system messages to show in chat unread message count
2021-03-23 23:02:21 -05:00
jmacxx
f85667b55a
Fee validation leniency using old DAO param values 2021-03-23 15:32:01 -05:00
jmacxx
8a9843bc15
Pop-up warning for trading with risky payment methods 2021-03-23 15:11:57 +01:00
jmacxx
fb1f5855bd
Pop-up warning for trading with risky payment methods 2021-03-22 14:45:53 -05:00
ghubstan
306dc05a65
Fix method name and error msg 2021-03-22 14:48:34 +01:00
ghubstan
1635ede936
Remove log statement, add comment 2021-03-22 14:48:20 +01:00
ghubstan
d21e462d27
Fix typo 2021-03-22 14:48:14 +01:00
ghubstan
d0338d729b
Set WalletsManager key if missing
This change sets the WalletsManager key the first time `unlockwallet` is called.
This is necessary because the key cannot be set during api daemon startup, as it
normally is at UI startup.  See commit eb15fda229.
2021-03-22 14:48:04 +01:00
ghubstan
dd2b17fde7
Block UI popups in api startup's encrypted wallet init
Running the UI's walletPasswordHandler during wallet initialization will fail
and block wallet initialization.  This change ensures an encrypted wallet
does not trigger a walletPasswordHandler.run() if isApiUser=true during startup.
2021-03-22 14:47:42 +01:00
sqrrm
9c40a641f3
Merge pull request #5337 from ghubstan/01-fix-api-encrypted-walletappsetup
Fix API startup's wallet.init failure when wallet is encrypted
2021-03-22 12:36:13 +01:00
Christoph Atteneder
0fd7efd80f
Merge pull request #5000 from stejbac/implement-segwit-for-bsq
Implement Segwit for BSQ
2021-03-22 12:01:15 +01:00
sqrrm
94995da39a
Revert "Lower tolerated small amount"
This reverts commit 99123b7297.
2021-03-22 11:37:49 +01:00
sqrrm
520b6481f4
Revert "Lower tolerated small amount"
This reverts commit 99123b7297.
2021-03-22 11:12:10 +01:00
Steven Barclay
f21379160b
Merge branch 'release/v1.6.0' into implement-segwit-for-bsq 2021-03-20 23:18:49 +00:00
ghubstan
d819e91b0c
Fix method name and error msg 2021-03-20 19:18:40 -03:00
ghubstan
cfd52cdb8c
Remove log statement, add comment 2021-03-20 18:48:01 -03:00
ghubstan
6913e82f74
Fix typo 2021-03-20 18:47:21 -03:00
Steven Barclay
05ea293595
Activate Segwit DAO hard fork 4 weeks after v1.6.0 release
Push back the (2nd) DAO hard fork activation block height to 680300,
which is 4 weeks after the planned 1.6.0 release around 2021/03/25.
(Also push back the testnet block activation height to 1943000 - 2 weeks
from now assuming an average block time of 10 minutes.)
2021-03-20 21:39:26 +00:00
ghubstan
838595cb03
Set WalletsManager key if missing
This change sets the WalletsManager key the first time `unlockwallet` is called.
This is necessary because the key cannot be set during api daemon startup, as it
normally is at UI startup.  See commit eb15fda229.
2021-03-20 18:38:33 -03:00
ghubstan
eb15fda229
Block UI popups in api startup's encrypted wallet init
Running the UI's walletPasswordHandler during wallet initialization will fail
and block wallet initialization.  This change ensures an encrypted wallet
does not trigger a walletPasswordHandler.run() if isApiUser=true during startup.
2021-03-20 18:22:52 -03:00
ghubstan
1bf2fd7642
Validate paymentAccountId in createAndPlaceOffer 2021-03-19 21:24:32 +01:00
ghubstan
344f1613d1
Fix api getfundingaddresses bug
This change uses recently added walletService.isAddressUnused to ensure
the api's CoreWalletsService creates an unused address if none exists.

- grpc.proto:  Add bool isAddressUnused field to message AddressBalanceInfo.
- AddressBalanceInfo:  Adjust AddressBalanceInfo proto wrapper.
- CoreWalletsService:  Use walletService.isAddressUnused in getFundingAddresses.
- GrpcClient:  Adjust to modified AddressBalanceInfo.
- TableFormat, ColumnHeaderConstants:  Add 'Is Used' column to getfundingaddresses output.

Note: bugfix is out of scope for this PR, but the test case helped expose this bug.
2021-03-19 21:24:26 +01:00
ghubstan
2bd6d72c40
Avoid NPE due to null fee while wrapping tx in TxInfo
Add debugging convenience to core.api.model.TxInfo.
2021-03-19 21:19:42 +01:00
ghubstan
9b62a005df
Refactor takeoffer reply proto & ErrorMessageHandler
- Add description msg TakeOfferReply proto, and fromProto method
  to core.offer.enum AvailabilityResult.  The description field
  maps a client usable error message to the enum.

- Adjust GrpcErrorMessageHandler to add AvailabilityResult.description()
  to takeoffer reply.

- Refactor (split up) GrpcClient's takeOffer.  Add getTakeOfferReply()
  to give clients a chance to make choices based on the reply's
  AvailabilityResult when the takeoffer command did not result in a
  trade. (Some errors are fatal, some not.)
2021-03-19 19:38:03 +01:00
ghubstan
14215a1fbd
Adjust grpc & core services to new takeoffer error handling
- GrpcErrorMessageHandler  A new ErrorMessageHandler implementation
  to get around the api specific problem of having to use Task
  ErrorMessageHandlers that build task error messages for the UI.

- GrpcExceptionHandler  A new method for working with the
  ErrorMessageHandler interface.

- GrpcTradesService, CoreApi, CoreTradesService:  Ajdusted takeoffer
  error handling to give a failure reason provided by the new
  GrpcErrorMessageHandler.
2021-03-19 19:37:10 +01:00
ghubstan
7683569abf
Inject CoreContext into OpenOfferManager, adjust test 2021-03-19 19:37:00 +01:00
ghubstan
d747acc567
Adjust protos for takeoffer error handing
- Add PRICE_CHECK_FAILED to enum AvailabilityResult.
- Add enum AvailabilityResult to TakeOfferReply message.
2021-03-19 19:36:48 +01:00
sqrrm
53f42c4885
Merge pull request #5303 from ghubstan/03-add-long-running-trade-test
Add LongRunningTradesTest to apitest
2021-03-19 12:20:00 +01:00
sqrrm
59a0cc41dc
Merge pull request #5302 from ghubstan/02-modify-txinfo
Avoid NPE due to null fee while wrapping tx in TxInfo
2021-03-19 12:05:09 +01:00
sqrrm
1c3fc41c33
Merge pull request #5294 from ghubstan/01-fix-takeoffer-err-handling
Improve takeoffer error handing
2021-03-19 11:55:18 +01:00
ghubstan
0b22c98802
Disambiguate payment acct json form's "country" field
Make it clear the user needs to enter a two letter country code
in json form's "country" field, not a country name.

The json form's field name was not changed to "countryCode" in
this change for the following reason:

The API's payment account forms are dynamically generated using
reflection, and PaymentAccount class hierarchy @Setter methods
determine which form fields are included or excluded.  Reflection
and @Setter methods are also used when reading completed json
forms, to set the field values on a new PaymentAccount instance
before it is persisted.

CountryBasedPaymentAccount subclasses have a country field and a
@Setter, not a countryCode field, hence this shortcut to informing
the user the country field value is a country-code.
2021-03-18 20:34:10 +01:00
ghubstan
67252642c7
Disambiguate payment acct json form's "country" field
Make it clear the user needs to enter a two letter country code
in json form's "country" field, not a country name.

The json form's field name was not changed to "countryCode" in
this change for the following reason:

The API's payment account forms are dynamically generated using
reflection, and PaymentAccount class hierarchy @Setter methods
determine which form fields are included or excluded.  Reflection
and @Setter methods are also used when reading completed json
forms, to set the field values on a new PaymentAccount instance
before it is persisted.

CountryBasedPaymentAccount subclasses have a country field and a
@Setter, not a countryCode field, hence this shortcut to informing
the user the country field value is a country-code.
2021-03-18 16:14:28 -03:00
Christoph Atteneder
3cf1f53e4f
Update translations for v1.6.0 2021-03-18 19:20:53 +01:00
Christoph Atteneder
d34a73276e
Merge pull request #5326 from sqrrm/lower-deposit
Lower min deposit to 0.001 BTC
2021-03-18 19:02:24 +01:00
ghubstan
dc4f730605
Validate paymentAccountId in createAndPlaceOffer 2021-03-18 14:46:28 -03:00
sqrrm
e6b7c88bed
Lower min deposit to 0.001 BTC
Lower min refund to half of min deposit as it doesn't make sense to have
a higher min refund than the min deposit.
2021-03-18 13:44:05 +01:00
jmacxx
47ad4219e2
Merge branch 'master' into mempool_check_maker_tx 2021-03-17 16:26:38 -05:00
jmacxx
9fcd65f320
Validate maker/taker fees using mempool lookup
apply @chimp1984 patch.txt code review suggestions
taker tx check moved to trade step 2, after confirmation
solve issue with calculating expected fees for unconfirmed tx
resolve conflict with PR5207 (Disputes UI)
check new offers after 1 block; check Json string not null; warn -> info
remove unused parameter
remove debugging log.warn message
2021-03-17 16:23:18 -05:00
jmacxx
8dd2328b03
handle case where bitcoind chain height is stale
improve description of chain height display
2021-03-17 16:00:57 -05:00
Christoph Atteneder
9270398fb3
Merge pull request #5207 from jmacxx/improve_dispute_chat
Improve chat functionality of mediation/arbitration
2021-03-17 09:38:35 +01:00
Christoph Atteneder
16230c7723
Merge pull request #5316 from chimp1984/add-pay-from-bsq-wallet-button
Add pay from BSQ wallet button
2021-03-17 09:35:09 +01:00
Christoph Atteneder
033ec325d2
Merge pull request #5318 from sqrrm/lower-unsigned-size
Lower tolerated small amount
2021-03-17 09:27:02 +01:00
sqrrm
99123b7297
Lower tolerated small amount
Split tolerated amount for placing offers with unsigned accounts
and tolerated amount for taking offers.
2021-03-16 13:07:42 +01:00
chimp1984
2702a7eff4
Add button to buyers trade step 2 view in case of a BSQ
trade to fill in the amount and address to the BSQ send view.
2021-03-15 17:58:05 -05:00
jmacxx
ad4927a666
code review changes requested by @ripcurlx
renamed alertCountProperty to badgeCountProperty
changed the badge counting policy so that the count of chat messages does not contribute to the badge number, but merely the presence of chat messages, and/or the new flag.
show an explanatory message when trader is not allowed to close own dispute ticket
removed some comments and code that were accidentally included from PR5160
renamed variable tpe to tradePeriodEnd
renamed variable cptyName to counterpartyName
clear the new badge on double-click of dispute tablerow
2021-03-15 17:24:00 -05:00
chimp1984
80c23883c8
Add popup for summary of trade history 2021-03-15 16:30:11 -05:00
ghubstan
8783889c36
Fix api getfundingaddresses bug
This change uses recently added walletService.isAddressUnused to ensure
the api's CoreWalletsService creates an unused address if none exists.

- grpc.proto:  Add bool isAddressUnused field to message AddressBalanceInfo.
- AddressBalanceInfo:  Adjust AddressBalanceInfo proto wrapper.
- CoreWalletsService:  Use walletService.isAddressUnused in getFundingAddresses.
- GrpcClient:  Adjust to modified AddressBalanceInfo.
- TableFormat, ColumnHeaderConstants:  Add 'Is Used' column to getfundingaddresses output.

Note: bugfix is out of scope for this PR, but the test case helped expose this bug.
2021-03-15 16:15:06 -03:00
chimp1984
b421605345
Add formatCoin method with appendCode param
Remove @NotNull annotation (unnecessary verbose, default is non null, if null then we annotate with @Nullable)
2021-03-15 11:07:12 -05:00
ghubstan
98c6a8ee67
Merge branch '01-fix-takeoffer-err-handling' into 02-modify-txinfo 2021-03-15 11:20:16 -03:00
ghubstan
1d56d79457
Refactor takeoffer reply proto & ErrorMessageHandler
- Add description msg TakeOfferReply proto, and fromProto method
  to core.offer.enum AvailabilityResult.  The description field
  maps a client usable error message to the enum.

- Adjust GrpcErrorMessageHandler to add AvailabilityResult.description()
  to takeoffer reply.

- Refactor (split up) GrpcClient's takeOffer.  Add getTakeOfferReply()
  to give clients a chance to make choices based on the reply's
  AvailabilityResult when the takeoffer command did not result in a
  trade. (Some errors are fatal, some not.)
2021-03-15 11:17:09 -03:00
BtcContributor
ebd98f850f
Add custom withdrawal transaction fee options on Send funds and remove it from settings 2021-03-15 15:03:38 +01:00
ghubstan
64d4c311fb
Avoid NPE due to null fee while wrapping tx in TxInfo
Add debugging convenience to core.api.model.TxInfo.
2021-03-14 12:08:13 -03:00
ghubstan
4a68773cfc
Merge branch 'master' into 01-fix-takeoffer-err-handling 2021-03-14 11:52:40 -03:00
BtcContributor
e1b9afa169
Code refactoring and delete translations 2021-03-12 11:10:20 +01:00
sqrrm
edbac95f7c
Merge pull request #5292 from ghubstan/00-fix-corecontext-usage
Fix singleton CoreContext usage
2021-03-11 17:24:55 +01:00
Christoph Atteneder
0e6ce20453
Merge pull request #5216 from huey735/rename-summary-notes-category
Rename summary notes "Seller not responding"  category
2021-03-11 17:01:56 +01:00
Christoph Atteneder
caac1b4c1e
Merge pull request #5272 from BtcContributor/fixbackupbutton
Fix Set Password text button
2021-03-11 16:07:26 +01:00
BtcContributor
2c945b0c40
change text and navigation 2021-03-11 15:55:47 +01:00
sqrrm
a1939f92e6
Merge pull request #5222 from ripcurlx/fix-key-shortcut-documentation
Fix key shortcut documentation when using CMD+Y
2021-03-11 11:55:53 +01:00
Christoph Atteneder
7394da5462
Merge pull request #5206 from jmacxx/improve_mediation_tools
Improve mediation tools / logging.
2021-03-11 11:49:58 +01:00
Christoph Atteneder
43b8f0afbf
Merge pull request #5209 from JaredBoone/master
Changes "Verify result" to "Check signature"
2021-03-11 09:36:44 +01:00
ghubstan
d0590d93a9
Adjust grpc & core services to new takeoffer error handling
- GrpcErrorMessageHandler  A new ErrorMessageHandler implementation
  to get around the api specific problem of having to use Task
  ErrorMessageHandlers that build task error messages for the UI.

- GrpcExceptionHandler  A new method for working with the
  ErrorMessageHandler interface.

- GrpcTradesService, CoreApi, CoreTradesService:  Ajdusted takeoffer
  error handling to give a failure reason provided by the new
  GrpcErrorMessageHandler.
2021-03-10 14:16:15 -03:00
ghubstan
067a5c7a08
Inject CoreContext into OpenOfferManager, adjust test 2021-03-10 14:15:59 -03:00
ghubstan
5c097d3bcf
Adjust protos for takeoffer error handing
- Add PRICE_CHECK_FAILED to enum AvailabilityResult.
- Add enum AvailabilityResult to TakeOfferReply message.
2021-03-10 14:15:29 -03:00
sqrrm
eabb173767
Add NGN as a default currency 2021-03-10 14:41:28 +01:00
ghubstan
58100fda6a
Fix singleton CoreContext usage
After GrpcServer builds a gRPC server instance, it calls injected
CoreContext#setApiUser(true).  The same, singleton CoreContext object
is injected into CoreService constructors, which use the coreContext#
isApiUser value (set true by the server builder) to set their own class
level boolean isApiUser fields.

When CoreContext was added, I was fooled by the correct behavior I
saw while stepping through the server debugger.  But now I see that
the correct boolean value in CoreContext is only available after
CoreService constructors have finished instantiating themselves -
- not in time.

In this change, the CoreContext becomes a class level final field
in CoreServices, and the correct coreContex.isApiUser value is available
in the CoreService methods.
2021-03-10 08:26:14 -03:00
sqrrm
463f87b39e
Merge pull request #5284 from ghubstan/07-validate-paymentacct-n-new-offer
Validate offer <-> payment-acct in createoffer
2021-03-09 16:51:56 +01:00
ghubstan
2161c936f1
Adjust canceloffer to getmyoffer bugfix (commit d6c79fc) 2021-03-08 16:36:01 -03:00
ghubstan
d6c79fca70
Filter out 'my' offers from 'available' offers 2021-03-08 16:26:16 -03:00
ghubstan
04b52f873e
Fix setSelectedCurrency bug, and replace unnecessary reflection usage
Commit de59c0a5f9 did not persist the
assigned selected currency, this fixes the bug.
2021-03-08 16:02:18 -03:00
ghubstan
de59c0a5f9
Assign selected trading currency on new payment accts (api only)
If a new account has a trading currency, assign it as the selected trading currency.

Also fixed a payment acct console formatting issue (left justify the ccy code).
2021-03-08 15:22:28 -03:00
ghubstan
b4f4d90e05
Add tradeCurrencies field to Transferwise acct form
These changes make tradeCurrencies a required twise acct form field.

Addresses issue https://github.com/bisq-network/bisq/issues/5281

- Added comment to PaymentAccountForm about special 'tradeCurrencies' field handling.
- Added support for Transferwise 'tradeCurrencies' to PaymentAccountTypeAdapter.
- Added instance of isTransferwiseAccount check to PaymentAccount.
- Added methods to CurrencyUtil to convert comma delimited code list to TradeCurrency list.
- Added methods to ReflectionUtil for getting fields and methods on class.
- Added required field check to CorePaymentAccountsService.
- Added CreatePaymentAccount test cases.
2021-03-08 14:47:30 -03:00
ghubstan
baca7001ea
Fix unnecessary use of fully qualified name 'String.format' 2021-03-07 20:05:39 -03:00
ghubstan
99fea74e09
Validate offer <-> payment-acct in createoffer
This change prohibits creation of new offers with incompatible payment
accounts with the api.

- PaymentAccountUtil
  Renamed isAnyTakerPaymentAccountValidForOffer -> isAnyPaymentAccountValidForOffer.
  Renmaed isTakerPaymentAccountValidForOffer -> isPaymentAccountValidForOffer.
  Deleted commented code.

- PaymentAccounts: Adjusted to PaymentAccountUtil method name changes.

- OfferFilter: Adjusted to PaymentAccountUtil method name changes.

- OfferBookViewModelTest: Adjusted to PaymentAccountUtil method name changes.

- Add CoreOffersService#verifyPaymentAccountIsValidForOffer

- ValidateCreateOfferTest, OfferTest: Added test cases.
2021-03-07 19:51:29 -03:00
chimp1984
f43dc2032f
Handle flush at shutdown differently to flush at backup 2021-03-06 12:02:17 -05:00
chimp1984
569a2de641
Call onAllServicesInitialized on PersistenceManager and
prevent write to disk before it is called.

In case the user started Bisq 2 times, the second process
would have called the flushAllDataToDisk at shutdown and
overwrote data from the running app.
2021-03-06 10:24:25 -05:00
jmacxx
cc56470b2f
Improve chat functionality of mediation/arbitration
Show badge with number of unread chat messages on each ticket
Use icons for chat, info and process ticket functions
Select a row by clicking on it, no clunky select button needed.
Show chat messages in a movable popup window.
More space for ticket list.

Implement requested feature additions:

Indicate if the trade period is over
Indicate more clearly the sender of each chat message
Support badge count
Indicate the XMR tx proof (when applicable)
Allow trader to close own mediation ticket if the trade is paid out

Fixes:

null check for cases when extraData null/not applicable
when upgrading closed disputes, clear chat unread count
2021-03-03 18:41:17 -06:00
BtcContributor
ba5705ca74
fix setpassword text button 2021-03-03 12:13:10 +01:00
Christoph Atteneder
0c9d278629
Merge pull request #5235 from jmacxx/mempool_minimumFee
Obtain minimumFee from mempool api in place of hardcoded value
2021-03-01 11:18:16 +01:00
sqrrm
80c722803d
Merge pull request #5247 from bisq-network/release/v1.5.7
Release/v1.5.7
2021-02-26 22:34:08 +01:00
jmacxx
fd7ce51bf9
Field id strings for FeeService extracted to Config.java 2021-02-25 11:51:40 -06:00
ghubstan
e125ba8ab8
Prepare to adjust api to new minimum fee per vbyte (from feeService)
Commit c33ac1b983 changed the source of
the min tx fee rate, and the api will adjust after the associated PR
is merged.  For now, the required change is a comment.
2021-02-25 11:53:12 -03:00
ghubstan
b725f06514
Adjust api to new minimum fee per vbyte
The BaseCurrencyNetwork#getDefaultMinFeePerVbyte now returns
15 (sats/byte) since commit b341bb6e89.

This change adjusts the api to the new min tx fee rate by validating
the api's setTxFeeRatePreference param, and throwing an appropirate
exception if the param value is below the minimum.  Also adjusted a broken
test, and added a new test to check the appropriate exception is received
from the server.
2021-02-25 11:31:13 -03:00
jmacxx
be78f47b0e
Update Preferences tests to new constructor signature 2021-02-25 08:27:30 -06:00
ghubstan
3dde3cbeef
Fix typo in toString 2021-02-25 10:37:30 -03:00
jmacxx
c33ac1b983
Obtain minimumFee from mempool api in place of hardcoded value 2021-02-24 22:47:06 -06:00
Christoph Atteneder
0feb1079b8
Merge pull request #5223 from BtcContributor/lengthcheck
Fix length check text on manual payout tool
2021-02-24 10:33:06 +01:00
jmacxx
dab8b638ae
TraderChatManager to handle onAllServicesInitialized
Upon receipt of onAllServicesInitialized, TraderChatManager should
call tryApplyMessages in order to process any pending mailbox
messages stored up while offline.
2021-02-24 09:14:02 +01:00
jmacxx
b3263be5e9
Fix initialization ordering issue
TradeManager must be inited before MailboxMessageService
2021-02-24 09:13:52 +01:00
jmacxx
d3b62b1a58
TraderChatManager to handle onAllServicesInitialized
Upon receipt of onAllServicesInitialized, TraderChatManager should
call tryApplyMessages in order to process any pending mailbox
messages stored up while offline.
2021-02-23 21:12:59 -06:00
BtcContributor
6edb318236
Fix length check text on manual payout tool 2021-02-23 17:57:47 +01:00
Christoph Atteneder
5951e140e3
Fix key shortcut documentation when using CMD+Y
This behavior change as you cannot manually fails an open trade anymore. Only unfail it after selecting it in the failed trades section and pressing CMD+Y
2021-02-23 09:23:31 +01:00
jmacxx
0e5c7e5de7
Fix initialization ordering issue
TradeManager must be inited before MailboxMessageService
2021-02-22 17:56:30 -06:00
Christoph Atteneder
aae52f801a
Update translations for v1.5.7 2021-02-22 15:54:53 +01:00
Christoph Atteneder
c30fd72990
Update bitcoinj checkpoints for v1.5.7 2021-02-22 15:51:33 +01:00
Huey
b8d24291b7
Rename summary notes "Seller not responding" category
I renamed the string for the
disputeSummaryWindow.reason.SELLER_NOT_RESPONDING key because
BTC buyers can also be unresponsive.
2021-02-22 10:16:32 +00:00
Jared Boone
5ddce75213
resolves #5208 2021-02-19 17:12:35 -08:00
Christoph Atteneder
314e6ce314
Merge pull request #5142 from chimp1984/add-coin-input-control
Add coin input control
2021-02-19 19:13:31 +01:00
jmacxx
df0acf1469
Improve mediation tools.
Emergency payout tool to also show Open mediation tickets.
Log txHex of MediatedPayoutTxPublished.
2021-02-18 16:15:35 -06:00
Christoph Atteneder
14ae0c3f8c
Merge pull request #5156 from chimp1984/improve-facts-and-figures
Improve facts and figures
2021-02-18 21:32:17 +01:00
Christoph Atteneder
2e89e590b3
Merge pull request #5196 from jmacxx/fix_SignaturePubKey_error
Prevent erroneous logging of 'SignaturePubKey in message does not match'
2021-02-18 21:18:49 +01:00
chimp1984
9ae76b621f
Add comment 2021-02-18 11:44:12 -05:00
chimp1984
5b2fed0b8a
Fix typos 2021-02-18 11:42:16 -05:00
chimp1984
fdad973f4c
Add TxInputSelectionWindow for coin input selection.
It is both for BSQ and non-BSQ (BTC) used.
2021-02-18 11:42:16 -05:00
chimp1984
b345918219
Add getSpendableBsqTransactionOutputs and getSpendableNonBsqTransactionOutputs
methods.
Add overridden getPreparedSendBsqTx and getPreparedSendBtcTx methods
with utxoCandidates param.

If utxoCandidates is not null we apply it to our coinSelector.
As the coin selector is re-used we re-set it immediately after
it was applied (inside coin selector select method).

Set preferences in nonBsqCoinSelector
2021-02-18 11:42:16 -05:00
chimp1984
06a7ecd382
Add support for utxo set used in coin selection if set
We use that to use only the selected utxos instead of all available.
2021-02-18 11:42:16 -05:00
chimp1984
24370146e6
Implement isDustAttackUtxo protection 2021-02-18 11:42:15 -05:00
chimp1984
cd0a28361f
Add average bsq price text fields from timeline selection 2021-02-18 11:40:30 -05:00
chimp1984
683e768a00
Add total volume text fields 2021-02-18 11:40:30 -05:00
chimp1984
25f35fea9e
Update text field values when time interval selection changes 2021-02-18 11:40:30 -05:00
chimp1984
f421411bba
Add price and volume charts 2021-02-18 11:40:30 -05:00
chimp1984
d2f43373fd
Add comments 2021-02-18 11:40:29 -05:00
chimp1984
9dab4fd65a
Add total issuance and total burned series 2021-02-18 11:40:29 -05:00
chimp1984
632653a751
Add new chart view 2021-02-18 11:40:28 -05:00
chimp1984
db86b89377
Exclude proof of burn amounts from trade fee display.
Use Proof of burn fee instead of burned BSQ from invalid tx.
2021-02-18 11:40:10 -05:00
ghubstan
1154085632
Add api method 'stop'
This change gives CLI users a 'stop' command to shutdown a daemon.

- Server side gRPC boilerpate was added to :proto and :daemon.

- When the new GrpcShutdownService accepts a 'stop' request from the CLI,
  it calls UserThread.runAfter(BisqHeadlessApp.getShutDownHandler(), 500, MILLISECONDS);

- Method help file 'stop-help.txt' was added to :core.

- Client side gRPC boiler plate and 'stop' implementation was added to :cli.
2021-02-18 11:54:10 -03:00
cd2357
7c2b4e02b8
Merge remote-tracking branch 'bisq-network/hotfix/v1.5.6' into upgrade-javafax-14 2021-02-17 23:16:52 +01:00
jmacxx
4afa846a1c
Check isPubKeyValid only if message is one we are listening for.
The order of checks was wrong.

PRE: it was checking the SignaturePubKey for messages that
were handled by other subsystems, such as OfferAvailability.

POST: make sure that this is a relevant message before checking that
its signature matches the trade.
2021-02-16 10:43:46 -06:00
jmacxx
d82a61d0a6
Fix issue with TriggerPriceService deactivating offer too early
TriggerPriceService is changed to use a BootstrapListener
on the P2PService so that it can start after the P2P network
is ready.

Fixes #5190 : Prevents an Uncaught Exception error at startup.
2021-02-13 15:51:50 -06:00
Christoph Atteneder
31b7292d56
Merge pull request #5117 from jmacxx/add_country_amazon_account
Specify Amazon eGift Card country
2021-02-12 20:34:51 +01:00
jmacxx
f89e4187af
When country not known, prompt user to ask in Trader Chat. 2021-02-12 12:37:56 -06:00
Christoph Atteneder
de57900765
Merge pull request #5175 from jmacxx/fix_NPE_trader_chat
Fix NPE in trader chat
2021-02-12 11:35:44 +01:00
Christoph Atteneder
8bcd32f498
Merge pull request #5123 from jmacxx/add_sepa_countries
Add four SEPA Payment Account countries: AD, SM, VA, JE.
2021-02-12 11:21:02 +01:00
Christoph Atteneder
a520802399
Merge pull request #5137 from jmacxx/replace_deprecated_explorer
Replace deprecated bisq explorer settings
2021-02-12 09:54:03 +01:00
jmacxx
1826902066
Replace deprecated bisq explorer settings
If user preferences were set to a bisq explorer that has been
retired, switch it to another explorer from the provided list.

Users can still choose their own explorer, or enter a custom
explorer address (such as their local node).
2021-02-10 08:23:50 -06:00
sqrrm
7e7c87698f
Merge pull request #5136 from chimp1984/add-warning-if-no-filter-is-delivered
Show popup if no filter is delivered
2021-02-10 14:43:43 +01:00
sqrrm
9ef4ea164d
Merge pull request #5120 from stejbac/speed-up-deposit-and-transactions-view-loads
Speed up deposit and transactions view loads
2021-02-10 14:39:49 +01:00
sqrrm
cedf108926
Merge pull request #5108 from jmacxx/pre_release_notifications
New Feature: Pre-release notifications
2021-02-10 14:38:53 +01:00
sqrrm
570ed0e032
Merge pull request #5148 from bisq-network/release/v1.5.5
Release/v1.5.5
2021-02-10 10:35:35 +01:00
Christoph Atteneder
ae188d9fd8
Merge pull request #5167 from huey735/edit-mediator-name
Fix Mediator's name
2021-02-10 09:57:49 +01:00
Christoph Atteneder
a3c707303b
Merge pull request #5157 from ghubstan/fix-method-help-typos
Fix method help typos
2021-02-10 09:57:16 +01:00
Christoph Atteneder
5ad670fe27
Merge pull request #5178 from jmacxx/refund_agent_payout_fee
Refund agent payout to use withdrawal fee rate from settings
2021-02-09 21:03:25 +01:00
jmacxx
fc04e88a55
Refund agent payout to use withdrawal fee rate from settings 2021-02-09 10:51:01 -06:00
jmacxx
ed78d0fbb4
Fix NPE when sending trader chat
Show error message to user when trader chat message cannot be sent.
2021-02-08 17:35:56 -06:00
Huey
c0efa156c7
Fix Mediator's name
@leo816 was mentioned twice. One of which should be @huey735
2021-02-07 11:53:51 +00:00
ghubstan
ae2e60c749
Fix typo 2021-02-06 14:04:30 -03:00
ghubstan
6890ba68b0
Fix typo 2021-02-05 19:10:34 -03:00
ghubstan
433079abc8
Add missing backslash in multi line command 2021-02-05 15:29:47 -03:00
ghubstan
5ce9bc184d
Fix method help typos
And add a createoffer example.
2021-02-05 15:27:08 -03:00
cd2357
5a358b49de
Merge remote-tracking branch 'bisq-network/release/v1.5.5' into upgrade-javafax-14 2021-02-04 11:58:43 +01:00
Steven Barclay
b4ad6bf637
Upgrade jsonrpc4j & Jackson; simplify BitcoindClient
Change jsonrpc4j version from 1.5.3 to 1.6.0.bisq.1, forked to the Bisq
repo from the recent 1.6.0 release. The forked version changes the class
'com.googlecode.jsonrpc4j.HttpException' to be public, instead of (prob.
mistakenly) package private, so we can avoid using reflection to catch
it and re-throw as a 'bisq.network.http.HttpException'. Remove the now
unused constructors from the latter.

As part of this, upgrade Jackson to the latest stable (2.12.1) release,
since jsonrpc4j now depends on a newer version than the previous 2.8.10.
2021-02-04 07:51:38 +00:00
jmacxx
d72b1a6639
Specify Amazon eGift Card country
Adds countryCode to AmazonGiftCardAccountPayload
Account upgrade done at startup => Eurozone accounts will prompt for country.
Trade buyer step 2 prompts use of the appropriate Amazon website for buying gift card.
2021-02-03 13:57:20 -06:00
sqrrm
de38bc7067
Merge pull request #5126 from ghubstan/do-wallet-check-on-createoffer
Check wallet is avaiable and/or unlocked on createoffer
2021-02-03 16:22:06 +01:00
Christoph Atteneder
a8365cad07
Update translations for v1.5.5 2021-02-01 19:26:16 +01:00
chimp1984
a8fc33c30d
On mainNet we expect to have received a filter object, if not show a
popup to the user to inform the Bisq devs.
Set filterWarningHandler before calling onAllServicesInitialized
2021-01-30 13:08:00 -05:00
Steven Barclay
9f9818d673
Fix broken WalletService.getTransactionConfidence(tx, address)
Undo the earlier simplification changes to getTransactionConfidence,
which preserved its original but broken behaviour. Fix the original
stream pipeline so that each matching tx input maps to the confidence of
the connected parent tx (if any), not the child tx. In this way, it
correctly considers parent tx confidences when determining the most
recent confidence of all the matching inputs & outputs.

Before it was simply feeding a repeating list of identical objects into
getMostRecentConfidence, via the erroneous line:

  .map(o -> tx.getConfidence())

(Also add a missing @Nullable annotation & make getMostRecentConfidence
private instead of protected.)

Finally, simplify BisqWalletListener.onTransactionConfidenceChanged, by
no longer feeding a singleton list into getMostRecentConfidence whose
element is already a return value of that method, as that is a no-op.
2021-01-29 20:33:59 +00:00
jmacxx
3757ec36f7
Wording change for CashByMail suggested by @m52go 2021-01-29 11:48:27 +01:00
ghubstan
017db11217
Check wallet is avaiable and/or unlocked on createoffer
Do not attempt to create an offer if the server wallet is
unavailable.  And if the wallet is encrypted, do not attempt
to create an offer if the wallet is not unlocked.
2021-01-28 14:50:22 -03:00
jmacxx
a11d8a42c3
Add 4 missing SEPA countries AD, SM, VA, JE. 2021-01-27 23:20:30 -06:00
Steven Barclay
db26a1fe2d
Optimise TransactionAwareTrade.isRelatedToTransaction
Attempt to remove a bottleneck during the transactions view load, as
revealed by JProfiler, by optimising the code to determine if any given
transaction and trade are related. Since both these sets will tend to
grow linearly with time, causing quadratic slowdown of TransactionsView,
try to alleviate (without completely fixing) the problem.

To do this, add a cached set of disputed trade IDs to DisputeListService
so that TransactionAwareTradable.is(Dispute|RefundPayout)Tx can be made
O(1) in the common case that the given trade is not involved in any
dispute. Also avoid calling Sha256Hash::toString by passing tx IDs as
Sha256Hash objects directly to is(Deposit|Payout)Tx, and short circuit
an expensive call BtcWalletService.getTransaction in isDelayedPayoutTx,
in the common case, by pre-checking the transaction locktime.

This also fixes a bug in isRefundPayoutTx whereby it incorrectly returns
false if there are >1 disputes in the list returned by RefundManager but
the given trade is not involved in the last one.
2021-01-26 20:10:47 +00:00
Steven Barclay
97779f10d8
Use cache for WalletService.getConfidenceForAddress
Use a guava SetMultimap (a many-to-many mapping without duplicates) to
cache the set of live txs in the user's wallet with a given address as
an input or output. As with the cache of output counts from the previous
commit, compute all the tx sets in one go (by a tx stream followed by a
map inverse) and store in an ImmutableSetMultimap<Address, Transaction>,
invalidating the entire cache immediately upon each wallet change event.

This is to fix another (larger) quadratic time bug in DepositView, when
getting the confidence (i.e. confirmation count) of each wallet address.

Also simplify getTransactionConfidence & onTransactionConfidenceChanged
methods slightly, which generated (possibly unintentionally) repeating &
singleton lists of TransactionConfidence objects to pass to
WalletService.getMostRecentConfidence(..) respectively.
2021-01-26 17:43:03 +00:00
Steven Barclay
217aaf826d
Use cache for WalletService.getNumTxOutputsForAddress
Use a guava Multiset to cache the total number of tx outputs (out of the
live txs in the user's wallet) with a given address. Since this requires
a scan of the entire tx set, compute all the counts in one go and store
in an ImmutableMultiset<Address>. Invalidate the entire cache any time a
tx set change occurs, by attaching a WalletChangeEventListener to the
wallet (using a direct executor for immediate effect).

This is to fix a quadratic time bug in DepositView, which uses the count
to determine if a given address in the BTC wallet is used/unused.
2021-01-26 15:35:19 +00:00
Steven Barclay
70a13b8783
Refactor: add & remove wallet listeners from the same class
Make the WalletService.walletEventListener field private and add it via
a protected method defined in the base class, addListenersToWallet(), so
that the setup code in the two subclasses (Bsq|Btc)WalletService can be
deduplicated and more easily kept in sync with the listener removal code
in WalletService.shutDown().

Also remove some unnecessary deprecation warning suppressions.
2021-01-26 12:54:26 +00:00
jmacxx
7ea3f1c9d9
Wording change for CashByMail suggested by @m52go 2021-01-25 22:24:57 -06:00
Christoph Atteneder
cae95ce2f9
Update bitcoinj checkpoints for v1.5.5 2021-01-25 09:37:59 +01:00
Jakub Loucký
53344da9e0
Fix wording 2021-01-24 15:06:42 +01:00
Jakub Loucký
d205110d39
Add details about mediation in "Cash by mail" 2021-01-24 15:06:28 +01:00
Jakub Loucký
3ccb087da5
Fix spaces in "Cash by Mail" 2021-01-24 15:06:18 +01:00
Jakub Loucký
fafa81811b
Fix wording 2021-01-23 23:46:09 +01:00
Jakub Loucký
803d373e44
Add details about mediation in "Cash by mail" 2021-01-23 23:40:14 +01:00
Jakub Loucký
966502247b
Fix spaces in "Cash by Mail" 2021-01-23 19:21:49 +01:00
jmacxx
849f1ec45f
code cleanup 2021-01-22 20:18:23 -06:00
jmacxx
da45b8e6cf
Add pre-release software update notifications 2021-01-22 20:08:02 -06:00
Steven Barclay
e0aa76e440
Rename rpc.dto.RawX to RawDtoX to avoid confusion
Avoid name clashes between the Json RPC client DTOs & the corresponding
raw (un-parsed) DAO state entities. Also prepend the other DTO classes
with 'Dto' for consistency.
2021-01-21 11:14:56 +00:00
Steven Barclay
a8b0863264
Ensure RPC client works with Bitcoin Core 0.21.0
Add missing 'connections_(in|out)' JSON properties to NetworkInfo that
came with the recent 0.21.0 release of Bitcoin Core. Also ensure that
unrecognised JSON properties are ignored, so that future changes to the
RPC API are less likely to break our client.

Also, for the benefit of the tests, change the JSON property order of
RawInput to better match observed 'getblock' responses. (It appears that
in 0.21.0, extra "txinwitness" fields have started appearing in coinbase
inputs, which may be a bug.)
2021-01-21 10:10:32 +00:00
Steven Barclay
1abf4c5d96
Exclude segwit pubkeys by block height instead of a blacklist
Since extraction of segwit pubkeys technically represents a hard fork,
activate it by block height in the same way as the fork defined in
TxOutputParser, instead of relying on the absence of premature segwit
BSQ inputs outside of a blacklist. This also means we no longer need to
exclude all but the first tx input from segwit pubkey extraction to
maintain backwards compatibility, which is a little safer and consistent
with the original behaviour of extracting every available P2PKH pubkey.

Provisionally activate this (2nd) DAO hard fork at block height 672646,
which should be 6 weeks from now, just under 5 weeks from the planned
1.5.5 release on 2021/01/27. (Block 1906689 for testnet - 2 weeks from
now assuming an average block time of 10 minutes, but it's erratic.)
2021-01-21 10:10:31 +00:00
Steven Barclay
4b0711bfcc
Add Bitcoin Core version & health check to RpcService
Make a 'getnetworkinfo' RPC call to bitcoind immediately upon startup,
to check that the node is up (and throw a ConnectException to ensure
that the user is presented with an appropriate warning popup otherwise).
Log a warning if the node version is outside the 0.18.0 - 0.20.1 range.

Additionally, call 'getbestblockhash' to check that the chain tip is not
stale (> 6 hours old). As part of this, make sure the 'getblock' RPC
call works correctly with verbosity < 2, by fixing JSON deserialisation
of the response when the block or txs are in summary (hex string) form.

(These version & health checks are almost identical to the ones done by
the original btcd-cli4j library during RPC client startup.)
2021-01-21 10:10:31 +00:00
Steven Barclay
d595cac477
Add getNetworkInfo & getBestBlockHash RPC client methods
Provide a 'NetworkInfo' DTO class (with associated nested DTO classes),
returned by the 'getnetworkinfo' RPC method call to bitcoind. This will
be used during startup of RpcService to determine if Bitcoin Core is
available and which version it is using. Add a unit test to round-trip a
sample NetworkInfo JSON response.

Also add the missing 'getbestblockhash' RPC method, which will be needed
by RpcService to determine the Bitcoin Core node health.
2021-01-21 10:10:31 +00:00
Steven Barclay
a850adadb6
Make special case for irregular tx with segwit BSQ inputs
Selectively disable pubkey extraction from segwit inputs of a particular
tx at block height 660384 (2020-12-07), which spends spuriously created
segwit BSQ (later burned), to prevent a change in the DAO state hashes
from that point.

(Since a tx with a given ID can only appear on one chain, a fixed global
exclusion list of IDs should not cause any issues on testnet/regtest
versus mainnet. This is simpler than conditioning by block height.)
2021-01-21 10:10:30 +00:00
Steven Barclay
796097abbc
Fix data race in BitcoindDaemonTest
Prevent intermittent test failures, caused by a race between checking
whether the mock socket is closed upon accepting a new connection and
setting 'socketClosed' to true during shutdown. Waiting to accept and
then checking the flag needs to be done in a synchronized block.
2021-01-21 10:10:30 +00:00
Steven Barclay
93b46e3a40
Fix Codacy issues & deduplicate code in RpcService
Factor out shared construction logic to a new 'getBlockFromRawDtoBlock'
method in RpcService. Also add some 'NOPMD' comments in an attempt to
suppress unfixable Codacy warnings about qualified imports.
2021-01-21 10:10:29 +00:00
Steven Barclay
6ca42c0cd1
Enable extraction of segwit pubkeys from raw tx inputs
Factor out a new RpcService.extractPubKeyAsHex method, to take public
keys from the inputs of the raw transactions returned by the RPC client,
when building TxInput objects to incorporate into the DAO state. Enhance
the method to additionally support segwit (P2WPKH & P2SH-P2WPKH) inputs
(but only the first input for backwards compatibility - see code
comment). Also fix a bug when handling non-SIGHASH_ALL input signatures.

This will allow segwit BSQ to be used in proof-of-burn and issuance txs,
which need a public key associated with the tx to establish ownership of
it, when signing messages with a proof-of-burn or staking merit awarded
from a compensation issuance, respectively.

Also add unit tests for the factored-out method and add a missing RawTx
toString() method, to aid debugging the TxInput fields within the
processed block returned by RpcService.
2021-01-21 10:10:29 +00:00
Steven Barclay
8104301b52
Use new Bitcoind(Client|Daemon) & remove btcd-cli4j
Migrate RpcService over to the new block notification daemon and RPC
client based on jsonrpc4j. Drop in own DTO classes in place of the ones
defined by btcd-cli4j and rename requestBtcBlock & addNewBtcBlockHandler
to requestDtoBlock & addNewDtoBlockHandler respectively.

Also remove now redundant filtering from the logback config and update
grade-witness.
2021-01-21 10:10:28 +00:00
Steven Barclay
ac78639656
Improve exception handling in BitcoindDaemon
Wrap any exception that occurs during socket IO or within the supplied
BlockListener with a new 'BlockNotificationException'. This brings the
exception handling more in line with that of the old BtcdDaemonImpl and
makes it easier to match them downstream in FullNode.handleError.
2021-01-21 10:08:24 +00:00
Steven Barclay
4470af8edb
Add missing copyright headers to new files 2021-01-21 10:08:23 +00:00