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: update to Micronaut 4 #331

Merged
merged 14 commits into from
Dec 20, 2022
Merged
Show file tree
Hide file tree
Changes from 12 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/central-sync.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ jobs:
uses: actions/setup-java@v3
with:
distribution: 'temurin'
java-version: '11'
java-version: '17'
- name: Publish to Sonatype OSSRH
env:
SONATYPE_USERNAME: ${{ secrets.SONATYPE_USERNAME }}
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/gradle.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
java: ['8', '11', '17']
java: ['17']
steps:
# https://github.com/actions/virtual-environments/issues/709
- name: Free disk space
Expand Down Expand Up @@ -72,7 +72,7 @@ jobs:
name: binary-compatibility-reports
path: "**/build/reports/binary-compatibility-*.html"
- name: Publish to Sonatype Snapshots
if: success() && github.event_name == 'push' && matrix.java == '11'
if: success() && github.event_name == 'push' && matrix.java == '17'
env:
SONATYPE_USERNAME: ${{ secrets.SONATYPE_USERNAME }}
SONATYPE_PASSWORD: ${{ secrets.SONATYPE_PASSWORD }}
Expand All @@ -88,7 +88,7 @@ jobs:
if_true: "micronaut-projects/micronaut-docs"
if_false: ${{ github.repository }}
- name: Publish to Github Pages
if: success() && github.event_name == 'push' && matrix.java == '11'
if: success() && github.event_name == 'push' && matrix.java == '17'
uses: micronaut-projects/github-pages-deploy-action@master
env:
TARGET_REPOSITORY: ${{ steps.docs_target.outputs.value }}
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/publish-snapshot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ jobs:
uses: actions/setup-java@v3
with:
distribution: 'temurin'
java-version: '11'
java-version: '17'
- name: Publish to Sonatype Snapshots
if: success()
env:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ jobs:
uses: actions/setup-java@v3
with:
distribution: 'temurin'
java-version: '11'
java-version: '17'
- name: Set the current release version
id: release_version
run: echo ::set-output name=release_version::${GITHUB_REF:11}
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/sonarqube.yml
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ jobs:
uses: actions/setup-java@v3
with:
distribution: 'temurin'
java-version: 11
java-version: 17
- name: Optional setup step
env:
GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_ACCESS_KEY }}
Expand Down
6 changes: 5 additions & 1 deletion build.gradle
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
plugins {
id "io.micronaut.build.internal.docs"
id "io.micronaut.build.internal.dependency-updates"
id "io.micronaut.build.internal.quality-reporting"
}

