Skip to content

Conversation

msgilligan
Copy link
Contributor

No description provided.

@msgilligan
Copy link
Contributor Author

msgilligan commented Feb 22, 2025

@msgilligan
Copy link
Contributor Author

If you merge PR #1651 first, it will verify the wrapper in this PR.

@msgilligan msgilligan force-pushed the msgilligan/gradlew-8.12.1 branch from b7068f1 to d14dc9d Compare February 25, 2025 19:49
@msgilligan msgilligan changed the title update gradle wrapper to 8.12.1 update gradle wrapper to 8.13 Feb 25, 2025
@msgilligan
Copy link
Contributor Author

Gradle 8.13 was released today, so I rebased, updated, and changed the PR title.

@msgilligan
Copy link
Contributor Author

@craigraw Do you want me to update this to 8.14.3? (or even 9.0.0? But I think 9.0.0 should probably be a separate PR)

@craigraw
Copy link
Collaborator

craigraw commented Aug 6, 2025

Thanks for the reminder to look at this. The answer is I'm not sure yet...

@msgilligan
Copy link
Contributor Author

The answer is I'm not sure yet...

I will push a second commit to update to 8.14.3 which is the latest 8.x Gradle and supports JDK 24. I'm almost certain there will be no issues for Sparrow with updating to that version of Gradle. (If it looks good we can squash the commit, if not we can remove the 2nd commit and still have the upgrade to 8.13.)

However, there is a known issue with the B.A. JLink plugin and Temurin 24 that you should be aware of:
beryx/badass-jlink-plugin#299

So far Gradle 9.0.0 looks like a nice upgrade, but it could break plugins (there's one or two in Sparrow I haven't tried) and complicated builds that are using Gradle deprecated features may need updates.

secp-jdk has a relatively simple Gradle build and was a very smooth update to Gradle 9.0.0. bitcoinj is more complicated because we require that it be able to build with Debian Gradle 4.4 for our reference builds. So Gradle 9.0.0 support is W.I.P.: bitcoinj/bitcoinj#3860

@msgilligan msgilligan force-pushed the msgilligan/gradlew-8.12.1 branch from d14dc9d to 73bade3 Compare August 6, 2025 13:40
@msgilligan
Copy link
Contributor Author

The upgrade to 8.13 is now rebased on master and force-pushed. Tests are running: (now I remember why I made some PRs around GitHubActions) I did test the build locally on macOS, though.

@msgilligan
Copy link
Contributor Author

msgilligan commented Aug 6, 2025

Weird. When I try to build with Gradle 8.14.3 I get the following error:

> Task :drongo:test
Caching disabled for task ':drongo:test' because:
  Build cache is disabled
Task ':drongo:test' is not up-to-date because:
  Task has failed previously.
Starting process 'Gradle Test Executor 4'. Working directory: /Users/sean/github/sparrowwallet/sparrow/drongo Command: /Users/sean/.sdkman/candidates/java/22.0.2-oracle/bin/java -Dorg.gradle.internal.worker.tmpdir=/Users/sean/github/sparrowwallet/sparrow/drongo/build/tmp/test/work @/Users/sean/.gradle/.tmp/gradle-worker-classpath15075299923673780880txt -Xmx512m -Dfile.encoding=UTF-8 -Duser.country=US -Duser.language=en -Duser.variant -ea worker.org.gradle.process.internal.worker.GradleWorkerMain 'Gradle Test Executor 4'
Successfully started process 'Gradle Test Executor 4'

OutputDescriptorTest > testMasterPrivateKeyWithNonBip32ChildDerivation() FAILED
    org.opentest4j.AssertionFailedError: expected: <m/84'/1'/0'/3/0> but was: <m/84'/1'/0'>
        at app//org.junit.jupiter.api.AssertionFailureBuilder.build(AssertionFailureBuilder.java:151)
        at app//org.junit.jupiter.api.AssertionFailureBuilder.buildAndThrow(AssertionFailureBuilder.java:132)
        at app//org.junit.jupiter.api.AssertEquals.failNotEqual(AssertEquals.java:197)
        at app//org.junit.jupiter.api.AssertEquals.assertEquals(AssertEquals.java:182)
        at app//org.junit.jupiter.api.AssertEquals.assertEquals(AssertEquals.java:177)
        at app//org.junit.jupiter.api.Assertions.assertEquals(Assertions.java:1141)
        at app//com.sparrowwallet.drongo.OutputDescriptorTest.testMasterPrivateKeyWithNonBip32ChildDerivation(OutputDescriptorTest.java:164)

I get the same error when I try to build the current master of Drone with Java 22 and the current gradlew in Drongo.

I thought know I had done a build earlier without the error (I stated so in the previous comment), but maybe I accidentally avoided it because I forgot to do a --recurse-submodules or something like that.

@msgilligan
Copy link
Contributor Author

msgilligan commented Aug 6, 2025

BTW, I really think you should reconsider this closed PR: #1647 (runs build/test/package on PRs) -- or something similar. It would be really helpful when testing Gradle upgrades, etc.

@craigraw
Copy link
Collaborator

craigraw commented Aug 7, 2025

Thanks, my bad - have done some work on output descriptor parsing in the last week. Fixed in sparrowwallet/drongo@0aedd1d.

@craigraw
Copy link
Collaborator

craigraw commented Aug 7, 2025

I've upgraded to Gradle 8.14.3 in a separate commit bef6c75 - there were a bunch of other changes required in the build, and I wanted to upgrade the Gradle wrappers in the submodules as well. Thanks for this though - it was a good prompt to sort out these issues.

Unfortunately there's still one deprecation warning due to the jlink plugin, but it doesn't look like it will affect anything until Gradle 10.

@craigraw craigraw closed this Aug 7, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants