Commit graph

225 commits

Author SHA1 Message Date
Florian Reimair
52c5a7efe1 Use configurable properties file 2018-12-10 16:04:27 +01:00
Florian Reimair
984aabfdd4 Periodical schedule 2018-12-10 14:47:34 +01:00
Florian Reimair
86d642596e Basic configuration infrastructure available 2018-12-10 14:46:10 +01:00
Florian Reimair
df5b2dc15e Basic framework for Monitor 2018-12-10 13:57:14 +01:00
Florian Reimair
5e96b8ebe2 Patch deprecated Networknode 2018-12-07 10:14:20 +01:00
Chris Beams
931f369fb6
Include executable name and version in help output 2018-11-24 13:24:03 +01:00
Chris Beams
83e1dd37f9
Refactor option parsing configuration
This change eliminates the BisqExecutable.description method and
replaces it with proper use of the `describedAs` and `defaultsTo`
methods in the JOptSimple API. This removes the concern of formatting
option argument descriptions and default values from the BisqExecutable
class, and delegates it to the new BisqHelpFormatter (see previous
commit), which is designed for the purpose.

For example, prior to this commit, the help text for the --banList
option read as follows:

    --banList=<value>
            Nodes to exclude from network connections. (default: )

Now it reads as follows:

    --banList=<host:port[,...]>
            Nodes to exclude from network connections.

Likewise, previous to this commit, the --logLevel option read as
follows:

    --logLevel=<value>
            Log level [OFF, ALL, ERROR, WARN, INFO, DEBUG, TRACE]
            (default: INFO)

And now it reads like this:

    --logLevel=<OFF|ALL|ERROR|WARN|INFO|DEBUG|TRACE> (default: INFO)
            Log level

There are a number of further improvements that can and should be made
to the description text of the various options, the types specified for
their arguments, etc, but these will be handled in subsequent commits.
This commit is strictly about refactoring existing parser configuration
to take advantage of the new BisqHelpFormatter.
2018-11-24 13:24:03 +01:00
Chris Beams
e97625cfc3
Pull up remaining monitor config to root 2018-11-04 17:41:37 +01:00
Chris Beams
bd1e7e273f
Pull up application plugin config to root 2018-11-04 16:27:52 +01:00
Chris Beams
1cdb39ab60
Pull up JesusMcCloud repo to root
Not all subprojects need it, but most do.
2018-11-04 14:28:14 +01:00
Chris Beams
4e1fa914a2
Pull up common repositories to root build.gradle 2018-11-04 14:20:55 +01:00
Chris Beams
95c8b8ddfa
Pull up application and configuration of java plugin 2018-11-04 14:20:55 +01:00
Chris Beams
3c1c402d40
Remove use of maven plugin
It is no longer necessary to publish Maven metadata about common, core
and other submodules as they are no longer managed as separate libraries
in separate repositories. The only way these modules should be getting
referenced is from within applications in this repository such as
desktop, statsnode, etc. Essentially, we're no longer publishing our
libraries for public consumption.
2018-11-04 13:19:06 +01:00
Manfred Karrer
bb20264473
Move classes 2018-09-23 15:35:06 -05:00
Manfred Karrer
920ad2e1b5
Rename network package to nodes 2018-09-23 15:29:09 -05:00
Manfred Karrer
8d0f6b7556
Rename BitcoinNodes to BtcNodes 2018-09-23 15:22:20 -05:00
Manfred Karrer
0d86176f4e
Further refactorings: move classes to other packages 2018-09-23 15:09:22 -05:00
Manfred Karrer
16fac73b6d
Further refactorings move classes to other packages 2018-09-23 14:56:46 -05:00
Manfred Karrer
f3f719a632
Move btc setup classes to setup package 2018-09-23 14:46:58 -05:00
Christoph Atteneder
68fb1163a3
Add Java 10 configuration for merged repositories 2018-09-17 13:37:03 +02:00
Christoph Atteneder
ecef18a437
Merge monitor repository at fd01ee4 2018-09-14 11:42:51 +02:00
Chris Beams
aec4c4814a
Move monitor module to new repository
This module is being extracted into its own repository, which will live
at https://github.com/bisq-network/bisq-monitor.
2018-03-09 17:23:10 +01:00
Chris Beams
19b9c6fe59
Set Maven version to -SNAPSHOT
Problem: d218094 set the version to 0.7.0-SNAPSHOT, but that change
failed to produce the intended effect detailed in the commit comment.
Setting the version to a value like 0.7.0-SNAPSHOT works fine when
publishing artifacts to a local ~/.m2 repository, but JitPack has no
awareness of version metadata within pom files, and can only retreive
artifacts based on Git metadata, namely tags, branch names and commit
hashes. This means it is impossible to resolve artifacts from JitPack
with a GAV like `io.bisq.exchange:core:0.7.0-SNAPSHOT` unless there is a
branch named `0.7.0`. This is why the pull request at
bisq-network/bisq-seednode#1 failed.

