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

Upgrade Gdx Setup to generate projects using Gradle 8.4 #7247

Merged
merged 12 commits into from
Dec 4, 2023

Conversation

obigu
Copy link
Contributor

@obigu obigu commented Oct 5, 2023

Not to merge before #7246.

The only required change has been to remove the following line from the html module build.gradle as the property doesn't appear to exist on the latest GWT plugin version.

checkGwt.war = file("war")

Would be great if somebody could confirm how important this line is.

EDITED
Another change has been made to disable R8 full mode which is set to true by default on AGP 8 (was false https://developer.android.com/build/releases/past-releases/agp-8-0-0-release-notes). Main issue with full mode is it removes implicit empty constructors which are quite commonly used by libGDX ReflectionPool (espcially Scene 2d classes). Should be possible to enable Full mode by adding some Proguard rules to keep the necessary empty constructors but it's not easy to make sure some will be missing and unexpected runtime errors occur. For the moment I think it's best to keep using old well tested Proguard rules by default.

@tommyettinger
Copy link
Member

It isn't important; it was needed to do some verification task in an older Gradle/GWT-plugin version, but isn't needed now. Liftoff hasn't included that line for a while; it looks like I removed it 17 months ago.

@SimonIT
Copy link
Member

SimonIT commented Oct 5, 2023

By the way, it seems that the gwt-gradle-plugin has changed its package to org.docstr: new plugin page (commit). So there's already version 1.1.29

@tommyettinger
Copy link
Member

I definitely agree about R8 full mode; it will be (or was just) set to disabled by default in new Liftoff projects because of how much trouble it causes during minimization. I still think we should update to Gradle 8.4, considering how infrequently gdx-setup updates.

@obigu
Copy link
Contributor Author

obigu commented Oct 10, 2023

I still think we should update to Gradle 8.4, considering how infrequently gdx-setup updates.

Before upgrading I run tests on all platforms which takes time. On the other hand 8.4 has just been released and it's possible 8.4.1 (or even 8.5) is released by the time this is merged.

If no new Gradle releases occur in the next few days I will test and upgrade but the change should be trivial for client apps so I'm not very concerned about it.

@crykn crykn added this to the 1.12.2 milestone Oct 15, 2023
@obigu obigu changed the title Upgrade Gdx Setup to generate projects using Gradle 8.3 Upgrade Gdx Setup to generate projects using Gradle 8.4 Nov 3, 2023
@obigu obigu requested a review from a team as a code owner November 20, 2023 14:37
CHANGES Show resolved Hide resolved
@obigu obigu merged commit ddc7520 into libgdx:master Dec 4, 2023
2 checks passed
@obigu obigu deleted the gdxsetup_gradle8 branch December 4, 2023 22:53
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.

None yet

5 participants