Commit graph

10544 commits

Author SHA1 Message Date
Chris Beams
29698fd58a
Introduce 'cli' subproject
This change stubs out the `bisq-cli` utility with a placeholder main
method, such that the following now works:

    $ gradle :cli:build
    $ ./bisq-cli
    Hello, World!
2020-01-20 12:07:55 +01:00
Chris Beams
8b30c22d6e
Move bisq.core{=>.app}.CoreModule
There are two structural / organizational reasons for this move:

 1. References from one package to another should always be upward or
 lateral, never downward, as the latter causes package cycles (aka
 'tangles') which damage the suppleness and understandability of a large
 codebase. Prior to this change the high-level bisq.core.CoreModule
 class imported many classes from child packages like
 bisq.core.{btc,dao,user,util}, etc. By moving CoreModule down into the
 '.app' package, it can reference all these other packages as siblings
 instead of doing so as a parent.

 2. the bisq.core.desktop and bisq.core.app packages are the only
 locations that reference the CoreModule class. By moving the class
 into bisq.core.app, greater cohesion is acheived, again making the
 codebase that much easier to read and understand.
2020-01-20 12:07:43 +01:00
sqrrm
fa3fcb4a10
Merge pull request #3887 from cbeams/revert-kotlin
Revert introduction of Kotlin compilation to the build
2020-01-20 10:06:14 +01:00
sqrrm
b1cabe3b82
Merge pull request #3886 from cbeams/git-tweaks
Update .gitignore and .editorconfig
2020-01-20 10:01:17 +01:00
Chris Beams
7595387c8e
Fix code quality issues
Per Codacy report at
https://app.codacy.com/gh/bisq-network/bisq/pullRequest?prid=4835063
2020-01-17 12:40:33 +01:00
Christoph Atteneder
a3307daa60
Merge pull request #3897 from rafaelpac/trade-limit-popup
Fix popup message about trade limits
2020-01-16 17:19:43 +01:00
Christoph Atteneder
c50a761ef0
Use macOS app Info.plist setting for automatic light/dark title bar (#3883)
* Use macOS app Info.plist setting for automatic light/dark title bar

* Update desktop/package/macosx/Info.plist

Co-Authored-By: Christoph Atteneder <christoph.atteneder@gmail.com>

Co-authored-by: Christoph Atteneder <christoph.atteneder@gmail.com>
2020-01-16 16:07:49 +01:00
wiz
74ff4a0e16
Update desktop/package/macosx/Info.plist
Co-Authored-By: Christoph Atteneder <christoph.atteneder@gmail.com>
2020-01-16 23:57:01 +09:00
sqrrm
5233b85708
Merge pull request #3881 from bisq-network/release/v1.2.5
Release/v1.2.5
2020-01-15 13:09:15 +01:00
sqrrm
0ece6aa72b
Merge pull request #3895 from devinbileck/ignored-peers-and-btc-nodes
Validate ignored peers and BTC nodes
2020-01-14 15:18:47 +01:00
Pac
200806b31e
Fix popup message about trade limits
When a user tries to take an offer which is above his limit, the old popup is still being shown.
It says that the user limits will be raised when his account is 2 months old.
But that is not true anymore, now we have account signing etc...
This fix uses the string that is already used for offer creation, which is good since preserves translations.
But I think we would need a better message, which I am afraid I cannot get done, showing the sign state and age.
I am submitting this PR as is now since I think this is a big issue.
New users might try to use Bisq to accept an offer, get this message and then decide to wait 2 months, in vain.
So, it partially fixes #3885.
2020-01-13 16:55:03 -03:00
Christoph Atteneder
17c37db887
Merge branch 'master' of github.com:bisq-network/bisq into release/v1.2.5
# Conflicts:
#	core/src/main/resources/i18n/displayStrings_el.properties
2020-01-13 15:20:15 +01:00
Devin Bileck
61d20268f2
Revert to using provided BTC nodes if custom nodes are invalid
If the user entered an invalid hostname for a custom BTC node, such as a
V3 onion address, after restarting Bisq they would be presented with an
error due to the node being unreachable and unable to continue nor
correct the config.

So now a warning message will be shown in this situation informing the
user of an invalid config and once they restart their client they will
connect to the provided BTC nodes.

Fixes #3137
2020-01-12 22:58:34 -08:00
Devin Bileck
9e33ca9e43
Capitalize connection failed string 2020-01-12 22:52:33 -08:00
Devin Bileck
074ff6ad23
Allow for selecting custom BTC nodes on testnet 2020-01-12 22:52:33 -08:00
Devin Bileck
fc9f3d05b9
Suppress shutdown popup when BTC nodes have not changed
The shutdown popup was appearing when the BTC nodes input field lost
focus regardless if the input had changed or not.
2020-01-12 22:52:33 -08:00
Devin Bileck
5e52dc58a8
Add input validation for ignored peers and BTC nodes
Ignored peers and BTC nodes input fields will now only accept IPv4 and
V2 onion addresses, with multiple addresses separated using a comma.
2020-01-12 22:52:32 -08:00
Devin Bileck
b0113d59a7
Allow setting validation error message for InputTextField
This will allow for a custom validation error message to be defined,
particularly useful for providing a user-friendly message for regex
validation.
2020-01-11 23:29:06 -08:00
Chris Beams
f4ae5d3128
Revert "Apply kotlin plugin and convert one unused class to kotlin"
This reverts commit 26c053dae8 because
Kotlin compilation slows down the build, was applied too broadly to all
modules instead of just the one that needed it, and most importantly
because we never actually went ahead with converting anything of
importance to Kotlin. The commit being reverted was basically a demo,
converting a single test type to show what kind of difference it would
make.
2020-01-10 19:48:26 +01:00
Chris Beams
368f0ad7f1
Ignore Structure101 Workspace files
In the refactorings that will follow, Structure101 Studio and the
Structure101 Workspace IDEA plugin will be used to visualize and help
resolve tangles in the codebase. We were already ignore Studio
configuration files which end in .java.hsb, and this commit ignores the
newer Workspace product's .java.hsw files as well.
2020-01-10 19:48:26 +01:00
Chris Beams
65175a7f4f
Remove --desktopWith{Grpc|Http}Api options for now
The previous commit introduces the BisqGrpcServer as a proof of concept,
but it is not yet ready for production use. This commit removes the
`--desktopWithGrpcApi` option that starts the gRPC server until such
time that it is production-ready.

This change also removes the `--desktopWithHttpApi` option for starting
an HTTP API server. The option has been in place for some time, but it
was 'false advertising' in the sense that nothing actually happened if
the user specified it, because there is in fact no HTTP API
implementation to be started.

Note that when the gRPC API option is reintroduced, it will be renamed
to `--rpcserver` or similar, following the convention in Bitcoin Core.
2020-01-10 19:48:26 +01:00
Chris Beams
b4ee9d33e5
Do not strip trailing whitespace in Git diffs
Problem: Editorconfig was configured to strip trailing whitespace in all
file types. This is generally a good thing, but when interactive
rebasing with Git and editing the contents of a commit, trailing
whitespace is significant on blank lines and must be preserved in order
for edits to be applied cleanly.

Solution: Update Editorconfig to exclude *.diff from the strip
whitespace rule, as interactive rebasing edits are done in a temporary
file with a '.diff' suffix.
2020-01-10 19:48:26 +01:00
chimp1984
5c02ce5766
Introduce gRPC API proof of concept
This commit introduces a new `grpc` module including the following key
types:

 - BisqGrpcServer: The API implementation itself, along with generated
   gRPC Response/Reploy types defined in grpc/src/main/proto/grpc.proto.

 - BisqGrpcServerMain: A 'headless' / daemon-like entry point for
   running a Bisq node without the JavaFX desktop UI.

 - BisqGrpcClient: A simple, repl-style client for the API that allows
   the user to exercise the various endpoints as seen in the example
   below.

In the `desktop` module, the BisqAppMain class has been modified to
start a BisqGrpcServer instance if the `--desktopWithGrpcApi` option has
been set to `true`.

In the `core` module, a new `CoreApi` class has been introduced
providing a kind of comprehensive facade for all Bisq functionality to
be exposed via the RPC API.

How to explore the proof of concept:

 1. Run the main() method in BisqAppMain providing
 `--desktopWithGrpcApi=true` as a program argument or alternatively, run
 the main() method in BisqGrpcServerMain, where no special option is
 required. In either case, you'll notice the following entry in the log
 output:

    INFO  bisq.grpc.BisqGrpcServer: Server started, listening on 8888

 2. Now run the main() method in BisqGrpcClient. Once it has started up
 you are connected to the gRPC server started in step 1 above. To
 exercise the API, type `getVersion` via stdin and hit return. You
 should see the following response:

    INFO bisq.grpc.BisqGrpcClient - 1.2.4

 Likewise, you can type `getBalance` and you'll see the following
 response:

    INFO bisq.grpc.BisqGrpcClient - 0.00 BTC

 and so forth for each of the implemented endpoints. For a list of
 implemented endpoints, see BisqGrpcServer.start().

Note once again that the code here is merely a proof of concept and
should not be considered complete or production-ready in any way. In a
subsequent commit, the `--desktopWithGrpcApi` option will be disabled in
order to avoid any potential production use.

The content of this commit is the result of squashing a number of
commits originally authored by chimp1984 in the `chimp1984` fork's `grpc`
branch.

Co-authored-by: Chris Beams <chris@beams.io>
2020-01-10 19:48:26 +01:00
sqrrm
d6a6b9535c
Merge pull request #3879 from wiz/beta-dark-mode-no-more
Remove "beta" label from Dark Theme slider switch text
2020-01-10 13:13:33 +01:00
wiz
e0d347a61e
Use macOS app Info.plist setting for automatic light/dark title bar 2020-01-10 08:09:58 +09:00
Christoph Atteneder
435b7809aa
Also revert to SNAPSHOT version for relay 2020-01-09 19:45:29 +01:00
Christoph Atteneder
701b124270
Revert to SNAPSHOT version 2020-01-09 19:41:42 +01:00
Christoph Atteneder
31fd20ee13
Merge pull request #3880 from wiz/fix-seednode-systemd-service-on-v1.2.5
Add some missing changes in seednode systemd service for release/v1.2.5
2020-01-09 19:08:33 +01:00
wiz
2d90e4a17c
Add some missing changes in seednode systemd service for release/v1.2.5 2020-01-10 03:01:42 +09:00
wiz
4e30402d78
Dark mode isn't beta anymore 🎉 2020-01-09 20:56:21 +09:00
sqrrm
59021e2c8a
Merge pull request #3876 from ripcurlx/fix-css-issues
Fix style issues
2020-01-08 23:54:18 +01:00
Christoph Atteneder
2c0dee8dd0
Add back manual style workaround 2020-01-08 21:39:36 +01:00
Christoph Atteneder
ffb346794a
Remove dead code 2020-01-08 21:39:28 +01:00
Christoph Atteneder
bb45676f10
Remove non existing id style "cancel-button" 2020-01-08 21:39:22 +01:00
Christoph Atteneder
5dcd98b1fa
The small icon on top should match the label color 2020-01-08 21:39:14 +01:00
Christoph Atteneder
3a395bca4e
Add back manual style workaround 2020-01-08 21:24:21 +01:00
Christoph Atteneder
ce1e954236
Remove dead code 2020-01-08 21:23:02 +01:00
Christoph Atteneder
6638d01716
Remove non existing id style "cancel-button" 2020-01-08 18:18:04 +01:00
Christoph Atteneder
10cf4bb020
The small icon on top should match the label color 2020-01-08 18:00:59 +01:00
Christoph Atteneder
5ca90009ad
Update buy and sell color and move all color codes to the top 2020-01-08 17:31:06 +01:00
Christoph Atteneder
1ce9e56408
Force the text-fill style to fix wrong text color every now and then 2020-01-08 17:30:58 +01:00
Christoph Atteneder
34dc386cb5
Update buy and sell color and move all color codes to the top 2020-01-08 17:27:25 +01:00
Christoph Atteneder
8b38feef91
Force the text-fill style to fix wrong text color every now and then 2020-01-08 17:26:56 +01:00
Christoph Atteneder
5b0638f4e3
Update data stores 2020-01-08 11:57:21 +01:00
Christoph Atteneder
eada8d6a3d
Update bitcoinj checkpoints file 2020-01-08 09:13:52 +01:00
Christoph Atteneder
744173ce61
Merge pull request #3875 from wiz/disable-z33nukt7ngik3cpe-btcnode
Temporarily disable z33nukt7ngik3cpe btcnode due to failing service c…
2020-01-08 09:08:55 +01:00
Christoph Atteneder
9523c04788
Merge pull request #3874 from wiz/tweak-wiz-btcnode-clearnet
Update clearnet hostnames / IPs for 2 btcnodes operated by @wiz
2020-01-08 09:08:35 +01:00
Christoph Atteneder
c960e6d3fc
Merge pull request #3873 from wiz/add-m52go-btcnode
Add new 4nnuyxm5k5tlyjq3.onion:8333 btcnode operated by @m52go
2020-01-08 09:08:13 +01:00
Christoph Atteneder
40a1527d6c
Update translations 2020-01-08 09:04:35 +01:00
Christoph Atteneder
653b59b798
Remove Greek from supported core languages 2020-01-08 09:04:17 +01:00