-
Notifications
You must be signed in to change notification settings - Fork 122
Update gradle build to support new gradle features + use configuration cache #1611
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
Conversation
52ae292 to
93cd1d8
Compare
|
while we're at it anyway, can we ignore the scaffold projects from deployment too? e.g. for the wrapper, only the wrapper-api and wrapper-impl projects should be published, but not the "glue" wrapper module. |
|
Yes, I can change that! Still waiting on indra... Unless we create/publish a fork just for that 1 line... |
|
Correction: Apparantly indra v4 should already be configuration cache compatible. |
2e14dd1 to
fabe642
Compare
I lied btw don't know what I thought there when I was already using a modified 4.0.0-SNAPSHOT because the normal one didn't work 🤔 |
also a bunch of stuff left to do Seems to build at least so there's that
cc55672 to
5220dbe
Compare
# Conflicts: # build.gradle.kts # gradle/libs.versions.toml # modules/bridge/impl/build.gradle.kts # modules/smart/api/build.gradle.kts # plugins/luckperms/build.gradle.kts # wrapper-jvm/impl/build.gradle.kts
|
@DasBabyPixel thanks for working on this! 🙂 |
### Motivation The current build is not setup properly, leading to several issues, for example jar file contents (shadowed dependencies are being published in the jar), empty modules being published or the unabilitiy to upgrade to gradle 9 due to deprecated gradle features being used for a long time. ### Modification Rework and cleanup the entire gradle build, upgrade to gradle 9.1.0, activate configuration cache. Fixed task execution, build now actually builds everything (to be more precise: assemble builds everything, build is assemble + all tests/checks). ### Result Overall better build performance and no more deprecated features used. ##### Other context Resolves CloudNetService#1611 (based upon the linked pr, with more cleanups and fixed applied) --------- Co-authored-by: Lorenz Wrobel <[email protected]>
Motivation
I wanna be able to build this on my laptop without waiting for us to collide with the andromeda galaxy.
Also the build task did not properly build everything. You need to call
build shadowJaratm.Modification
withType<Jar>(). The overlaps were mainly caused by shadowJar and jar, which always makes them not up-to-date, slowing down the build.subprojectsandallprojects. The equivalent is now inbuild-extensionsusing the gradle lifecycle allprojects and then filtering for project paths.buildnow actually builds everything. To be more precise:assemblebuilds everything,buildisassemble+ all tests/checksexportCnlFileandexportLanguageFileInformationinto tasks.configureEacheverywhere to make task configuration lazyRemaining work
Result
Overall better build performance and no more deprecated features used.