Solution: JitPack supports the semantics of Maven-style `-SNAPSHOT`
versioning, and as a special case, allows for versions to be named
literally `-SNAPSHOT` with no preceding version string [1,2]. This
commit sets all Maven versions to `-SNAPSHOT`, achieving the original
effect intended by d218094. Now downstream components (like
bisq-seednode) can resolve dependencies seamlessly from JitPack or a
local ~/.m2 repo with a GAV like `io.bisq.exchange:core:-SNAPSHOT`. This
is a slightly unconventional arrangement, but should actually result in
fewer updates to pom files over time as there may in fact be no reason
to ever change this version string so long as we continue using JitPack
and avoid publication to Maven Central / JCenter or similar.

[1]: https://jitpack.io/docs/#building-with-jitpack
[2]: https://github.com/jitpack/jitpack.io/issues/351

See #1440
2018-03-09 10:29:23 +01:00
Chris Beams
d218094269
Bump Maven artifact versions to 0.7.0-SNAPSHOT
Problem: When resolving Bisq libraries, e.g. `core` or `network` from
JitPack for use in other components like bisq-seednode or
bisq-pricenode, we have historically, resolved them by tag or by
branchname, e.g. with GAV coordinates like `io.bisq:core:v0.6.7` or
`io.bisq:core:master`. This works well enough, but now that we are
beginning to modularize more aggressively, we want to make sure that
it's possible at any time to publish the latest snapshots of these
libraries to one's own local ~/.m2 repository such that they can be
easily resolved from downstream components without the need to push
commits to the bisq-network/exchange remote, and to wait for JitPack to
do a just-in-time build.

Solution: By updating the version value of all modules here in the
exchange repository from 0.6.7 => 0.7.0-SNAPSHOT, one can run
`mvn install` to publish the latest "snapshot" of exchange libraries to
the local ~/.m2 repository and be sure to resolve them from whatever
downstream component that they are working on. The -SNAPSHOT qualifier
ensures that no caching occurs, and that the very latest such binary
will always be used.

This new arrangement creates a situation where one can transparently
resolve these dependencies remotely from JitPack and then subsequently
resolve them locally from one's ~/.m2 repository without having to
change a line of code.

It also opens up the ability to manage all Bisq components together in a
single IDE window as if they were all in one repository, avoiding the
need even to issue a `mvn install` command to publish locally--but
that's not the main focus of this change.

Note that the change to 0.7.0 here is based on the fact that we already
planned to have the next version shipped from `master` be 0.7.0, as
there are quite a few new UI changes that probably merit the bump in
minor version. The version change also aligns well with the fact that
we're modularizing a number of components right now, and all
newly-extracted components have been jumping to v0.7.0 to indicate their
new independent status. This has been the case with bisq-seednode and
pricenode so far.

Finally, it is important to note here that the ONLY versions updated by
this change are those specific to Maven metadata and therefore artifact
management / dependency resolution. The version that the Bisq desktop
client reports in its UI and to the network in its user agent has NOT
been changed, on account of the fact that users may run Bisq from
source, and we need to think through more fully the implications of
reporting a verison like 0.7.0-SNAPSHOT in those situations. Here is a
list of files containing the old version (0.6.7) that have NOT been
updated:

 - common/src/main/java/io/bisq/common/app/Version.java
 - package/linux/32bitBuild.sh
 - package/linux/Dockerfile
 - package/osx/create_app.sh
 - package/osx/finalize.sh
 - package/windows/32bitBuild.bat
 - package/windows/64bitBuild.bat
 - package/windows/Bisq.iss
 - package/linux/64bitBuild.sh

One thing we know for sure that wouldn't work here is that Bisq's
Version class currently does not support -SNAPSHOT qualifiers. It just
breaks the version string validation entirely. So we'd need to patch
that in any case if we do decide it's a good idea to let pre-release
builds report their version accurately.
2018-03-08 19:49:30 +01:00
Chris Beams
19d8c252ba
Change groupid from io.bisq => io.bisq.exchange
Problem: The current `io.bisq` groupid does not align with the way
JitPack supports custom groupids. In order to be able to both resolve
artifacts from JitPack *and* be able to resolve the same artifacts from
one's local ~/.m2 repository, Bisq artifacts need to have the same GAV
coordinates everywhere (groupid, artifactid, version).

Solution: This commit changes all groupids from io.bisq =>
io.bisq.exchange to match the GAV coordinates produced / expected by
JitPack.

So where Bisq's core module would previously have been resolvable with
GAV coordinates `io.bisq:core:v0.6.7` it will now be resolvable as
`io.bisq.exchange:core:v0.6.7`.

Note that this change is not just to satisfy JitPack idiosyncracies, but
is actually good naming practice anyway where a multi-module build is
involved, and is arguably the way it should have been all along.

