Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

gradle: 8.10.2 -> 8.12 #356109

Merged
merged 9 commits into from
Jan 16, 2025
Merged

gradle: 8.10.2 -> 8.12 #356109

merged 9 commits into from
Jan 16, 2025

Conversation

liff
Copy link
Contributor

@liff liff commented Nov 15, 2024

Gradle release 8.12

Turns out the update script couldn’t deal with an update to .0. Even though the tag is v8.11.0 the actual version number is 8.11.

Fixes #355951.

Incorporates changes from #364871.

Things done

  • Built on platform(s)
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)
    • sandbox = relaxed
    • sandbox = true
  • Tested, as applicable:
  • Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
  • Tested basic functionality of all binary files (usually in ./result/bin/)
  • 25.05 Release Notes (or backporting 24.11 and 25.05 Release notes)
    • (Package updates) Added a release notes entry if the change is major or breaking
    • (Module updates) Added a release notes entry if the change is significant
    • (Module addition) Added a release notes entry if adding a new NixOS module
  • Fits CONTRIBUTING.md.

Add a 👍 reaction to pull requests you find important.

# Gradle’s .0 releases are tagged as `vX.Y.0`, but the actual
# release version omits the `.0`, so we’ll wanto to only capture
# the version up but not including the the trailing `.0`.
"--version-regex=^v(\\d+\\.\\d+(?:\\.[1-9]\\d?)?)(\\.0)?$"
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Right now this’ll cause nix-update to crash, but I’ll open an issue.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not sure how to feel about including this flag while it's broken in upstream nix-update. Maybe we should comment it out and/or add it once it's fixed upstream?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sure, commented out.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The nix-update issue got fixed in the meantime, so restored the flag.

@FliegendeWurst
Copy link
Member

jadx fails to build (succeeds on master)

FAILURE: Build failed with an exception.

* Where:
Build file '/build/source/buildSrc/build.gradle.kts' line: 1

* What went wrong:
Plugin [id: 'org.gradle.kotlin.kotlin-dsl', version: '5.1.1'] was not found in any of the following sources:

@liff
Copy link
Contributor Author

liff commented Nov 17, 2024

@FliegendeWurst thanks. It looks like since the MITM cache in #272380 we (may) have to run dependency update for Gradle-built packages.

I’ll run the updates and add refreshed deps.json for packages that need it.

@chayleaf
Copy link
Contributor

chayleaf commented Nov 18, 2024

Each version of Gradle bundles different versions of various embedded stuff. There's not too much documentation on this, but from what I can tell the Kotlin DSL version is set here. It's further used here in code generation. Then, at build time, if the version doesn't match the hardcoded version, it may issue a warning here, but I don't see why it can't be overridden in theory.

Since this hardcoded version is likely possible to override, it's also possible to extend the Gradle build scripts to look for whatever Kotlin DSL plugin is in the cache and use that. Howver, Gradle docs say:

Each Gradle release is meant to be used with a specific version of the kotlin-dsl plugin and compatibility between arbitrary Gradle releases and kotlin-dsl plugin versions is not guaranteed. Using an unexpected version of the kotlin-dsl plugin in a build will emit a warning and can cause hard to diagnose problems.

I don't actually think the old FOD-style derivations would've avoided this issue, it seems unrelated to mitm-cache, but maybe Gradle has some weird logic where if a repo is local it uses whatever version is available instead of whatever version is set.

@liff liff changed the title gradle: 8.10.2 -> 8.11 gradle: 8.10.2 -> 8.11.1 Nov 20, 2024
@wegank wegank added 12.approvals: 1 This PR was reviewed and approved by one reputable person 12.approved-by: package-maintainer This PR was reviewed and approved by a maintainer listed in the package labels Nov 25, 2024
@tomodachi94
Copy link
Member

Result of nixpkgs-review pr 356109 run on aarch64-linux 1

1 package marked as broken and skipped:
  • jextract
5 packages failed to build:
  • atlauncher
  • gscan2pdf
  • gscan2pdf.man
  • mindustry
  • mindustry-wayland
