diff --git a/.editorconfig b/.editorconfig index a9a165ba..6ef5d690 100644 --- a/.editorconfig +++ b/.editorconfig @@ -12,6 +12,9 @@ end_of_line = lf [{*.bat,*.cmd}] end_of_line = crlf +[{*.mustache,*.ftl}] +insert_final_newline = false + [*.java] indent_size = 4 tab_width = 4 diff --git a/.github/workflows/central-sync.yml b/.github/workflows/central-sync.yml index 713f8789..06e7e597 100644 --- a/.github/workflows/central-sync.yml +++ b/.github/workflows/central-sync.yml @@ -20,7 +20,7 @@ jobs: ref: v${{ github.event.inputs.release_version }} - uses: gradle/wrapper-validation-action@v1 - name: Set up JDK - uses: actions/setup-java@v3 + uses: actions/setup-java@v4 with: distribution: 'temurin' java-version: '17' diff --git a/.github/workflows/graalvm-latest.yml b/.github/workflows/graalvm-latest.yml index bfbfff34..d150aa60 100644 --- a/.github/workflows/graalvm-latest.yml +++ b/.github/workflows/graalvm-latest.yml @@ -34,7 +34,9 @@ jobs: runs-on: ubuntu-latest strategy: max-parallel: 6 - matrix: ${{ fromJson(needs.build_matrix.outputs.matrix) }} + matrix: + java: ['17', '21'] + native_test_task: ${{ fromJson(needs.build_matrix.outputs.matrix).native_test_task }} env: GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_ACCESS_KEY }} GRADLE_ENTERPRISE_CACHE_USERNAME: ${{ secrets.GRADLE_ENTERPRISE_CACHE_USERNAME }} @@ -46,7 +48,7 @@ jobs: id: pre-build with: distribution: 'graalvm' - java: '17' + java: ${{ matrix.java }} - name: Build Steps uses: micronaut-projects/github-actions/graalvm/build@master id: build @@ -60,4 +62,4 @@ jobs: uses: micronaut-projects/github-actions/graalvm/post-build@master id: post-build with: - java: '17' + java: ${{ matrix.java }} diff --git a/.github/workflows/gradle.yml b/.github/workflows/gradle.yml index ecdf2152..ffed34dc 100644 --- a/.github/workflows/gradle.yml +++ b/.github/workflows/gradle.yml @@ -19,7 +19,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - java: ['17'] + java: ['17', '21'] env: GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_ACCESS_KEY }} GRADLE_ENTERPRISE_CACHE_USERNAME: ${{ secrets.GRADLE_ENTERPRISE_CACHE_USERNAME }} @@ -64,7 +64,7 @@ jobs: ./gradlew check --no-daemon --continue - name: "🔎 Run static analysis" - if: env.SONAR_TOKEN != '' + if: env.SONAR_TOKEN != '' && matrix.java == '17' run: | ./gradlew sonar diff --git a/.github/workflows/publish-snapshot.yml b/.github/workflows/publish-snapshot.yml index cbf48711..0dff1bc1 100644 --- a/.github/workflows/publish-snapshot.yml +++ b/.github/workflows/publish-snapshot.yml @@ -18,7 +18,7 @@ jobs: restore-keys: | ${{ runner.os }}-gradle- - name: Set up JDK - uses: actions/setup-java@v3 + uses: actions/setup-java@v4 with: distribution: 'temurin' java-version: '17' diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 959258a5..bcb69667 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -19,7 +19,7 @@ jobs: token: ${{ secrets.GH_TOKEN }} - uses: gradle/wrapper-validation-action@v1 - name: Set up JDK - uses: actions/setup-java@v3 + uses: actions/setup-java@v4 with: distribution: 'temurin' java-version: '17' @@ -146,7 +146,7 @@ jobs: if: startsWith(github.ref, 'refs/tags/') steps: - name: Checkout repository - uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4.1.0 + uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 - name: Download artifacts uses: actions/download-artifact@9bc31d5ccc31df68ecc42ccf4149144866c47d8a # v3.0.2 with: diff --git a/.gitignore b/.gitignore index 96f6376b..f585fc1e 100644 --- a/.gitignore +++ b/.gitignore @@ -32,4 +32,4 @@ src/main/docs/resources/style/*.html src/main/docs/resources/img/micronaut-logo-white.svg # Ignore files generated by test-resources -**/.micronaut/test-resources/ \ No newline at end of file +**/.micronaut/test-resources/ diff --git a/MAINTAINING.md b/MAINTAINING.md index 90e3dff1..104efbae 100644 --- a/MAINTAINING.md +++ b/MAINTAINING.md @@ -102,14 +102,14 @@ The consequence of having both approaches in place is that we get multiple depen `micronaut-build` via our automation, and one or many (one per dependency) created by Renovate. When merging those, it is better to prefer the `micronaut-build` ones, if possible, for 2 reasons: a) they attempt to upgrade multiple dependencies in a single PR, which creates less noise in the Git history; b) Once you merge that, Renovate will react and automatically -close its own PRs if the dependecy is up-to-date. +close its own PRs if the dependency is up-to-date. When an upgrade to a new version arrives, we need to be careful when merging, so that we don't introduce an unnecessary upgrade burden on our users. Read the [Module Upgrade Strategy](https://github.com/micronaut-projects/micronaut-core/wiki/Module-Upgrade-Strategy) for more information. -Note that if a new version arrives and we are not ready yet to do the upgrade, you need to +Note that if a new version arrives, and we are not ready yet to do the upgrade, you need to [pin the old version](https://github.com/micronaut-projects/micronaut-build/#configuration-options), because otherwise, Renovate and our workflow will keep sending PRs. You should also create an issue to upgrade so that it's not forgotten. @@ -162,7 +162,7 @@ First of all, all the repos have an automatic changelog generation mechanism: wh release notes will contain pull requests merged and issues closed since the last release. When the module is ready for a new release, check the generated release notes, and make changes if needed (for example, -you can add an introduction paragraph highligting some items included in the release). If the version you are going to +you can add an introduction paragraph highlighting some items included in the release). If the version you are going to publish is not a new patch version, but a new minor or major, update the release notes text to reflect the new version. If you are publishing a milestone or release candidate, check the pre-release checkbox. diff --git a/SECURITY.md b/SECURITY.md index f9b56385..794aaf7a 100644 --- a/SECURITY.md +++ b/SECURITY.md @@ -4,7 +4,7 @@ We release patches for security vulnerabilities. Which versions are eligible receiving such patches depend on the CVSS v3.0 Rating: | CVSS v3.0 | Supported Versions | -| --------- | ----------------------------------------- | +|-----------|-------------------------------------------| | 9.0-10.0 | Releases within the previous three months | | 4.0-8.9 | Most recent release | diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index a9fd2358..8dd50ffd 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -3,25 +3,25 @@ conscrypt-openjdk = "2.5.2" groovy = "4.0.13" junit = '5.10.1' -kotlin = "1.9.20" +kotlin = "1.9.21" kotlin-coroutines = "1.7.3" kotest-runner = '5.8.0' -protobuf-java = '3.25.0' +protobuf-java = '3.25.1' spock = "2.3-groovy-4.0" -testcontainers = '1.19.1' +testcontainers = '1.19.3' -micronaut = '4.1.11' +micronaut = '4.2.2' micronaut-platform = '4.0.0-RC1' micronaut-docs = '2.0.0' -micronaut-gradle-plugin = '4.1.2' +micronaut-gradle-plugin = '4.2.1' micronaut-grpc = "4.0.1" micronaut-multitenancy = "5.1.0" -micronaut-validation = "4.0.3" +micronaut-validation = "4.2.0" micronaut-reactor = "3.1.0" micronaut-serde = "2.2.6" micronaut-test = '4.0.0' -micronaut-logging = "1.1.2" +micronaut-logging = "1.2.0" managed-pulsar-client = '3.1.1' diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar index 7f93135c..d64cd491 100644 Binary files a/gradle/wrapper/gradle-wrapper.jar and b/gradle/wrapper/gradle-wrapper.jar differ diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 3fa8f862..1af9e093 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-8.4-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.5-bin.zip networkTimeout=10000 validateDistributionUrl=true zipStoreBase=GRADLE_USER_HOME diff --git a/settings.gradle b/settings.gradle index 6293d1a0..c824e64f 100644 --- a/settings.gradle +++ b/settings.gradle @@ -6,7 +6,7 @@ pluginManagement { } plugins { - id 'io.micronaut.build.shared.settings' version '6.6.0' + id 'io.micronaut.build.shared.settings' version '6.6.1' } enableFeaturePreview 'TYPESAFE_PROJECT_ACCESSORS'