[1]: https://jitpack.io/docs/#publishing-on-jitpack
2018-03-08 18:59:31 +01:00
Manfred Karrer
b5ac9f97ca
Add vote reveal type. Adjust BSQ fees. Refactorings. 2018-03-05 22:00:13 -05:00
Manfred Karrer
1f6122e934
Add option key: genesisBlockHeight. Rename option key regTestBsqGenesisTxId to genesisTxId. Remove hard coded dev genesis tx id and height. 2018-03-05 12:05:24 -05:00
Manfred Karrer
b7064f9820
Add option key for dev mode 2018-03-05 11:10:00 -05:00
Manfred Karrer
fd18cca161
Add missing setProperty call for regTestBsqGenesisTxId 2018-03-02 09:50:33 -05:00
Manfred Karrer
1d0591084d
Merge branch '0.6.7'
# Conflicts:
#	common/pom.xml
#	common/src/main/java/io/bisq/common/app/Version.java
#	common/src/main/resources/i18n/displayStrings.properties
#	common/src/main/resources/i18n/displayStrings_hu.properties
#	common/src/main/resources/i18n/displayStrings_ro.properties
#	consensus/pom.xml
#	core/pom.xml
#	core/src/main/java/io/bisq/core/offer/OpenOfferManager.java
#	core/src/main/java/io/bisq/core/payment/PaymentAccountUtil.java
#	core/src/main/java/io/bisq/core/provider/fee/FeeService.java
#	gui/pom.xml
#	gui/src/main/java/io/bisq/gui/bisq.css
#	gui/src/main/java/io/bisq/gui/main/offer/createoffer/CreateOfferDataModel.java
#	gui/src/main/java/io/bisq/gui/main/offer/createoffer/CreateOfferView.java
#	gui/src/main/java/io/bisq/gui/main/offer/takeoffer/TakeOfferView.java
#	gui/src/main/java/io/bisq/gui/main/portfolio/openoffer/OpenOffersView.java
#	gui/src/main/java/io/bisq/gui/main/portfolio/openoffer/OpenOffersViewModel.java
#	gui/src/main/java/io/bisq/gui/util/GUIUtil.java
#	monitor/pom.xml
#	network/pom.xml
#	network/src/main/resources/PersistableNetworkPayloadMap_BTC_MAINNET
#	package/linux/32bitBuild.sh
#	package/linux/64bitBuild.sh
#	package/linux/Dockerfile
#	package/osx/create_app.sh
#	package/osx/finalize.sh
#	package/windows/32bitBuild.bat
#	package/windows/64bitBuild.bat
#	package/windows/Bisq.iss
#	pom.xml
#	seednode/pom.xml
#	statistics/pom.xml
2018-02-26 22:03:47 -05:00
Manfred Karrer
fd47cefc6c
Set v0.6.7 2018-02-26 20:23:07 -05:00
Manfred Karrer
644312a472
Add useDevPrivilegeKeys to other app base module 2018-02-26 12:52:42 -05:00
Manfred Karrer
2c593559db
Merge 0.6.6 branch to master 2018-02-23 21:40:34 -05:00
Manfred Karrer
0b6edbb883
Set version 0.6.6 2018-02-23 15:41:24 -05:00
Manfred Karrer
bf244856b1
v0.6.5 2018-01-31 13:04:24 -05:00
Manfred Karrer
8b14f6bb15
Add request and response timestamp and retry counter to monitor 2018-01-30 22:34:36 -05:00
Manfred Karrer
33eecd81aa
Release 0.6.4 2018-01-20 20:47:53 -05:00
Manfred Karrer
27d1083380
Use 60 days for TTL for alert. Cleanups. 2018-01-10 22:21:32 +01:00
Manfred Karrer
9988a7e4f6
Increase retry for monitor to 5. Adjust logs. Cleanup. 2018-01-09 23:55:15 +01:00
Manfred Karrer
aeec075c91
Prepare v0.6.3 2018-01-09 23:36:49 +01:00
Manfred Karrer
71a0fc5240
Revert removal of WalletDir optionkey 2018-01-09 22:32:46 +01:00
Manfred Karrer
cdc1061571
Remove WALLET_DIR. Use APP_DATA_DIR_KEY instead. 2018-01-09 20:18:43 +01:00
Manfred Karrer
80aca142ff
Fix issue with bouncycastle in pom 2018-01-04 23:46:42 +01:00
Manfred Karrer
b45ce61762
Change monitor port to 80 2018-01-04 20:55:32 +01:00
Manfred Karrer
307b936082
Fix Monitor issues with error reports. Improve logging. 2018-01-03 15:55:59 +01:00
Manfred Karrer
14d1db0e81
Increase retry time and retry count for failed seed nodes in monitor 2017-12-27 23:58:03 +01:00
Manfred Karrer
ea4b926a8c
Change mvn plugin version 2017-12-20 12:48:13 +01:00
Manfred Karrer
5ce2a67d0c
Prepare release 0.6.2 2017-12-20 01:12:18 +01:00
Manfred Karrer
41a4ca93e7
Improve error msg for withdrawal. Refactor: Rename TIMEOUT variables. 2017-12-19 23:27:43 +01:00
Manfred Karrer
a13a59fc4b
Refactoring: Rename seednode_monitor to monitor 2017-12-19 19:19:13 +01:00