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

Build: Upgrade to gradle 8.8 #8486

Merged
merged 1 commit into from
Jun 25, 2024
Merged

Build: Upgrade to gradle 8.8 #8486

merged 1 commit into from
Jun 25, 2024

Conversation

jbonofre
Copy link
Member

@jbonofre jbonofre commented Sep 4, 2023

Close #8485

@jbonofre
Copy link
Member Author

Working on finding a workaround for revapi (it doesn't work out of the box with gradle 8.3).

@jbonofre jbonofre force-pushed the 8485 branch 3 times, most recently from 8ea2dee to 8e2ae6d Compare October 2, 2023 12:59
@jbonofre jbonofre changed the title Build: Upgrade to gradle 8.3 Build: Upgrade to gradle 8.4 Oct 5, 2023
@jbonofre
Copy link
Member Author

jbonofre commented Oct 5, 2023

Re-testing revapi on Gradle 8.4 (it should be the same as with Gradle 8.3).

@jbonofre
Copy link
Member Author

Unfortunately gradle-revapi-plugin doesn't seem super active (https://github.com/palantir/gradle-revapi).

I think it's important to be up to date in regards of Gradle. I will propose a fix to gradle-revapi. If the change is not merge and/or it's hard to have a new release, I will propose an alternative plan.

@ajantha-bhat
Copy link
Member

Unfortunately gradle-revapi-plugin doesn't seem super active (https://github.com/palantir/gradle-revapi).
I think it's important to be up to date in regards of Gradle. I will propose a fix to gradle-revapi. If the change is not merge and/or it's hard to have a new release, I will propose an alternative plan.

totally agree, worst case we can drop rev-api and find alternatives. But we can't keep gradle out of date.

cc: @nastra, @Fokko, @danielcweeks, @rdblue

@jbonofre
Copy link
Member Author

jbonofre commented Dec 1, 2023

I'm resuming my work on this one, upgrading to Gradle 8.5 and proposing a fix for revapi. I will share details soon.

@jbonofre
Copy link
Member Author

I'm back on this one, sorry for the delay. I will share the gradle 8.5 update + revapi approach.

@jbonofre jbonofre changed the title Build: Upgrade to gradle 8.4 Build: Upgrade to gradle 8.5 Jan 12, 2024
@jbonofre
Copy link
Member Author

jbonofre commented Feb 3, 2024

As gradle 8.6 is available, I will resume this PR upgrading to 8.6.

@jbonofre jbonofre changed the title Build: Upgrade to gradle 8.5 Build: Upgrade to gradle 8.6 Feb 4, 2024
@jbonofre
Copy link
Member Author

Now upgrading to Gradle 8.7 and proposing alternative approach to revapi plugin.

@Fokko Fokko mentioned this pull request Jun 11, 2024
@findepi
Copy link
Member

findepi commented Jun 11, 2024

Close #8485

nit: currently the PR upgrades to 8.6 and the linked issue says 8.7

@jbonofre
Copy link
Member Author

@findepi that's correct for the gradle update PR because we want to fix revapi and shadow plugins first. I will update the PR to avoid confusion. Thanks !

@jbonofre jbonofre changed the title Build: Upgrade to gradle 8.6 Build: Upgrade to gradle 8.8 Jun 17, 2024
@jbonofre
Copy link
Member Author

NB: the gradle-revapi plugin used in this PR is one in preparation containing the detection fix.

@jbonofre
Copy link
Member Author

@nastra as discussed, I identified the problem with gradle-revapi plugin:

  1. On current main branch (with Gradle 8.1.1 and gradle-revapi 1.7.0), we can see:
Old API: API[archives=[iceberg-common-1.5.0.jar], supplementary=[iceberg-bundled-guava-1.5.0.jar, slf4j-api-1.7.36.jar]]
New API: API[archives=[iceberg-common-1.6.0-SNAPSHOT.jar], supplementary=[slf4j-api-1.7.36.jar, iceberg-bundled-guava-1.6.0-SNAPSHOT.jar]]
  1. On the gradle 8 update branch (with Gradle 8.8 and gradle-revapi 1.7.0), we can see:
Old API: API[archives=[iceberg-common-1.6.0-SNAPSHOT.jar], supplementary=[iceberg-bundled-guava-1.6.0-SNAPSHOT.jar, slf4j-api-1.7.36.jar]]
New API: API[archives=[iceberg-common-1.6.0-SNAPSHOT.jar], supplementary=[slf4j-api-1.7.36.jar, iceberg-bundled-guava-1.6.0-SNAPSHOT.jar]]

So the issue is about the old API where it uses 1.6.0-SNAPSHOT instead of 1.5.0. I'm investigating and fixing that.

@jbonofre jbonofre force-pushed the 8485 branch 3 times, most recently from 41538ae to 6d7af9f Compare June 17, 2024 19:49
@jbonofre jbonofre force-pushed the 8485 branch 2 times, most recently from 647a5ed to e9e7d07 Compare June 25, 2024 11:53
@jbonofre
Copy link
Member Author

@Fokko @nastra As we fixed gradle-revapi plugin, I propose to set 1.6.0 milestone to this PR as it will allow us to upgrade Parquet.

@Fokko Fokko added this to the Iceberg 1.6.0 milestone Jun 25, 2024
Copy link
Contributor

@Fokko Fokko left a comment

Choose a reason for hiding this comment

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

Thanks for pushing this @jbonofre, took a bit of time and effort, but it looks like we're there 🎉

I did a quick check and it triggers the revapi: https://github.com/apache/iceberg/actions/runs/9664376603/job/26658848689?pr=10209

@jbonofre
Copy link
Member Author

@Fokko great ! I tested locally and it detects the revapi breaking changes cleanly now 😄 Thanks for testing on GH Actions !

Copy link
Contributor

@nastra nastra left a comment

Choose a reason for hiding this comment

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

LGTM, I also verified locally that RevAPI correctly detects breaking changes

@nastra nastra merged commit 565352d into apache:main Jun 25, 2024
46 checks passed
jasonf20 pushed a commit to jasonf20/iceberg that referenced this pull request Aug 4, 2024
zachdisc pushed a commit to zachdisc/iceberg that referenced this pull request Dec 23, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Upgrade to gradle 8.8
5 participants