49 packages built:
  • apkeditor
  • apkleaks
  • apkleaks.dist
  • apksigcopier
  • apksigcopier.dist
  • apksigner
  • armitage
  • cie-middleware-linux
  • diffoscope
  • diffoscope.dist
  • diffoscope.man
  • experienced-pixel-dungeon
  • fdroidserver
  • fdroidserver.dist
  • garble
  • ghidra
  • ghidra-extensions.findcrypt
  • ghidra-extensions.ghidra-delinker-extension
  • ghidra-extensions.ghidra-golanganalyzerextension
  • ghidra-extensions.gnudisassembler
  • ghidra-extensions.lightkeeper
  • ghidra-extensions.machinelearning
  • ghidra-extensions.ret-sync
  • ghidra-extensions.sleighdevtools
  • gotenberg
  • gradle (gradle_8)
  • gradle-unwrapped (gradle_8-unwrapped)
  • jabref
  • jadx
  • openjfx23 (javaPackages.openjfx23)
  • jextract-21
  • key
  • kotlin-language-server
  • libeufin
  • mindustry-server
  • moneydance
  • mucommander
  • nextflow
  • nf-test
  • pdfchain
  • pdftk
  • pidginPackages.purple-signald
  • rat-king-adventure
  • rkpd2
  • shattered-pixel-dungeon
  • shorter-pixel-dungeon
  • signald
  • signaturepdf
  • summoning-pixel-dungeon

@tomodachi94
Copy link
Member

tomodachi94 commented Nov 26, 2024

@github-actions github-actions bot added the 6.topic: java Including JDK, tooling, other languages, other VMs label Dec 10, 2024
@wegank wegank removed 12.approvals: 1 This PR was reviewed and approved by one reputable person 12.approved-by: package-maintainer This PR was reviewed and approved by a maintainer listed in the package labels Dec 10, 2024
@ofborg ofborg bot requested a review from FliegendeWurst December 11, 2024 16:09
@liff liff changed the title gradle: 8.10.2 -> 8.11.1 gradle: 8.10.2 -> 8.12 Dec 23, 2024
@britter
Copy link
Contributor

britter commented Jan 15, 2025

I've build and linked the gradle package from this PR locally and verified I can build projects, so from that PoV this change is good. I've also noticed that this upgrade fixes gradle/gradle#32006, so we should merge it rather sooner than later. In order to fix the console issue above I had to remove $GRADLE_HOME/native so that is was rebuild. I'm not sure if that will be required for everybody once this PR is merged. if so, it should be documented somewhere.

@katexochen
Copy link
Contributor

nixpkgs-review result

Generated using nixpkgs-review.

Command: nixpkgs-review pr 356109


x86_64-linux

⏩ 1 package marked as broken and skipped:
  • jextract
❌ 12 packages failed to build:
  • ghidra
  • ghidra-extensions.findcrypt
  • ghidra-extensions.ghidra-delinker-extension
  • ghidra-extensions.ghidra-golanganalyzerextension
  • ghidra-extensions.gnudisassembler
  • ghidra-extensions.lightkeeper
  • ghidra-extensions.machinelearning
  • ghidra-extensions.ret-sync
  • ghidra-extensions.sleighdevtools
  • ghidra-extensions.wasm
  • gotenberg
  • pidginPackages.purple-signald
