Commit Graph

10691 Commits

Author SHA1 Message Date
Florian Reimair
0fb4f13319
Fix closing the app by gui exit
Before, the graceful shutdown procedures have been executed in the
user thread. However, the sync mechanics for connections/offers
caused a lockup, as some little parts of the code do execute on the
user thread as well.
2020-03-28 11:27:37 +01:00
Florian Reimair
0bbb8e6952
Harmonize System::exit usage
The actual System::exit commands have been scattered around various
places in the code. Sometimes, actual system exit depended on the
calling code to reach its end of execution.
2020-03-28 11:27:36 +01:00
Florian Reimair
8bab25ac17
Make sure to shut down tor
Here, the tor object is a member variable and there are cases where
this member variable is not set yet.
Situation arose where a sigterm/sigint shutdown is requested and due
to the member variable not set tor was left running.
2020-03-28 11:27:25 +01:00
Florian Reimair
c20c4b63ac
Wait for connections to be closed
The close connection process did fire up worker threads to actually
close the connections. Yet, once all threads have been spawned,
the code proceeds assuming that there are no connections left open
without checking.
This lead to situations where tor has been shutdown already but
open connections. These connections tried to gracefully close but
without tor, that only caused a wall of exceptions.
2020-03-26 17:27:41 +01:00
Florian Reimair
53752f8522
Fix shutdown order 2020-03-26 17:27:12 +01:00
Florian Reimair
1bf1ae4377
Added graceful shutdown hook
Graceful shutdown has only be done in case of an error or when
using the GUI. A regular eg. seednode shutdown is not covered
though.

