Commit Graph

10619 Commits

Author SHA1 Message Date
Christoph Atteneder
1163b25031
Revert https://github.com/bisq-network/bisq/pull/3883
Fixes issue #3969

This setting prevented the startup of the app on macOS Mojave.
Possibly on some other older macOS versions as well.
2020-02-13 20:19:22 +01:00
Chris Beams
7f9c935a8b
Allow unrecognized options in config file
Prior to this commit, Bisq's new `Config` infrastructure would throw an
exception on encountering an unrecognized option in the
`bisq.properties` config file and the Bisq application would handle this
by reporting an error at the command line indicating that the given
option was not recognized.

For example, given a bisq.properties file that reads as follows:

    $ cat $APP_DATA_DIR/bisq.properties
    bogus=42

running Bisq would exit with the following error message:

    $ java -jar bisq.jar
    error: problem parsing option 'bogus': bogus is not a recognized option.

This was reasonable enough behavior, but it had two problems. The first
is that the error message did not indicate to the user that the
unrecognized option was found in the config file as opposed to the
command line. Users unfamiliar with the config file might not know to
look there to eliminate or fix the offending option. The second problem
surfaced when testing the Windows executable build for the v1.2.6
release. When such an error was encountered, the executable would just
fail silently, reporting nothing to the user.

Both of these problems should be addressed on their own, i.e. option
parsing errors should report to the user whether the offending option
was at the command line or in the config file, and our packaged
executables should never just fail silently if we can avoid it.

However, this change does not address either of these problems directly.
It rather avoids the problems completely by relaxing config file
parsing to silently allow unrecognized options. This behavior mimics
prior (pre-`Config`) Bisq versions, and it also follows suit with
Bitcoin Core's own config file processing.

This fixes #3966, which surfaced this problem. In that particular issue,
an option line had somehow been added to the user's bisq.properties
config file that consisted of an option key containing 452 octal null
characters (\u0000) followed by an equals sign and an empty option
value. It is unknown how this bogus option was ever added to the user's
config file in the first place, but on the chance that previous Bisq
versions somehow added this, the changes in this commit ensure that such
entries will not cause affected users' Bisq applications to silently
fail in versions 1.2.6 and beyond.
2020-02-12 18:30:23 +01:00
Christoph Atteneder
f53a41ee7a
Allow NullpointerException to be thrown for invalid offers
It is handled properly and will remove offers from being exported
2020-02-12 18:05:28 +01:00
Christoph Atteneder
e9dd7d6fed
Update data stores 2020-02-12 09:34:27 +01:00
Christoph Atteneder
33ce412548
Update bitcoinJ checkpoints file 2020-02-12 09:34:20 +01:00
Christoph Atteneder
b00d73ff7c
Add test for Liquid Bitcoin and improve error handling 2020-02-11 17:31:43 +01:00
Christoph Atteneder
4cb973d9d0
Fix wrong executable path for Windows signing 2020-02-11 16:19:15 +01:00
wiz
b50543e113
Fix btcnode validation regex to handle multiple FQDNs, add tests
Please enter the commit message for your changes. Lines starting
2020-02-11 13:45:18 +01:00
Devin Bileck
580dd14155
Fix address regex
The original implementation of #3895 did not validate IPv6 nor FQDN
addresses.
2020-02-11 13:44:55 +01:00
Christoph Atteneder
7f93ce7e31
Remove empty line
Co-Authored-By: sqrrm <sqrrm@users.noreply.github.com>
2020-02-11 12:22:58 +01:00
Christoph Atteneder
4f9d0fa36c
Remove duplicates when delivered from storage 2020-02-11 12:22:36 +01:00
Christoph Atteneder
2e5184f50d
Revert setting of deposit tx id to null 2020-02-11 12:22:28 +01:00
wiz
22e8c242dc
Add 2 new btcnodes operated by @wiz
* m3yqzythryowgedc.onion:8333
* zyhtr2ffbzn5yeg3.onion:8333
2020-02-11 11:34:44 +01:00
Christoph Atteneder
fe1aa465cb
Update translations 2020-02-11 11:14:14 +01:00
Steven Barclay
3cfb583e8a
Fix incorrect rounding of BSQ dollar price to whole number
Add a new method to DisplayUtils to restore the old rounding behaviour
of formatVolumeWithCode whenever a fractional volume is required. This
fixes a regression caused by #3926 to remove unnecessarily displayed
decimals for fiat volumes - it appears that in every case but the avg.
dollar price on the BSQ dashboard a whole number should be shown.