✅ 89 packages built:
  • anyk
  • apkeditor
  • apkleaks
  • apkleaks.dist
  • apksigcopier
  • apksigcopier.dist
  • apksigner
  • armitage
  • atlauncher
  • autopsy
  • bisq2
  • bluej
  • cie-middleware-linux
  • corretto11
  • corretto11.debug
  • corretto17
  • corretto17.debug
  • corretto21
  • corretto21.debug
  • cryptomator
  • diffoscope
  • diffoscope.dist
  • diffoscope.man
  • experienced-pixel-dungeon
  • fastddsgen
  • fdroidserver
  • fdroidserver.dist
  • freenet
  • freeplane
  • ganttproject-bin
  • garble
  • gradle (gradle_8)
  • gradle-unwrapped (gradle_8-unwrapped)
  • gradle_7
  • gradle_7-unwrapped
  • greenfoot
  • gscan2pdf
  • gscan2pdf.man
  • jabref
  • jadx
  • java-hamcrest
  • openjfx (javaPackages.openjfx17 ,openjfx17)
  • openjfx21 (javaPackages.openjfx21)
  • openjfx23 (javaPackages.openjfx23)
  • jextract-21
  • json2cdn
  • key
  • keyboard-layout-editor
  • keyguard
  • keyspersecond
  • kotlin-language-server
  • libeufin
  • maptool
  • marytts
  • mcaselector
  • microsoft-identity-broker
  • mindustry
  • mindustry-server
  • mindustry-wayland
  • minion
  • moneydance
  • mucommander
  • nextflow
  • nf-test
  • ns-usbloader
  • olvid
  • pattypan
  • pdfchain
  • pdfsam-basic
  • pdftk
  • quake-injector
  • quark-goldleaf
  • rat-king-adventure
  • rkpd2
  • scenebuilder
  • scenic-view
  • shattered-pixel-dungeon
  • shorter-pixel-dungeon
  • signald
  • signaturepdf
  • slimevr
  • slimevr-server
  • sparrow
  • sparrow-unwrapped
  • sportstracker
  • stirling-pdf
  • summoning-pixel-dungeon
  • tests.pkgs-lib
  • tower-pixel-dungeon

@katexochen
Copy link
Contributor

pidginPackages.purple-signald is broken on main, gotenberg builds fine (multiple times), looks like a flaky test.

@github-actions github-actions bot added 10.rebuild-darwin: 0 This PR does not cause any packages to rebuild on Darwin and removed 10.rebuild-darwin: 11-100 labels Jan 16, 2025
@nix-owners nix-owners bot requested a review from britter January 16, 2025 10:44
@britter
Copy link
Contributor

britter commented Jan 16, 2025

gotenberg does not depend on gradle. It's Go application:

So I think we're fine to merge this.

@britter
Copy link
Contributor

britter commented Jan 16, 2025

Forget what I said, gotenberg depends on gradle transitively via pdftk.

@britter
Copy link
Contributor

britter commented Jan 16, 2025

I built pdftk and gotenberg both on my machine without problems.

@katexochen katexochen merged commit 44c6d23 into NixOS:master Jan 16, 2025
24 of 27 checks passed
@britter britter added the backport release-24.11 Backport PR automatically label Jan 16, 2025
@nixpkgs-ci
Copy link
Contributor

nixpkgs-ci bot commented Jan 16, 2025

Backport failed for release-24.11, because it was unable to cherry-pick the commit(s).

Please cherry-pick the changes locally and resolve any conflicts.

git fetch origin release-24.11
git worktree add -d .worktree/backport-356109-to-release-24.11 origin/release-24.11
cd .worktree/backport-356109-to-release-24.11
git switch --create backport-356109-to-release-24.11
git cherry-pick -x 9ca9394a64f76ec0eedb37ba20407a6e78afe23d 6082098609b0c9ef65939c5e64523043a69a7947 29503f955b8e94ce97824a20192484eb10e6f1ff 779b6255fd6e477290b9bd3e3956bfe79d60d7a9 cd6a44e1b73455c5abe91482e57e10609853c904 a3b161e1f6aef25df3ae51a5f9eee8fc338fd011 eb43df3e281f05d50107e5771a3b1ddc47bb62e6 f26a825e8bba322f0862e2cd4c6f86d548637e97 abf3eaf9337a04b5cadd960fa9f9936b43123b76

@FliegendeWurst FliegendeWurst added backport release-24.11 Backport PR automatically and removed backport release-24.11 Backport PR automatically labels Jan 16, 2025
@britter
Copy link
Contributor

britter commented Jan 16, 2025

@FliegendeWurst I suspect the backport failed because this PR included a reformat commit.

@nixpkgs-ci

This comment was marked as off-topic.

@jchv jchv mentioned this pull request Jan 18, 2025
3 tasks
@liff liff deleted the gradle/v8.11 branch January 22, 2025 08:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
6.topic: java Including JDK, tooling, other languages, other VMs 8.has: package (update) This PR updates a package to a newer version 10.rebuild-darwin: 0 This PR does not cause any packages to rebuild on Darwin 10.rebuild-linux: 11-100 11.by: package-maintainer This PR was created by the maintainer of the package it changes backport release-24.11 Backport PR automatically
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Update request: gradle_8 8.10.x → 8.11
10 participants