Now, SIGTERM and SIGINT triggers a graceful shutdown procedure.
2020-03-26 17:09:29 +01:00
Christoph Atteneder
dbecc0a2f1
Merge pull request #4010 from Emzy/patch-2
Moved one btc node to new host
2020-02-26 16:31:20 +01:00
Stephan Oeste
d5bb9c4425
Moved one btc node to new host
Moved node2.emzy.de to a new host.
IP address updated.
2020-02-26 13:26:45 +01:00
Christoph Atteneder
a6d874c3c1
Merge pull request #3758 from bisq-3408/master
Vote Reveal - Silent Fail
2020-02-26 12:53:03 +01:00
wiz
21101f460c
Add pricenode one-command installer script, systemd service, README (#3997)
* Add pricenode one-command installer script, systemd service, README

* Update pricenode/bisq-pricenode.service

Co-Authored-By: Florian Reimair <office@florianreimair.at>

* Update pricenode/install_pricenode_debian.sh

Co-Authored-By: Florian Reimair <office@florianreimair.at>

Co-authored-by: Florian Reimair <office@florianreimair.at>
2020-02-26 12:16:26 +01:00
sqrrm
c3bff5fadf
Merge pull request #4007 from ripcurlx/support-ars-in-moneygram
Add ARS as supported currency for MoneyGram
2020-02-26 11:55:11 +01:00
Christoph Atteneder
bf592f363b
Merge pull request #4008 from beingindot/tableview-checkbox-issue
Tableview multiple rows checkbox column issue
2020-02-26 10:11:03 +01:00
Christoph Atteneder
db0c76ef69
Merge pull request #4002 from cbeams/debug-appdir-creation
Avoid startup failure when appDataDir is a symbolic link
2020-02-25 13:20:51 +01:00
beingindot
48877517d6
Tableview multiple rows checkbox column issue
As mentioned in the issue #3984, Have created lot of buy/sell offers
with different currencies spanning across around 30+ offers
so that we need to use scroll bar in my open offers and able to
recreate the issue.
2020-02-25 16:23:42 +05:30
Chris Beams
cbe6f192e0
Do not attempt to create already existing appDataDir
This change fixes #3998 by avoiding the attempt to create a user's
appDataDir if it already exists. Normally this attempt is not a problem,
as Files#createDirectories does nothing if the target is a directory
that already exists, but in the case that the target is a symbolic link,
Files#createDirectories throws a FileAlreadyExistsException. This change
prevents the call to Files#createDirectories if the target already
exists, and if in fact the target is a symbolic link pointing to an
existing directory, this is not a problem and everything proceeds as per
usual. This mimics the behavior in Bisq v1.2.5 and prior, where
File#mkdirs was used instead of Files#createDirectories. File#mkdirs
does not throw an exception when the target directory is a symlink, it
just returns false.
2020-02-25 11:47:40 +01:00
Chris Beams
303eadec39
Refactor Config#mkdir and #mkAppDataDir
This is a pure refactoring that renames and inlines variables to tighten
up and make more consistent the implementation of these two methods. It
is done in preparation for a subsequent substantive change that fixes a
bug.
2020-02-25 11:22:11 +01:00
Christoph Atteneder
6537e13371
Add ARS as supported currency for MoneyGram
Fixes #4000.
2020-02-25 10:07:46 +01:00
Chris Beams
de537f0b14
Throw UncheckedIOException on directory creation errors
Previously, Config#mkdir and #mkAppDir threw ConfigException if any
underlying IOException was thrown from Files#createDirectory or
Files#createDirectories respectively. This resulted in only a simple
error message being reported at the command line and the details of the
underlying exception's stack trace were lost. This change wraps and
rethrows the underlying IOException as an UncheckedIOException such that
it gets caught by the catch(Throwable) clause in BisqExecutable, which
does print a stacktrace to stderr. This is the way it always should have
worked; throwing ConfigException in these cases was an oversight in the
original implementation. This change also removes the ConfigException
constructor that allows for passing a nested exception to be wrapped as
there is actually no use case for this now that these two anomalies have
been corrected.

This change was made in the process of attempting to reproduce #3998.
2020-02-24 13:17:06 +01:00
Christoph Atteneder
adafd404d5
Merge pull request #3973 from milesap/3972-tradefee
Display 2 decimal places for fiat trading fees
2020-02-21 14:01:22 +01:00
Christoph Atteneder
149e67675f
Merge pull request #3996 from ripcurlx/add-critical-bug-process
Reference critical bug process contributing guide
2020-02-21 13:48:31 +01:00
Christoph Atteneder
12b5a4e619
Reference critical bugs process 2020-02-21 12:17:09 +01:00
Christoph Atteneder
047ecdcb72
Update communication channel for development work 2020-02-21 12:16:42 +01:00
Florian Reimair
794302678d
Monitoring install scripts (#3985)
* Install script for collectd

* Install script for network size metric

* Apply suggestions from code review

Co-Authored-By: wiz <j@wiz.biz>

* Update monitor/install_collectd_debian.sh

Co-Authored-By: wiz <j@wiz.biz>

* Apply suggestions from code review

Co-Authored-By: wiz <j@wiz.biz>

Co-authored-by: wiz <j@wiz.biz>
2020-02-20 16:48:56 +01:00
Miles Petrov
372e78cec8
Display 2 decimal places for fiat trading fees 2020-02-20 10:45:33 -05:00
sqrrm
a0d4b439b0
Merge pull request #3986 from ripcurlx/exclude-priority-issues-from-stale-bot
Protect priority issues from stale bot
2020-02-18 15:08:47 +01:00
Christoph Atteneder
db0f6aaab6
Protect priority issues from stale bot 2020-02-18 12:35:53 +01:00
Christoph Atteneder
e7b60d2389
Merge pull request #3980 from sqrrm/fix-refresh-interval
Allow 4 refreshes per trade
2020-02-18 10:45:51 +01:00
sqrrm
54918c0ce3
Merge pull request #3979 from ripcurlx/use-boring-cyborg-app
Replace GitHub Actions with Boring Cyborg
2020-02-17 19:45:45 +01:00
sqrrm
c411f48d43
Merge pull request #3978 from ripcurlx/accept-empty-option-values
Accept empty config values
2020-02-17 19:22:08 +01:00
sqrrm
a3f4f7cfab
Merge pull request #3974 from ripcurlx/exclude-feature-issues-of-becoming-stale
Exclude issues labeled `a:feature` of becoming stale
2020-02-17 18:02:50 +01:00
sqrrm
0cf7169587
Allow 4 refreshes per trade 2020-02-17 17:50:19 +01:00
Christoph Atteneder
a9462fca1a
Add Boring Cyborg app to replace GitHub actions
GitHub Actions were removed as PR commenting
doesn't work properly as expected
2020-02-17 14:31:16 +01:00
Christoph Atteneder
2060480f79
Remove GitHub actions 2020-02-17 14:30:24 +01:00
Christoph Atteneder
0facdc9b71
Merge pull request #3956 from stejbac/speed-up-supply-view-load
Speed up BSQ supply view load
2020-02-17 14:14:20 +01:00
sqrrm
665fed3b40
Merge pull request #3971 from bisq-network/release/v1.2.7
Release/v1.2.7
2020-02-17 13:05:03 +01:00
sqrrm
23c2052fe6
Merge pull request #3970 from bisq-network/release/v1.2.6
Release/v1.2.6
2020-02-17 13:04:32 +01:00
Christoph Atteneder
3899f693da
Accept empty config values
Fixes #3977.
2020-02-17 12:27:32 +01:00
Christoph Atteneder
15e365e397
Exclude issues labeled a:feature of becoming stale 2020-02-17 10:43:05 +01:00
Christoph Atteneder
0083343178
Merge pull request #3951 from wiz/dont-fail-if-seednode-homedir-exists
Use `mkdir -p` in seednode installer when creating bitcoin/bisq homedirs
2020-02-17 10:17:59 +01:00
Christoph Atteneder
b1f8b3e144
Merge pull request #3950 from wiz/set-syslog-tag-systemd-service
Set syslog identifier as "bisq" in systemd service config
2020-02-17 10:17:25 +01:00
Christoph Atteneder
971c334aee
Merge pull request #3968 from m52go/video-to-text
Change video link in greeting to blog link
2020-02-17 10:16:32 +01:00
Christoph Atteneder
e931d06274
Revert to SNAPSHOT version 2020-02-14 13:02:52 +01:00
Christoph Atteneder
1cb7b0521d
Bump version number 2020-02-13 20:19:52 +01:00
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
Steve Jain
14d2e0c8ae
Change video link in greeting to blog link
In case link to text post is preferred. The post has the video embedded in it.
2020-02-12 16:38:42 -05:00
Christoph Atteneder
89e938ecad
Merge pull request #3967 from cbeams/relax-config-file-parsing
Allow unrecognized options in config file
2020-02-12 18:34:44 +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
Chris Beams
651515d6a0
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:22:26 +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