Skip to content

Commit

Permalink
fix(deps): Update to Grails 7, Gradle 8.10.2 and grails-core dependen…
Browse files Browse the repository at this point in the history
…cy versions (#386)

* Update to Grails 7, Gradle 8.10.2 and grails-core dependency versions

* set version on io.micronaut:micronaut-inject-groovy since it is no longer set by grails-bom

Mostly removing micronaut dependencies from generated `build.gradle`

* fix: Specify version for `micronaut-http-client` and update dependency handling

- Explicitly set the version for `micronaut-http-client`, previously managed by `grails-bom` in Grails 6.

- Remove default inclusion of `micronaut-http-client` as a test dependency when the `micronaut-http-client` feature is not selected.

* remove micronaut-inject-groovy feature and test

* add micronaut-serde-jackson dependency for micronaut-http-client

---------

Co-authored-by: Mattias Reichel <[email protected]>
  • Loading branch information
jamesfredley and matrei authored Oct 10, 2024
1 parent 82f5cc0 commit ed9e747
Show file tree
Hide file tree
Showing 17 changed files with 56 additions and 115 deletions.
2 changes: 1 addition & 1 deletion gradle.properties
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ micronautDocsVersion=2.0.0
micronautVersion=3.10.4
rockerVersion=1.4.0
groovyVersion=3.0.22
grailsVersion=6.2.2-SNAPSHOT
grailsVersion=7.0.0-SNAPSHOT
spockVersion=2.0-groovy-3.0
title=Grails Application Forge
projectDesc=Generates Grails applications
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -68,8 +68,7 @@ class CommandSpec extends Specification {
private Process executeCommand(StringBuilder builder) {
String[] args = builder.toString().split(" ")
ProcessBuilder pb = new ProcessBuilder(args)
Map<String, String> env = pb.environment()
env["JAVA_HOME"] = System.getenv("JAVA_HOME")
pb.environment().put("JAVA_HOME", System.getenv("JAVA_HOME") ?: System.getProperty("java.home"))
process = pb.directory(dir).start()
process.consumeProcessOutputStream(output)
process
Expand Down
2 changes: 1 addition & 1 deletion grails-forge-analytics-postgres/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ dependencies {
implementation 'com.google.cloud.sql:postgres-socket-factory:1.17.1'
implementation "io.micronaut.sql:micronaut-jdbc-hikari"
implementation 'io.micronaut.flyway:micronaut-flyway'
testCompileOnly "io.micronaut:micronaut-inject-groovy"
testCompileOnly "io.micronaut:micronaut-inject-groovy:$micronautVersion"
testImplementation "io.micronaut:micronaut-http-client"
testImplementation "org.testcontainers:postgresql"
testImplementation "ch.qos.logback:logback-classic:1.5.6"
Expand Down
2 changes: 1 addition & 1 deletion grails-forge-api/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ dependencies {
api group: 'javax.inject', name: 'javax.inject', version: '1'
implementation "io.projectreactor:reactor-core"

testCompileOnly "io.micronaut:micronaut-inject-groovy"
testCompileOnly "io.micronaut:micronaut-inject-groovy:$micronautVersion"
testImplementation "io.micronaut:micronaut-http-server-netty"
testImplementation "io.micronaut:micronaut-http-client"
testImplementation "io.micronaut.test:micronaut-test-spock"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,9 +21,6 @@ dependencies {
@dependency.template("org.hamcrest","hamcrest", "testImplementation", null, false)
}

@if (!features.contains("micronaut-http-client")) {
@dependency.template("io.micronaut", "micronaut-http-client", "testImplementation", null, false)
}
@if (features.contains("neo4j-bolt")) {
@dependency.template("org.neo4j.test", "neo4j-harness", "testRuntimeOnly", null, false)
}
Expand Down

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,14 @@ public String getDocumentation() {
public void apply(GeneratorContext generatorContext) {
generatorContext.addDependency(Dependency.builder()
.groupId("io.micronaut")
.artifactId("micronaut-http-client")
.lookupArtifactId("micronaut-http-client")
.compile());


// micronaut-http-client no longer provides the jackson implementation
generatorContext.addDependency(Dependency.builder()
.groupId("io.micronaut.serde")
.lookupArtifactId("micronaut-serde-jackson")
.compile());
}
}
28 changes: 19 additions & 9 deletions grails-forge-core/src/main/resources/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -20,12 +20,12 @@
<dependency>
<groupId>org.grails</groupId>
<artifactId>grails-gradle-plugin</artifactId>
<version>6.2.1</version>
<version>7.0.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.grails.plugins</groupId>
<artifactId>hibernate5</artifactId>
<version>8.1.0</version>
<version>9.0.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.grails.plugins</groupId>
Expand All @@ -40,7 +40,7 @@
<dependency>
<groupId>org.grails.plugins</groupId>
<artifactId>database-migration</artifactId>
<version>4.2.1</version>
<version>6.0.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.grails.plugins</groupId>
Expand All @@ -50,12 +50,12 @@
<dependency>
<groupId>org.asciidoctor.jvm.convert</groupId>
<artifactId>asciidoctor-gradle-jvm</artifactId>
<version>4.0.0-alpha.1</version>
<version>4.0.1</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-validator</artifactId>
<version>6.2.5.Final</version>
<version>7.0.5.Final</version>
</dependency>
<dependency>
<groupId>org.mongodb</groupId>
Expand All @@ -65,7 +65,7 @@
<dependency>
<groupId>org.grails.plugins</groupId>
<artifactId>views-gradle</artifactId>
<version>3.2.3</version>
<version>4.0.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.grails.plugins</groupId>
Expand Down Expand Up @@ -125,17 +125,27 @@
<dependency>
<groupId>com.bertramlabs.plugins</groupId>
<artifactId>asset-pipeline-grails</artifactId>
<version>4.3.0</version>
<version>5.0.1</version>
</dependency>
<dependency>
<groupId>com.bertramlabs.plugins</groupId>
<artifactId>asset-pipeline-gradle</artifactId>
<version>4.3.0</version>
<version>5.0.1</version>
</dependency>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter</artifactId>
<version>5.10.3</version>
<version>5.11.1</version>
</dependency>
<dependency>
<groupId>io.micronaut</groupId>
<artifactId>micronaut-http-client</artifactId>
<version>4.6.6</version>
</dependency>
<dependency>
<groupId>io.micronaut.serde</groupId>
<artifactId>micronaut-serde-jackson</artifactId>
<version>2.11.0</version>
</dependency>
</dependencies>
</project>
Original file line number Diff line number Diff line change
Expand Up @@ -43,9 +43,9 @@ class GradleSpec extends ApplicationContextSpec implements CommandOutputFixture
settingsGradle.contains("mavenLocal()")
settingsGradle.contains("maven { url \"https://repo.grails.org/grails/core/\" }")
settingsGradle.contains("gradlePluginPortal()")
settingsGradle.contains("id \"org.grails.grails-web\" version \"6.2.1\"")
settingsGradle.contains("id \"org.grails.grails-gsp\" version \"6.2.1\"")
settingsGradle.contains("id \"com.bertramlabs.asset-pipeline\" version \"4.3.0\"")
settingsGradle.contains("id \"org.grails.grails-web\" version \"7.0.0-SNAPSHOT\"")
settingsGradle.contains("id \"org.grails.grails-gsp\" version \"7.0.0-SNAPSHOT\"")
settingsGradle.contains("id \"com.bertramlabs.asset-pipeline\" version \"5.0.1\"")
}

void "test settings.gradle for REST-API"() {
Expand All @@ -59,10 +59,10 @@ class GradleSpec extends ApplicationContextSpec implements CommandOutputFixture
settingsGradle.contains("mavenLocal()")
settingsGradle.contains("maven { url \"https://repo.grails.org/grails/core/\" }")
settingsGradle.contains("gradlePluginPortal()")
settingsGradle.contains("id \"org.grails.grails-web\" version \"6.2.1\"")
settingsGradle.contains("id \"org.grails.plugins.views-json\" version \"3.2.3\"")
!settingsGradle.contains("id \"org.grails.grails-gsp\" version \"6.2.1\"")
!settingsGradle.contains("id \"com.bertramlabs.asset-pipeline\" version \"4.3.0\"")
settingsGradle.contains("id \"org.grails.grails-web\" version \"7.0.0-SNAPSHOT\"")
settingsGradle.contains("id \"org.grails.plugins.views-json\" version \"4.0.0-SNAPSHOT\"")
!settingsGradle.contains("id \"org.grails.grails-gsp\" version \"7.0.0-SNAPSHOT\"")
!settingsGradle.contains("id \"com.bertramlabs.asset-pipeline\" version \"5.0.1\"")
}

void "test settings.gradle for REST-API for markup-views"() {
Expand All @@ -76,10 +76,10 @@ class GradleSpec extends ApplicationContextSpec implements CommandOutputFixture
settingsGradle.contains("mavenLocal()")
settingsGradle.contains("maven { url \"https://repo.grails.org/grails/core/\" }")
settingsGradle.contains("gradlePluginPortal()")
settingsGradle.contains("id \"org.grails.grails-web\" version \"6.2.1\"")
settingsGradle.contains("id \"org.grails.plugins.views-markup\" version \"3.2.3\"")
!settingsGradle.contains("id \"org.grails.plugins.views-json\" version \"3.2.3\"")
!settingsGradle.contains("id \"org.grails.grails-gsp\" version \"6.2.1\"")
!settingsGradle.contains("id \"com.bertramlabs.asset-pipeline\" version \"4.3.0\"")
settingsGradle.contains("id \"org.grails.grails-web\" version \"7.0.0-SNAPSHOT\"")
settingsGradle.contains("id \"org.grails.plugins.views-markup\" version \"4.0.0-SNAPSHOT\"")
!settingsGradle.contains("id \"org.grails.plugins.views-json\" version \"4.0.0-SNAPSHOT\"")
!settingsGradle.contains("id \"org.grails.grails-gsp\" version \"7.0.0-SNAPSHOT\"")
!settingsGradle.contains("id \"com.bertramlabs.asset-pipeline\" version \"5.0.1\"")
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ class AsciidoctorSpec extends ApplicationContextSpec implements CommandOutputFix
final def settingGradle = output["settings.gradle"]

expect:
settingGradle.contains("id \"org.asciidoctor.jvm.convert\" version \"4.0.0-alpha.1\"")
settingGradle.contains("id \"org.asciidoctor.jvm.convert\" version \"4.0.1\"")
buildGradle.contains("apply from: \"gradle/asciidoc.gradle\"")
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ class AssetPipelineSpec extends ApplicationContextSpec implements CommandOutputF

expect:
buildSrcBuildGradle != null
buildSrcBuildGradle.contains("implementation(\"com.bertramlabs.plugins:asset-pipeline-gradle:4.3.0\")")
buildSrcBuildGradle.contains("implementation(\"com.bertramlabs.plugins:asset-pipeline-gradle:5.0.1\")")

}

Expand All @@ -40,7 +40,7 @@ class AssetPipelineSpec extends ApplicationContextSpec implements CommandOutputF

then:
template.contains("id \"com.bertramlabs.asset-pipeline\"")
template.contains("runtimeOnly(\"com.bertramlabs.plugins:asset-pipeline-grails:4.3.0\")")
template.contains("runtimeOnly(\"com.bertramlabs.plugins:asset-pipeline-grails:5.0.1\")")
template.contains('''
assets {
minifyJs = true
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ class HibernateGormSpec extends ApplicationContextSpec implements CommandOutputF
.renderBuildSrc()

then:
template.contains('implementation("org.grails.plugins:hibernate5:8.1.0")')
template.contains('implementation("org.grails.plugins:hibernate5:9.0.0-SNAPSHOT")')
}

void "test buildSrc is present for buildscript dependencies"() {
Expand All @@ -50,7 +50,7 @@ class HibernateGormSpec extends ApplicationContextSpec implements CommandOutputF

expect:
buildSrcBuildGradle != null
buildSrcBuildGradle.contains("implementation(\"org.grails.plugins:hibernate5:8.1.0\")")
buildSrcBuildGradle.contains("implementation(\"org.grails.plugins:hibernate5:9.0.0-SNAPSHOT\")")

}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,8 @@ class GrailsGradlePluginSpec extends BeanContextSpec implements CommandOutputFix
final String gradleProps = output["gradle.properties"]

then:
gradleProps.contains("grailsGradlePluginVersion=6.2.1")
gradleProps.contains("grailsVersion=6.2.2-SNAPSHOT")
gradleProps.contains("grailsGradlePluginVersion=7.0.0-SNAPSHOT")
gradleProps.contains("grailsVersion=7.0.0-SNAPSHOT")
}

void "test dependencies are present for buildSrc"() {
Expand All @@ -26,7 +26,7 @@ class GrailsGradlePluginSpec extends BeanContextSpec implements CommandOutputFix
.renderBuildSrc()

then:
template.contains('implementation("org.grails:grails-gradle-plugin:6.2.1")')
template.contains('implementation("org.grails:grails-gradle-plugin:7.0.0-SNAPSHOT")')
}

void "test buildSrc is present for buildscript dependencies"() {
Expand All @@ -36,7 +36,7 @@ class GrailsGradlePluginSpec extends BeanContextSpec implements CommandOutputFix

expect:
buildSrcBuildGradle != null
buildSrcBuildGradle.contains("implementation(\"org.grails:grails-gradle-plugin:6.2.1\")")
buildSrcBuildGradle.contains("implementation(\"org.grails:grails-gradle-plugin:7.0.0-SNAPSHOT\")")

}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ class MicronautHttpClientSpec extends BeanContextSpec {
.render()

then:
template.contains("implementation(\"io.micronaut:micronaut-http-client\")")
template.contains("implementation(\"io.micronaut:micronaut-http-client:4.6.6\")")
template.contains("implementation(\"io.micronaut.serde:micronaut-serde-jackson:2.11.0\")")
}
}

This file was deleted.

2 changes: 1 addition & 1 deletion grails-forge-web-netty/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ dependencies {
implementation(project(":grails-forge-api"))
implementation("io.micronaut.gcp:micronaut-gcp-http-client")
runtimeOnly("ch.qos.logback:logback-classic")
testCompileOnly("io.micronaut:micronaut-inject-groovy")
testCompileOnly("io.micronaut:micronaut-inject-groovy:$micronautVersion")
testImplementation("io.micronaut.test:micronaut-test-spock")
testImplementation("io.micronaut:micronaut-http-client")
}
Expand Down
1 change: 1 addition & 0 deletions test-core/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@ dependencies {
testImplementation project(":grails-cli")
testImplementation "ch.qos.logback:logback-classic:1.5.6"
testImplementation "io.micronaut.picocli:micronaut-picocli"
implementation "io.micronaut:micronaut-inject-groovy:$micronautVersion"
generateConfig "info.picocli:picocli-codegen:${picocliVersion}"
}

Expand Down

0 comments on commit ed9e747

Please sign in to comment.