- Add preliminary opReturn type to make case detection easier
- Set txType at the BsqTxController after iteration
- Move apply state code to BsqTxController
- Add more warning logs and checks
- Add stakeSpendingOutput to verify reveal tx more strictly
It doesn't actually work to build fat executable jars because we always
have bouncycastle jars that need to exist outside of the fat jar. This
change drops building fat jars altogether in favor of using Gradle's
built-in `application` plugin to write simple scripts that invoke java
with the correct classpath against a directory of all dependencies
(including bouncycastle) without the need to have a fat jar in the mix.
Essentially, you should now run:
./gradlew build
./build/app/bin/bisq-desktop [options]
Instead of `java -jar build/libs/bisq-desktop.jar`.
See updated doc/build.md for details.
For reasons detailed in bisq-network/bisq-p2p@b1528bf3.
This change also regenerates the `dependencyVerification` block, which
is necessary in any case after the upgrade of tor binaries, but note
especially that for unknown reasons, commenting out certain dependencies
items is now no longer necessary as it was in commit
53a9009b06.
Problem: The dependency commented out in this commit, when left
uncommented cause any Gradle composite build that includes this
(`bisq-desktop`) build to fail with, for example, the following error:
No dependency for integrity assertion found:
com.github.bisq-network.libdohj:libdohj-core
Solution: Comment them out until someone can dig into the gradle-witness
plugin, figure out why these specific entries cause these failures, and
fix it. Note that the commented entries work as expected when this
Gradle build is used outside the context of a composite build.
This commit takes a pass through all documentation and scripts,
replacing any remaining `mvn` commands with their `gradle` equivalents,
replacing `target/*` paths with their `build/*` equivalents, and so on.
Note that the instruction to install Maven has been removed entirely
from documentation and scripts, as opposed to instructing users to
install Gradle, because with the Gradle wrapper (the `gradlew` script in
the root of this repository), it is unnecessary to install Gradle at
all. Users may still do this with, e.g. `brew install gradle` if they
like, but otherwise can get everything they need done with `./gradlew`
commands.
This commit also replaces lowercase 'bisq' with capitalized 'Bisq' where
appropriate in documentation.
Like the previous commit, this is a best-effort approach, and not all
scripts are perfectly up-to-date and tested. Indeed, many of the docs
and scripts we have now are essentially legacy documents and should
probably be scrapped or reworked completely.
This commit is *not* a complete re-working of the scripts under package,
but is rather just enough of a re-working of the
package/osx/create_app.sh script to verify that the new Gradle build
creates a suitable fat executable jar for use in this script.
These changes have been tested with the following commands:
cd package/osx
./create_app.sh
open ../../deploy/Bisq-0.6.7.dmg
Then double-clicking the Bisq icon from the mounted DMG. Bisq starts up
as expected, without errors.
Further work will be required to update the package/osx/finalize.sh
script as well as the package/linux/ and package/windows/ scripts prior
to the next (0.7.0) release. For now, however, enough work has been done
to verify that the Gradle build creates the fat jar these scripts need.
This performs the same function that the maven-enforcer-plugin did in
the pom removed by the previous commit, and also includes a more
comprehensive / up-to-date set of dependencies.
Note that the gradle-witness jar checked in here is one built from the
pull request in signalapp/gradle-witness#26.