Also add a relevant test.
2020-02-11 10:50:35 +01:00
Steven Barclay
6d39bc0894
Do some minor cleanup of DisplayUtils 2020-02-11 10:50:25 +01:00
sqrrm
fab37f9f01
Fix codacy comment 2020-02-07 15:58:53 +01:00
sqrrm
bc654f439c
Add signing debug logs
Fix warning about possible nullpointer exceptions. Better to have an
explicit check for debug purposes.

Smaller cleanups
2020-02-07 15:58:45 +01:00
Christoph Atteneder
5f51af4866
Bump version number for v1.2.6 2020-02-06 11:55:08 +01:00
sqrrm
f52b34a4ba
Merge pull request #3799 from ripcurlx/automate-pr-labeling
Add automation for new PRs and issues
2020-02-05 23:48:10 +01:00
sqrrm
d88a8ac8f0
Merge pull request #3939 from ripcurlx/improve-local-node-info
Add additional information for a local Bitcoin Core v0.19+
2020-02-05 23:41:33 +01:00
Christoph Atteneder
8dfec1e989
Automatic post a comment on first-time issues and PRs 2020-02-05 17:57:09 +01:00
Miles Petrov
872a704508
Reduce number of decimals shown for monetary fiat prices to 2 (#3926)
* Remove decimals for displayed fiat volume amounts

* Reset rounded for privacy info when switching between payment methods

Co-authored-by: Christoph Atteneder <christoph.atteneder@gmail.com>
2020-02-05 17:49:55 +01:00
Christoph Atteneder
7a0c34b8ad
Merge pull request #3940 from ripcurlx/fix-duplicate-wallet-setup-for-local-nodes-on-mainnet
Use LocalBitcoinNode as singleton
2020-02-05 17:19:29 +01:00
Christoph Atteneder
ba12943920
Make sure that class is only instantiated once
This fixes an error when running a local Bitcoin Core for Mainnet
caused by a duplicate wallet setup
2020-02-05 16:56:59 +01:00
Christoph Atteneder
040b8d53de
Improve wording
Co-Authored-By: wiz <j@wiz.biz>
2020-02-05 12:03:28 +01:00
Christoph Atteneder
90658fb4fe
Add additional information for a local Bitcoin Core v0.19+ 2020-02-05 11:34:05 +01:00
sqrrm
3748a7eee4
Merge pull request #3938 from ripcurlx/temporarily-deactivate-public-network
Temporarily deactivate public network option
2020-02-05 11:04:19 +01:00
Christoph Atteneder
161f3b85a4
Temporarily deactivate public network option
This will be in place until we are able to check if a connected
Bitcoin Core is configured properly for our requirements
2020-02-05 10:31:25 +01:00
Christoph Atteneder
3183f5f732
Minor code cleanups 2020-02-05 10:29:55 +01:00
sqrrm
6a9f340c20
Trade process refresh (#3922)
* Add keyboard shortcut for trade process refresh, fix #3905

Trades have been getting stuck in the `Wait for payment` state, perhaps
due to lost mailbox messages, but it's hard to know for sure. There is
currently no way to get out of this state except going to mediation.

With ctrl+R the seller can ask the buyer to refresh the current trade
state and the buyer will resend the
`CounterCurrencyTransferStartedMessage` if they are in the phase
FIAT_SENT.

* Disallow more than one trade refresh per day

* Add refresh button for seller step 2, fix #3905

A seller can ask to refresh the trade process once every 24 hours. This
step has been a problem causing a lot of mediation lately so this is a
way to ask the buyer to resend the CounterCurrencyTransferStartedMessage

This fixes the problem when a mailbox message was lost. To test the
seller need to not get the first CounterCurrencyTransferStartedMessage
sent by the buyer, for example by letting the seednode drop it instead
of sending to the seller. When button is pressed
- a RefreshTradeStateRequest is sent from seller to buyer
- the buyer receives the RefreshTradeStateRequest and
 - ignores it if it's not in FIAT_SENT phase
 - responds with a CounterCurrencyTransferStartedMessage if in FIAT_SENT
   phase and has already sent a CounterCurrencyTransferStartedMessage

* Fix codacy remarks

Move incoming message handling method to the right section

* Add refresh button info text

Hide refresh section when not available rather than graying out

Added info text:
Sometimes P2P network messages acknowledging payment are not delivered,
causing trades to get stuck. Hit the button below to make your peer
resend the last message.

* Fix codacy issues
2020-02-04 15:54:47 +01:00
Christoph Atteneder
d6de99c2a1
Merge pull request #3937 from freimair/remove-uid
Remove unused uid in pricefeed service
2020-02-04 15:50:13 +01:00
Florian Reimair
af939e66e0
Remove unused uid in pricefeed service
Bisq frequently (once per minute) queries our price nodes for up-to-date
price information. It does so by HTTP GET request. However, it provided
a UID via the "User-Agent" HTTP header field. This UID has been a random
number which changed everytime Bisq got started up.

This UID has never been used. Thus, remove it.
2020-02-04 15:03:17 +01:00
sqrrm
cd745717fa
Merge pull request #3933 from ripcurlx/accept-tradestatistic-objects-before-cut-off-date
Accept old trade statistic object
2020-02-04 12:11:23 +01:00
dmos62
a452a31cef
Add new BSQ issued v. burnt chart (#3910)
* Add new BSQ issued v. burnt chart

Adds a new two-line chart that plots the month-bucketed BSQ issued and
burnt series. Until now there wasn't a direct visual means of
examining BSQ issue and burn together. This chart aims to fix that.

* Change wording from 15 days to 15-day moving average

Co-Authored-By: Steve Jain <mfiver@gmail.com>

* Make chart's title more clear

"BSQ issued v. burnt" > "BSQ issued v. BSQ burnt"

Co-Authored-By: Steve Jain <mfiver@gmail.com>

* Fix spacing between chart and title

* Reduce title-chart spacing from 20 to 10

Co-authored-by: Steve Jain <mfiver@gmail.com>
2020-02-03 17:13:14 +01:00
Christoph Atteneder
112aaf9910
Not set depositTxId to null by default
This prevents unnecessary load on the seednodes from old clients
loading all trade statistic objects on startup as they interpret
the null value as empty string
2020-02-03 15:46:33 +01:00
Christoph Atteneder
ff10857fe6
Merge pull request #3925 from sqrrm/dump-delayed-tx
Dump delayed tx
2020-02-03 12:03:25 +01:00
Christoph Atteneder
9bf3165e02
Merge pull request #3934 from sqrrm/allow-missing-multisig-entry
Finalize multisig payout even on missing address entry
2020-02-03 11:40:48 +01:00
Christoph Atteneder
2ad279f99e
Accept old trade statistic object
The code didn't handle before the use case of new trade statistic objects
created by two old clients. This change make it independent of the cut off date
and allows us at a later point to update all trade statistics objects with
depositTxId value of null.
2020-02-03 11:37:56 +01:00
sqrrm
3470b73084
Finalize multisig payout even on missing address entry
The check for an address entry before finalizing the multisig payout
might prevent a valid payout when the initiation of the trade process
was interrupted. It's better to allow the completion of the trade
and just log a warning.
2020-02-03 11:03:20 +01:00
sqrrm
cad09aabfd
Merge pull request #3921 from HirotoTanaka114/master
Re-ordering Stream APIs
2020-01-31 10:20:58 +01:00
T-hiro10
c378caf354
re-order distinct and sorted 2020-01-31 02:40:10 +09:00
sqrrm
4e4ac96885
Merge pull request #3911 from ripcurlx/redact-deposittxid-from-tradestatistics
Redact deposittxid from tradestatistics
2020-01-30 16:52:43 +01:00
sqrrm
809e1c83d1
Dump delayed payout tx hashes to file
Use a separate file, delayed_payout_txs, to write all txs and their
delayed payout tx hashes as json. This will enable users to publish
locked txs when their data dir has been corrupted, as long as the trade
data is there.
2020-01-30 16:16:57 +01:00
sqrrm
afac8e5a30
Add dumpDelayedPayoutTxs config option 2020-01-30 15:40:23 +01:00
Christoph Atteneder
1d9fda74b9
Not expose offer fee tx id in UI or JSON export 2020-01-29 14:50:09 +01:00
Christoph Atteneder
2887ab0bc5
Not add the deposit transaction id to the trade statistics object 2020-01-29 14:46:35 +01:00
Christoph Atteneder
3374f1b65c
Remove deprecated code parts
As we don't have any arbitrators connected to the network anymore it shouldn't possible to use arbitration anymore
2020-01-29 13:44:25 +01:00
niyid
f2202736da
Fixes issue 3899 - issue not yet reproduced but structured code to (#3920)
prevent occurrence of issue.
2020-01-29 11:36:41 +01:00
wiz
02e7448bda
Various improvements to seednode service / install scripts (#3882)
* Split seednode systemd service ExecStart command into multiple lines

* Add setting in seednode configuration to specify btcnode host/port

* Tweak seednode torrc configuration options to improve P2P connectivity

* Require bitcoin.service from bisq-seednode.service via systemd binding

* Make seednode installer run from master and build bisq from release tag

* Seednode must be shutdown using `kill -9` until #3884 is fixed

* Fix seednode uninstall script to use correct service names

* Disable CircuitBuildTimeout in seednode Tor configuration

* Disable seednode torrc advanced configuration options for now
2020-01-29 11:28:12 +01:00