repositories {
mavenCentral()
maven { url "https://s01.oss.sonatype.org/content/repositories/snapshots/" }
}
3 changes: 3 additions & 0 deletions buildSrc/build.gradle
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
plugins {
id 'groovy-gradle-plugin'
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
plugins {
id "io.micronaut.build.internal.module"
}

repositories {
mavenCentral()
maven { url "https://s01.oss.sonatype.org/content/repositories/snapshots/" }
}
177 changes: 177 additions & 0 deletions config/accepted-api-changes.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,177 @@
[
{
"type": "io.micronaut.configuration.lettuce.RedisSetting",
"member": "Field REDIS_EMBEDDED",
"reason": "Removed deprecated field for Micronaut 4.0.x"
},
{
"type": "io.micronaut.configuration.lettuce.test.$EmbeddedRedisServer$Configuration$Definition$Reference",
"member": "Field $ANNOTATION_METADATA",
"reason": "Removed deprecated field for Micronaut 4.0.x"
},
{
"type": "io.micronaut.configuration.lettuce.test.$EmbeddedRedisServer$Configuration$Definition$Reference",
"member": "Constructor io.micronaut.configuration.lettuce.test.$EmbeddedRedisServer$Configuration$Definition$Reference()",
"reason": "Removed deprecated class for Micronaut 4.0.x"
},
{
"type": "io.micronaut.configuration.lettuce.test.$EmbeddedRedisServer$Definition$Reference",
"member": "Field $ANNOTATION_METADATA",
"reason": "Removed deprecated class for Micronaut 4.0.x"
},
{
"type": "io.micronaut.configuration.lettuce.test.$EmbeddedRedisServer$Definition$Reference",
"member": "Constructor io.micronaut.configuration.lettuce.test.$EmbeddedRedisServer$Definition$Reference()",
"reason": "Removed deprecated class for Micronaut 4.0.x"
},
{
"type": "io.micronaut.configuration.lettuce.test.EmbeddedRedisServer",
"member": "Constructor io.micronaut.configuration.lettuce.test.EmbeddedRedisServer(io.micronaut.configuration.lettuce.test.EmbeddedRedisServer$Configuration)",
"reason": "Removed deprecated class for Micronaut 4.0.x"
},
{
"type": "io.micronaut.configuration.lettuce.test.EmbeddedRedisServer$Configuration",
"member": "Constructor io.micronaut.configuration.lettuce.test.EmbeddedRedisServer$Configuration()",
"reason": "Removed deprecated class for Micronaut 4.0.x"
},
{
"type": "io.micronaut.configuration.lettuce.cache.AsyncCacheCommands",
"member": "Implemented interface io.lettuce.core.dynamic.Commands",
"reason": "Lettuce change in major update"
},
{
"type": "io.micronaut.configuration.lettuce.cache.SyncCacheCommands",
"member": "Implemented interface io.lettuce.core.dynamic.Commands",
"reason": "Lettuce change in major update"
},
{
"type": "io.micronaut.configuration.lettuce.session.RedisSessionCommands",
"member": "Implemented interface io.lettuce.core.dynamic.Commands",
"reason": "Lettuce change in major update"
},
{
"type": "io.micronaut.configuration.lettuce.test.$EmbeddedRedisServer$Configuration$Definition$Reference",
"member": "Implemented interface io.micronaut.core.annotation.AnnotationSource",
"reason": "Deprecated embedded server was removed"
},
{
"type": "io.micronaut.configuration.lettuce.test.$EmbeddedRedisServer$Configuration$Definition$Reference",
"member": "Implemented interface io.micronaut.inject.BeanContextConditional",
"reason": "Deprecated embedded server was removed"
},
{
"type": "io.micronaut.configuration.lettuce.test.$EmbeddedRedisServer$Configuration$Definition$Reference",
"member": "Implemented interface io.micronaut.core.annotation.AnnotationMetadataProvider",
"reason": "Deprecated embedded server was removed"
},
{
"type": "io.micronaut.configuration.lettuce.test.$EmbeddedRedisServer$Configuration$Definition$Reference",
"member": "Implemented interface io.micronaut.inject.BeanType",
"reason": "Deprecated embedded server was removed"
},
{
"type": "io.micronaut.configuration.lettuce.test.$EmbeddedRedisServer$Configuration$Definition$Reference",
"member": "Implemented interface io.micronaut.inject.BeanDefinitionReference",
"reason": "Deprecated embedded server was removed"
},
{
"type": "io.micronaut.configuration.lettuce.test.$EmbeddedRedisServer$Definition$Reference",
"member": "Implemented interface io.micronaut.core.annotation.AnnotationSource",
"reason": "Deprecated embedded server was removed"
},
{
"type": "io.micronaut.configuration.lettuce.test.$EmbeddedRedisServer$Definition$Reference",
"member": "Implemented interface io.micronaut.inject.BeanContextConditional",
"reason": "Deprecated embedded server was removed"
},
{
"type": "io.micronaut.configuration.lettuce.test.$EmbeddedRedisServer$Definition$Reference",
"member": "Implemented interface io.micronaut.core.annotation.AnnotationMetadataProvider",
"reason": "Deprecated embedded server was removed"
},
{
"type": "io.micronaut.configuration.lettuce.test.$EmbeddedRedisServer$Definition$Reference",
"member": "Implemented interface io.micronaut.inject.BeanType",
"reason": "Deprecated embedded server was removed"
},
{
"type": "io.micronaut.configuration.lettuce.test.$EmbeddedRedisServer$Definition$Reference",
"member": "Implemented interface io.micronaut.inject.BeanDefinitionReference",
"reason": "Deprecated embedded server was removed"
},
{
"type": "io.micronaut.configuration.lettuce.test.EmbeddedRedisServer",
"member": "Implemented interface java.util.EventListener",
"reason": "Deprecated embedded server was removed"
},
{
"type": "io.micronaut.configuration.lettuce.test.EmbeddedRedisServer",
"member": "Implemented interface java.io.Closeable",
"reason": "Deprecated embedded server was removed"
},
{
"type": "io.micronaut.configuration.lettuce.test.EmbeddedRedisServer",
"member": "Implemented interface io.micronaut.context.event.BeanCreatedEventListener",
"reason": "Deprecated embedded server was removed"
},
{
"type": "io.micronaut.configuration.lettuce.test.EmbeddedRedisServer",
"member": "Implemented interface java.lang.AutoCloseable",
"reason": "Deprecated embedded server was removed"
},
{
"type": "io.micronaut.configuration.lettuce.test.$EmbeddedRedisServer$Configuration$Definition$Reference",
"member": "Implemented interface io.micronaut.core.beans.BeanInfo",
"reason": "BeanDefinition changes in Micronaut 4.0.0"
},
{
"type": "io.micronaut.configuration.lettuce.test.$EmbeddedRedisServer$Configuration$Definition$Reference",
"member": "Implemented interface io.micronaut.core.annotation.AnnotationMetadataDelegate",
"reason": "BeanDefinition changes in Micronaut 4.0.0"
},
{
"type": "io.micronaut.configuration.lettuce.test.$EmbeddedRedisServer$Configuration$Definition$Reference",
"member": "Implemented interface io.micronaut.core.annotation.AnnotationMetadata",
"reason": "BeanDefinition changes in Micronaut 4.0.0"
},
{
"type": "io.micronaut.configuration.lettuce.test.$EmbeddedRedisServer$Configuration$Definition$Reference",
"member": "Implemented interface io.micronaut.inject.QualifiedBeanType",
"reason": "BeanDefinition changes in Micronaut 4.0.0"
},
{
"type": "io.micronaut.configuration.lettuce.test.$EmbeddedRedisServer$Configuration$Definition$Reference",
"member": "Implemented interface io.micronaut.core.type.ArgumentCoercible",
"reason": "BeanDefinition changes in Micronaut 4.0.0"
},
{
"type": "io.micronaut.configuration.lettuce.test.$EmbeddedRedisServer$Definition$Reference",
"member": "Implemented interface io.micronaut.core.beans.BeanInfo",
"reason": "BeanDefinition changes in Micronaut 4.0.0"
},
{
"type": "io.micronaut.configuration.lettuce.test.$EmbeddedRedisServer$Definition$Reference",
"member": "Implemented interface io.micronaut.core.annotation.AnnotationMetadataDelegate",
"reason": "BeanDefinition changes in Micronaut 4.0.0"
},
{
"type": "io.micronaut.configuration.lettuce.test.$EmbeddedRedisServer$Definition$Reference",
"member": "Implemented interface io.micronaut.core.annotation.AnnotationMetadata",
"reason": "BeanDefinition changes in Micronaut 4.0.0"
},
{
"type": "io.micronaut.configuration.lettuce.test.$EmbeddedRedisServer$Definition$Reference",
"member": "Implemented interface io.micronaut.inject.QualifiedBeanType",
"reason": "BeanDefinition changes in Micronaut 4.0.0"
},
{
"type": "io.micronaut.configuration.lettuce.test.$EmbeddedRedisServer$Definition$Reference",
"member": "Implemented interface io.micronaut.core.type.ArgumentCoercible",
"reason": "BeanDefinition changes in Micronaut 4.0.0"
},
{
"type": "io.micronaut.configuration.lettuce.session.RedisSessionStore",
"member": "Constructor io.micronaut.configuration.lettuce.session.RedisSessionStore(io.micronaut.session.SessionIdGenerator,io.micronaut.configuration.lettuce.session.RedisHttpSessionConfiguration,io.micronaut.context.BeanLocator,io.micronaut.core.serialize.ObjectSerializer,java.util.concurrent.ExecutorService,io.micronaut.context.event.ApplicationEventPublisher)",
"reason": "We require the Conversion Service for Micronaut 4.0.0"
}
]
6 changes: 4 additions & 2 deletions config/checkstyle/checkstyle.xml
Original file line number Diff line number Diff line change
Expand Up @@ -96,11 +96,13 @@
<!-- Checks for Javadoc comments. -->
<!-- See https://checkstyle.org/config_javadoc.html -->
<module name="JavadocMethod">
<property name="excludeScope" value="private"/>
<property name="accessModifiers" value="public, protected"/>
</module>
<module name="JavadocType"/>
<module name="JavadocStyle"/>
<module name="MissingJavadocType"/>
<module name="MissingJavadocType">
<property name="severity" value="warning"/>
</module>

<!-- Checks for Naming Conventions. -->
<!-- See https://checkstyle.org/config_naming.html -->
Expand Down
8 changes: 4 additions & 4 deletions gradle.properties
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,11 @@ projectVersion=6.0.0-SNAPSHOT
projectGroup=io.micronaut.redis

micronautDocsVersion=2.0.0
micronautVersion=3.7.4
micronautTestVersion=3.7.1
micronautVersion=4.0.0-SNAPSHOT
timyates marked this conversation as resolved.
Show resolved Hide resolved
micronautTestVersion=4.0.0-SNAPSHOT

groovyVersion=3.0.13
spockVersion=2.2-groovy-3.0
groovyVersion=4.0.6
spockVersion=2.3-groovy-4.0

title=Micronaut Redis
projectDesc=Integration between Micronaut and Redis
Expand Down
23 changes: 12 additions & 11 deletions gradle/libs.versions.toml
Original file line number Diff line number Diff line change
@@ -1,25 +1,26 @@
[versions]
managed-lettuce = "6.2.1.RELEASE"

micronaut-cache = "4.0.0-SNAPSHOT"
micronaut-micrometer = "5.0.0-SNAPSHOT"
micronaut-serde = "2.0.0-SNAPSHOT"
micronaut-session = "1.0.0-SNAPSHOT"

redis-embedded = "0.6"

testcontainers = "1.17.5"

[libraries]
managed-lettuce = { module = "io.lettuce:lettuce-core", version.ref = "managed-lettuce" }

micronaut-cache = { module = 'io.micronaut.cache:micronaut-cache-core'}
micronaut-function-web = { module = 'io.micronaut:micronaut-function-web' }
micronaut-graal = { module = 'io.micronaut:micronaut-graal' }
micronaut-http-client = { module = 'io.micronaut:micronaut-http-client' }
micronaut-http-server-netty = { module = 'io.micronaut:micronaut-http-server-netty' }
micronaut-inject-groovy = { module = 'io.micronaut:micronaut-inject-groovy' }
micronaut-inject-java = { module = 'io.micronaut:micronaut-inject-java' }
micronaut-management = { module = 'io.micronaut:micronaut-management' }
micronaut-micrometer = { module = 'io.micronaut.micrometer:micronaut-micrometer-core'}
micronaut-session = { module = 'io.micronaut:micronaut-session' }
micronaut-cache = { module = "io.micronaut.cache:micronaut-cache-bom", version.ref = "micronaut-cache" }
micronaut-micrometer = { module = "io.micronaut.micrometer:micronaut-micrometer-bom", version.ref = "micronaut-micrometer" }
micronaut-serde = { module = "io.micronaut.serde:micronaut-serde-bom", version.ref = "micronaut-serde" }
micronaut-session = { module = "io.micronaut.session:micronaut-session-bom", version.ref = "micronaut-session" }

projectreactor = { module = 'io.projectreactor:reactor-core' }
timyates marked this conversation as resolved.
Show resolved Hide resolved

redis-embedded = { module = "com.github.kstyrc:embedded-redis", version.ref = "redis-embedded" }

testcontainers-bom = { module = "org.testcontainers:testcontainers-bom" }
testcontainers-bom = { module = "org.testcontainers:testcontainers-bom", version.ref = "testcontainers" }
testcontainers-spock = { module = "org.testcontainers:spock" }
34 changes: 18 additions & 16 deletions redis-lettuce/build.gradle
Original file line number Diff line number Diff line change
@@ -1,34 +1,36 @@
plugins {
id "io.micronaut.build.internal.module"
id("io.micronaut.build.internal.redis-module")
}

dependencies {
annotationProcessor libs.micronaut.graal
annotationProcessor mn.micronaut.graal

api libs.managed.lettuce
api libs.micronaut.cache
api mnCache.micronaut.cache.core

compileOnly libs.micronaut.session
compileOnly libs.micronaut.management
compileOnly libs.micronaut.micrometer
compileOnly mnSession.micronaut.session
compileOnly mn.micronaut.management
compileOnly mnMicrometer.micronaut.micrometer.core
compileOnly libs.redis.embedded

testAnnotationProcessor libs.micronaut.inject.java
testAnnotationProcessor mn.micronaut.inject.java

testImplementation platform(libs.testcontainers.bom)
testImplementation libs.testcontainers.spock

testImplementation libs.projectreactor
timyates marked this conversation as resolved.
Show resolved Hide resolved

testImplementation libs.micronaut.cache
testImplementation libs.micronaut.inject.java
testImplementation libs.micronaut.management
testImplementation libs.micronaut.micrometer
testImplementation libs.micronaut.inject.groovy
testImplementation libs.micronaut.function.web
testImplementation mn.micronaut.inject.java
testImplementation mn.micronaut.management
testImplementation mnMicrometer.micronaut.micrometer.core
testImplementation mnSerde.micronaut.serde.jackson
testImplementation mn.micronaut.jackson.databind
testImplementation mn.micronaut.function.web

testImplementation libs.micronaut.session
testRuntimeOnly libs.micronaut.http.server.netty
testImplementation libs.micronaut.http.client
testImplementation mnSession.micronaut.session
testRuntimeOnly mn.micronaut.http.server.netty
testImplementation mn.micronaut.http.client
testImplementation libs.redis.embedded
testRuntimeOnly(mn.logback.classic)
testImplementation mn.snakeyaml
}
Loading