Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package ongres-scram for openSUSE:Factory 
checked in at 2025-10-29 21:08:24
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ongres-scram (Old)
 and      /work/SRC/openSUSE:Factory/.ongres-scram.new.1980 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "ongres-scram"

Wed Oct 29 21:08:24 2025 rev:7 rq:1314329 version:MACRO

Changes:
--------
--- /work/SRC/openSUSE:Factory/ongres-scram/ongres-scram.changes        
2025-07-06 17:17:26.590621024 +0200
+++ /work/SRC/openSUSE:Factory/.ongres-scram.new.1980/ongres-scram.changes      
2025-10-29 21:09:51.938718650 +0100
@@ -0,0 +1,9 @@
+------------------------------------------------------------------
+Tue Oct 28 08:51:14 UTC 2025 - Thomas Florio <[email protected]>
+
+- Version 3.2
+  * Fix Timing Attack Vulnerability in SCRAM Authentication
+    (bsc#1250399, CVE-2025-59432)
+  * Updated dependencies and maven plugins
+  * Use central-publishing-maven-plugin to deploy to Maven Central.
+

Old:
----
  scram-3.1.tar.gz

New:
----
  _scmsync.obsinfo
  build.specials.obscpio
  scram-3.2.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ ongres-scram.spec ++++++
--- /var/tmp/diff_new_pack.AdVa4N/_old  2025-10-29 21:09:52.394737819 +0100
+++ /var/tmp/diff_new_pack.AdVa4N/_new  2025-10-29 21:09:52.398737988 +0100
@@ -17,12 +17,13 @@
 
 
 %global                upstream_name    scram
-%global                upstream_version 3.1
+%global                upstream_version 3.2
 Name:           ongres-%{upstream_name}
 Version:        %(echo %{upstream_version} | sed 's/-/~/g')
 Release:        0
 Summary:        Salted Challenge Response Authentication Mechanism - Java 
Implementation
 License:        BSD-2-Clause
+Group:          Development/Libraries/Java
 URL:            https://github.com/ongres/%{upstream_name}
 Source0:        
https://github.com/ongres/%{upstream_name}/archive/%{upstream_version}/%{upstream_name}-%{upstream_version}.tar.gz
 BuildRequires:  fdupes

++++++ _scmsync.obsinfo ++++++
mtime: 1761669868
commit: b7840c22f0d98f92a72b1ec9f396fbb7d0d1b532fa5dd0fbd6da033f1887b17d
url: https://src.opensuse.org/java-packages/ongres-scram.git
revision: b7840c22f0d98f92a72b1ec9f396fbb7d0d1b532fa5dd0fbd6da033f1887b17d
projectscmsync: https://src.opensuse.org/java-packages/_ObsPrj

++++++ build.specials.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/.gitignore new/.gitignore
--- old/.gitignore      1970-01-01 01:00:00.000000000 +0100
+++ new/.gitignore      2025-10-29 12:01:40.000000000 +0100
@@ -0,0 +1 @@
+.osc

++++++ scram-3.1.tar.gz -> scram-3.2.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/scram-3.1/.github/dependabot.yml 
new/scram-3.2/.github/dependabot.yml
--- old/scram-3.1/.github/dependabot.yml        2024-06-26 02:50:00.000000000 
+0200
+++ new/scram-3.2/.github/dependabot.yml        2025-09-16 21:53:03.000000000 
+0200
@@ -5,9 +5,17 @@
       - "/"
       - "/scram-client/src/it/jpms-scram-client"
     schedule:
-      interval: "weekly"
+      interval: "monthly"
+    groups:
+      all-maven-dependencies:
+        patterns:
+          - "*"
 
   - package-ecosystem: "github-actions"
     directory: "/"
     schedule:
-      interval: "weekly"
+      interval: "monthly"
+    groups:
+      all-github-actions:
+        patterns:
+          - "*"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/scram-3.1/.github/workflows/codeql.yml 
new/scram-3.2/.github/workflows/codeql.yml
--- old/scram-3.1/.github/workflows/codeql.yml  1970-01-01 01:00:00.000000000 
+0100
+++ new/scram-3.2/.github/workflows/codeql.yml  2025-09-16 21:53:03.000000000 
+0200
@@ -0,0 +1,71 @@
+name: "CodeQL Advanced"
+
+on:
+  push:
+    branches: [ "main" ]
+  pull_request:
+    branches: [ "main" ]
+  schedule:
+    - cron: '42 10 * * 1'
+
+permissions:  # added using https://github.com/step-security/secure-repo
+  contents: read
+
+jobs:
+  analyze:
+    name: Analyze (${{ matrix.language }})
+    # Runner size impacts CodeQL analysis time. To learn more, please see:
+    #   - https://gh.io/recommended-hardware-resources-for-running-codeql
+    #   - https://gh.io/supported-runners-and-hardware-resources
+    #   - https://gh.io/using-larger-runners (GitHub.com only)
+    # Consider using larger runners or machines with greater resources for 
possible analysis time improvements.
+    runs-on: 'ubuntu-latest'
+    permissions:
+      # required for all workflows
+      security-events: write
+
+      # required to fetch internal or private CodeQL packs
+      packages: read
+
+      # only required for workflows in private repositories
+      actions: read
+      contents: read
+
+    strategy:
+      fail-fast: false
+      matrix:
+        include:
+        - language: java-kotlin
+          build-mode: manual # This mode only analyzes Java. Set this to 
'autobuild' or 'manual' to analyze Kotlin too.
+    steps:
+    - name: Checkout repository
+      uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
+
+    # Initializes the CodeQL tools for scanning.
+    - name: Initialize CodeQL
+      uses: github/codeql-action/init@76621b61decf072c1cee8dd1ce2d2a82d33c17ed 
# v3.29.8
+      with:
+        languages: ${{ matrix.language }}
+        build-mode: ${{ matrix.build-mode }}
+        # If you wish to specify custom queries, you can do so here or in a 
config file.
+        # By default, queries listed here will override any specified in a 
config file.
+        # Prefix the list here with "+" to use these queries and those in the 
config file.
+
+        # For more details on CodeQL's query packs, refer to: 
https://docs.github.com/en/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning#using-queries-in-ql-packs
+        # queries: security-extended,security-and-quality
+
+    - if: matrix.build-mode == 'manual'
+      name: Set up JDK 21
+      uses: actions/setup-java@dded0888837ed1f317902acf8a20df0ad188d165 # 
v5.0.0
+      with:
+        java-version: '21'
+        distribution: 'temurin'
+        cache: maven
+    - if: matrix.build-mode == 'manual'
+      shell: bash
+      run: ./mvnw package -P release -DskipTests -Dmaven.javadoc.skip 
-Dgpg.skip
+
+    - name: Perform CodeQL Analysis
+      uses: 
github/codeql-action/analyze@76621b61decf072c1cee8dd1ce2d2a82d33c17ed # v3.29.8
+      with:
+        category: "/language:${{matrix.language}}"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/scram-3.1/.github/workflows/maven.yml 
new/scram-3.2/.github/workflows/maven.yml
--- old/scram-3.1/.github/workflows/maven.yml   2024-06-26 02:50:00.000000000 
+0200
+++ new/scram-3.2/.github/workflows/maven.yml   2025-09-16 21:53:03.000000000 
+0200
@@ -9,13 +9,16 @@
   pull_request:
     branches: ["main"]
 
+permissions:  # added using https://github.com/step-security/secure-repo
+  contents: read
+
 jobs:
   build:
     runs-on: ubuntu-latest
     steps:
-    - uses: actions/checkout@v4
+    - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
     - name: Set up JDK 21
-      uses: actions/setup-java@v4
+      uses: actions/setup-java@dded0888837ed1f317902acf8a20df0ad188d165 # 
v5.0.0
       with:
         java-version: '21'
         distribution: 'zulu'
@@ -29,6 +32,6 @@
     permissions:
       contents: write #required for POST snapshot API 
https://docs.github.com/en/rest/dependency-graph/dependency-submission#create-a-snapshot-of-dependencies-for-a-repository
     steps:
-      - uses: actions/checkout@v4
+      - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # 
v5.0.0
       - name: Update dependency graph
-        uses: 
advanced-security/maven-dependency-submission-action@5d0f9011b55d6268922128af45275986303459c3
+        uses: 
advanced-security/maven-dependency-submission-action@b275d12641ac2d2108b2cbb7598b154ad2f2cee8
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/scram-3.1/.github/workflows/scorecard.yml 
new/scram-3.2/.github/workflows/scorecard.yml
--- old/scram-3.1/.github/workflows/scorecard.yml       1970-01-01 
01:00:00.000000000 +0100
+++ new/scram-3.2/.github/workflows/scorecard.yml       2025-09-16 
21:53:03.000000000 +0200
@@ -0,0 +1,78 @@
+# This workflow uses actions that are not certified by GitHub. They are 
provided
+# by a third-party and are governed by separate terms of service, privacy
+# policy, and support documentation.
+
+name: Scorecard supply-chain security
+on:
+  # For Branch-Protection check. Only the default branch is supported. See
+  # 
https://github.com/ossf/scorecard/blob/main/docs/checks.md#branch-protection
+  branch_protection_rule:
+  # To guarantee Maintained check is occasionally updated. See
+  # https://github.com/ossf/scorecard/blob/main/docs/checks.md#maintained
+  schedule:
+    - cron: '20 5 * * 2'
+  push:
+    branches: [ "main" ]
+
+# Declare default permissions as read only.
+permissions: read-all
+
+jobs:
+  analysis:
+    name: Scorecard analysis
+    runs-on: ubuntu-latest
+    # `publish_results: true` only works when run from the default branch. 
conditional can be removed if disabled.
+    if: github.event.repository.default_branch == github.ref_name || 
github.event_name == 'pull_request'
+    permissions:
+      # Needed to upload the results to code-scanning dashboard.
+      security-events: write
+      # Needed to publish results and get a badge (see publish_results below).
+      id-token: write
+      # Uncomment the permissions below if installing in a private repository.
+      # contents: read
+      # actions: read
+
+    steps:
+      - name: "Checkout code"
+        uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # 
v5.0.0
+        with:
+          persist-credentials: false
+
+      - name: "Run analysis"
+        uses: ossf/scorecard-action@05b42c624433fc40578a4040d5cf5e36ddca8cde # 
v2.4.2
+        with:
+          results_file: results.sarif
+          results_format: sarif
+          # (Optional) "write" PAT token. Uncomment the `repo_token` line 
below if:
+          # - you want to enable the Branch-Protection check on a *public* 
repository, or
+          # - you are installing Scorecard on a *private* repository
+          # To create the PAT, follow the steps in 
https://github.com/ossf/scorecard-action?tab=readme-ov-file#authentication-with-fine-grained-pat-optional.
+          # repo_token: ${{ secrets.SCORECARD_TOKEN }}
+
+          # Public repositories:
+          #   - Publish results to OpenSSF REST API for easy access by 
consumers
+          #   - Allows the repository to include the Scorecard badge.
+          #   - See 
https://github.com/ossf/scorecard-action#publishing-results.
+          # For private repositories:
+          #   - `publish_results` will always be set to `false`, regardless
+          #     of the value entered here.
+          publish_results: true
+
+          # (Optional) Uncomment file_mode if you have a .gitattributes with 
files marked export-ignore
+          # file_mode: git
+
+      # Upload the results as artifacts (optional). Commenting out will 
disable uploads of run results in SARIF
+      # format to the repository Actions tab.
+      - name: "Upload artifact"
+        uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 
# v4.6.2
+        with:
+          name: SARIF file
+          path: results.sarif
+          retention-days: 5
+
+      # Upload the results to GitHub's code scanning dashboard (optional).
+      # Commenting out will disable upload of results to your repo's Code 
Scanning dashboard
+      - name: "Upload to code-scanning"
+        uses: github/codeql-action/upload-sarif@v3
+        with:
+          sarif_file: results.sarif
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/scram-3.1/.mvn/maven.config 
new/scram-3.2/.mvn/maven.config
--- old/scram-3.1/.mvn/maven.config     2024-06-26 02:50:00.000000000 +0200
+++ new/scram-3.2/.mvn/maven.config     2025-09-16 21:53:03.000000000 +0200
@@ -4,4 +4,4 @@
 --fail-fast
 -DinstallAtEnd=true
 -DdeployAtEnd=true
--DrootDirectory=${maven.multiModuleProjectDirectory}
+-DrootDirectory=${session.rootDirectory}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/scram-3.1/.mvn/wrapper/MavenWrapperDownloader.java 
new/scram-3.2/.mvn/wrapper/MavenWrapperDownloader.java
--- old/scram-3.1/.mvn/wrapper/MavenWrapperDownloader.java      2024-06-26 
02:50:00.000000000 +0200
+++ new/scram-3.2/.mvn/wrapper/MavenWrapperDownloader.java      2025-09-16 
21:53:03.000000000 +0200
@@ -30,7 +30,7 @@
 import java.util.concurrent.ThreadLocalRandom;
 
 public final class MavenWrapperDownloader {
-    private static final String WRAPPER_VERSION = "3.3.2";
+    private static final String WRAPPER_VERSION = "3.3.4";
 
     private static final boolean VERBOSE = 
Boolean.parseBoolean(System.getenv("MVNW_VERBOSE"));
 
@@ -45,8 +45,11 @@
         try {
             log(" - Downloader started");
             final URL wrapperUrl = URI.create(args[0]).toURL();
-            final String jarPath = args[1].replace("..", ""); // Sanitize path
-            final Path wrapperJarPath = 
Paths.get(jarPath).toAbsolutePath().normalize();
+            final Path baseDir = Paths.get(".").toAbsolutePath().normalize();
+            final Path wrapperJarPath = baseDir.resolve(args[1]).normalize();
+            if (!wrapperJarPath.startsWith(baseDir)) {
+                throw new IOException("Invalid path: outside of allowed 
directory");
+            }
             downloadFileFromURL(wrapperUrl, wrapperJarPath);
             log("Done");
         } catch (IOException e) {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/scram-3.1/.mvn/wrapper/maven-wrapper.properties 
new/scram-3.2/.mvn/wrapper/maven-wrapper.properties
--- old/scram-3.1/.mvn/wrapper/maven-wrapper.properties 2024-06-26 
02:50:00.000000000 +0200
+++ new/scram-3.2/.mvn/wrapper/maven-wrapper.properties 2025-09-16 
21:53:03.000000000 +0200
@@ -1,23 +1,7 @@
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements.  See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership.  The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License.  You may obtain a copy of the License at
-#
-#   http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied.  See the License for the
-# specific language governing permissions and limitations
-# under the License.
-wrapperVersion=3.3.2
+wrapperVersion=3.3.4
 distributionType=source
-distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.9.8/apache-maven-3.9.8-bin.zip
-distributionSha256Sum=8351955a9acf2f83c136c4eee0f6db894ab6265fdbe0a94b32a380307dbaa3e1
-wrapperUrl=https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.3.2/maven-wrapper-3.3.2.jar
-wrapperSha256Sum=3d8f20ce6103913be8b52aef6d994e0c54705fb527324ceb9b835b338739c7a8
+distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.9.11/apache-maven-3.9.11-bin.zip
+distributionSha256Sum=0d7125e8c91097b36edb990ea5934e6c68b4440eef4ea96510a0f6815e7eeadb
+wrapperUrl=https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.3.4/maven-wrapper-3.3.4.jar
+wrapperSha256Sum=4e2fbf6554bc8a4702cdfdd3bef464f423393d784ddbb037216320ce55d5e4e1
 alwaysUnpack=true
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/scram-3.1/CHANGELOG.md new/scram-3.2/CHANGELOG.md
--- old/scram-3.1/CHANGELOG.md  2024-06-26 02:50:00.000000000 +0200
+++ new/scram-3.2/CHANGELOG.md  2025-09-16 21:53:03.000000000 +0200
@@ -3,6 +3,14 @@
 
 ## [Unreleased]
 
+## [3.2] - 2025-09-16
+### :lock: Security
+- Fix Timing Attack Vulnerability in SCRAM Authentication
+
+### :ghost: Maintenance
+- Updated dependencies and maven plugins.
+- Use `central-publishing-maven-plugin` to deploy to Maven Central.
+
 ## [3.1] - 2024-06-26
 ### :building_construction: Improvements
 - Ensure the `LICENSE` file is included in the Jar file.
@@ -38,4 +46,5 @@
 
 [3.0]: https://github.com/ongres/scram/compare/2.1...3.0
 [3.1]: https://github.com/ongres/scram/compare/3.0...3.1
-[Unreleased]: https://github.com/ongres/scram/compare/3.1...main
+[3.2]: https://github.com/ongres/scram/compare/3.1...3.2
+[Unreleased]: https://github.com/ongres/scram/compare/3.2...main
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/scram-3.1/README.md new/scram-3.2/README.md
--- old/scram-3.1/README.md     2024-06-26 02:50:00.000000000 +0200
+++ new/scram-3.2/README.md     2025-09-16 21:53:03.000000000 +0200
@@ -1,8 +1,16 @@
 # SCRAM Java Implementation
 
+![Maven Central 
Version](https://img.shields.io/maven-central/v/com.ongres.scram/scram-aggregator)
+[![Reproducible 
Builds](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/jvm-repo-rebuild/reproducible-central/master/content/com/ongres/scram/badge.json)](https://github.com/jvm-repo-rebuild/reproducible-central/blob/master/content/com/ongres/scram/README.md)
+![GitHub License](https://img.shields.io/github/license/ongres/scram)
+
+> Salted Challenge Response Authentication Mechanism (SCRAM)
+
+## Overview
+
 SCRAM (Salted Challenge Response Authentication Mechanism) is part of the 
family of
 Simple Authentication and Security Layer
-([SASL, RFC 4422](https://datatracker.ietf.org/doc/html/rfc44222)) 
authentication mechanisms. It is described as part of [RFC 
5802](https://datatracker.ietf.org/doc/html/rfc5802) and
+([SASL, RFC 4422](https://datatracker.ietf.org/doc/html/rfc4422)) 
authentication mechanisms. It is described as part of [RFC 
5802](https://datatracker.ietf.org/doc/html/rfc5802) and
 [RFC 7677](https://datatracker.ietf.org/doc/html/rfc7677).
 
 This project provides a robust and well-tested implementation of the Salted 
Challenge
@@ -25,6 +33,8 @@
 
 ## How to use the SCRAM Client API
 
+[![Maven 
Central](https://img.shields.io/badge/maven--central-scram_client-informational?style=for-the-badge&logo=apache-maven&logoColor=red)](https://maven-badges.herokuapp.com/maven-central/com.ongres.scram/scram-client)
+
 Javadoc: 
[![Javadocs](http://javadoc.io/badge/com.ongres.scram/scram-client.svg?label=scram-client)](http://javadoc.io/doc/com.ongres.scram/scram-client)
 
 ### Example of use:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/scram-3.1/SECURITY.md new/scram-3.2/SECURITY.md
--- old/scram-3.1/SECURITY.md   1970-01-01 01:00:00.000000000 +0100
+++ new/scram-3.2/SECURITY.md   2025-09-16 21:53:03.000000000 +0200
@@ -0,0 +1,25 @@
+# Security Policy
+
+## Supported Versions
+
+The following table outlines which versions of `scram` are actively supported 
with security updates. Please upgrade to a supported release to ensure you 
receive patches for any security issues.
+
+| Version | Supported          | Java support |
+| ------- | ------------------ | ------------ |
+| 3.x     | :white_check_mark: | Java 8+      |
+| < 3.0   | :x:                | Java 7+      |
+
+## Reporting a Vulnerability
+
+If you believe you have found a security vulnerability, please report it to us 
privately through GitHub’s security advisory system:  
+[Report a vulnerability](../../security/advisories/new)
+
+We will investigate promptly and work with you to fix the issue.
+
+---
+
+## Security Best Practices for Users
+
+- Always use the latest supported version of `scram`.  
+- Monitor [GitHub Releases](https://github.com/ongres/scram/releases) for 
security patches.  
+- Consider subscribing to repository notifications for updates.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/scram-3.1/checks/forbiddenapis.txt 
new/scram-3.2/checks/forbiddenapis.txt
--- old/scram-3.1/checks/forbiddenapis.txt      1970-01-01 01:00:00.000000000 
+0100
+++ new/scram-3.2/checks/forbiddenapis.txt      2025-09-16 21:53:03.000000000 
+0200
@@ -0,0 +1,2 @@
+
+java.util.Arrays#equals(byte[],byte[]) @ Replace with 
java.security.MessageDigest#isEqual(byte[],byte[])
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/scram-3.1/checks/pmd-ruleset.xml 
new/scram-3.2/checks/pmd-ruleset.xml
--- old/scram-3.1/checks/pmd-ruleset.xml        2024-06-26 02:50:00.000000000 
+0200
+++ new/scram-3.2/checks/pmd-ruleset.xml        2025-09-16 21:53:03.000000000 
+0200
@@ -15,6 +15,7 @@
     <exclude name="ForLoopVariableCount" />
     <exclude name="AvoidReassigningLoopVariables" />
     <exclude name="AccessorClassGeneration" />
+    <exclude name="ImplicitFunctionalInterface" />
   </rule>
 
   <rule ref="category/java/errorprone.xml">
@@ -23,6 +24,12 @@
     <exclude name="AvoidFieldNameMatchingMethodName" />
   </rule>
 
+  <rule ref="category/java/errorprone.xml/AssignmentInOperand">
+    <properties>
+      <property name="allowIncrementDecrement" value="true" />
+    </properties>
+  </rule>
+
   <rule ref="category/java/multithreading.xml" />
 
   <rule ref="category/java/performance.xml">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/scram-3.1/coverage-report/pom.xml 
new/scram-3.2/coverage-report/pom.xml
--- old/scram-3.1/coverage-report/pom.xml       2024-06-26 02:50:00.000000000 
+0200
+++ new/scram-3.2/coverage-report/pom.xml       2025-09-16 21:53:03.000000000 
+0200
@@ -5,7 +5,7 @@
   <parent>
     <groupId>com.ongres.scram</groupId>
     <artifactId>scram-parent</artifactId>
-    <version>3.1</version>
+    <version>3.2</version>
     <relativePath>../scram-parent/pom.xml</relativePath>
   </parent>
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/scram-3.1/mvnw new/scram-3.2/mvnw
--- old/scram-3.1/mvnw  2024-06-26 02:50:00.000000000 +0200
+++ new/scram-3.2/mvnw  2025-09-16 21:53:03.000000000 +0200
@@ -19,7 +19,7 @@
 # ----------------------------------------------------------------------------
 
 # ----------------------------------------------------------------------------
-# Apache Maven Wrapper startup batch script, version 3.3.2
+# Apache Maven Wrapper startup batch script, version 3.3.4
 #
 # Required ENV vars:
 # ------------------
@@ -201,6 +201,14 @@
 export MAVEN_PROJECTBASEDIR
 log "$MAVEN_PROJECTBASEDIR"
 
+trim() {
+  # MWRAPPER-139:
+  #   Trims trailing and leading whitespace, carriage returns, tabs, and 
linefeeds.
+  #   Needed for removing poorly interpreted newline sequences when running in 
more
+  #   exotic environments such as mingw bash on Windows.
+  printf "%s" "${1}" | tr -d '[:space:]'
+}
+
 
##########################################################################################
 # Extension to allow automatically downloading the maven-wrapper.jar from 
Maven-central
 # This allows using the maven wrapper in projects that prohibit checking in 
binary data.
@@ -212,15 +220,13 @@
   log "Couldn't find $wrapperJarPath, downloading it ..."
 
   if [ -n "$MVNW_REPOURL" ]; then
-    
wrapperUrl="$MVNW_REPOURL/org/apache/maven/wrapper/maven-wrapper/3.3.2/maven-wrapper-3.3.2.jar"
+    
wrapperUrl="$MVNW_REPOURL/org/apache/maven/wrapper/maven-wrapper/3.3.4/maven-wrapper-3.3.4.jar"
   else
-    
wrapperUrl="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.3.2/maven-wrapper-3.3.2.jar";
+    
wrapperUrl="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.3.4/maven-wrapper-3.3.4.jar";
   fi
   while IFS="=" read -r key value; do
-    # Remove '\r' from value to allow usage on windows as IFS does not 
consider '\r' as a separator ( considers space, tab, new line ('\n'), and 
custom '=' )
-    safeValue=$(echo "$value" | tr -d '\r')
     case "$key" in wrapperUrl)
-      wrapperUrl="$safeValue"
+      wrapperUrl=$(trim "${value-}")
       break
       ;;
     esac
@@ -235,17 +241,17 @@
     log "Found wget ... using wget"
     [ "$MVNW_VERBOSE" = true ] && QUIET="" || QUIET="--quiet"
     if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then
-      wget $QUIET "$wrapperUrl" -O "$wrapperJarPath" || rm -f "$wrapperJarPath"
+      wget ${QUIET:+"$QUIET"} "$wrapperUrl" -O "$wrapperJarPath" || rm -f 
"$wrapperJarPath"
     else
-      wget $QUIET --http-user="$MVNW_USERNAME" 
--http-password="$MVNW_PASSWORD" "$wrapperUrl" -O "$wrapperJarPath" || rm -f 
"$wrapperJarPath"
+      wget ${QUIET:+"$QUIET"} --http-user="$MVNW_USERNAME" 
--http-password="$MVNW_PASSWORD" "$wrapperUrl" -O "$wrapperJarPath" || rm -f 
"$wrapperJarPath"
     fi
   elif command -v curl >/dev/null; then
     log "Found curl ... using curl"
     [ "$MVNW_VERBOSE" = true ] && QUIET="" || QUIET="--silent"
     if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then
-      curl $QUIET -o "$wrapperJarPath" "$wrapperUrl" -f -L || rm -f 
"$wrapperJarPath"
+      curl ${QUIET:+"$QUIET"} -o "$wrapperJarPath" "$wrapperUrl" -f -L || rm 
-f "$wrapperJarPath"
     else
-      curl $QUIET --user "$MVNW_USERNAME:$MVNW_PASSWORD" -o "$wrapperJarPath" 
"$wrapperUrl" -f -L || rm -f "$wrapperJarPath"
+      curl ${QUIET:+"$QUIET"} --user "$MVNW_USERNAME:$MVNW_PASSWORD" -o 
"$wrapperJarPath" "$wrapperUrl" -f -L || rm -f "$wrapperJarPath"
     fi
   else
     log "Falling back to using Java to download"
@@ -276,7 +282,7 @@
 wrapperSha256Sum=""
 while IFS="=" read -r key value; do
   case "$key" in wrapperSha256Sum)
-    wrapperSha256Sum=$value
+    wrapperSha256Sum=$(trim "${value-}")
     break
     ;;
   esac
@@ -284,7 +290,7 @@
 if [ -n "$wrapperSha256Sum" ]; then
   wrapperSha256Result=false
   if command -v sha256sum >/dev/null; then
-    if echo "$wrapperSha256Sum  $wrapperJarPath" | sha256sum -c >/dev/null 
2>&1; then
+    if echo "$wrapperSha256Sum  $wrapperJarPath" | sha256sum -c - >/dev/null 
2>&1; then
       wrapperSha256Result=true
     fi
   elif command -v shasum >/dev/null; then
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/scram-3.1/mvnw.cmd new/scram-3.2/mvnw.cmd
--- old/scram-3.1/mvnw.cmd      2024-06-26 02:50:00.000000000 +0200
+++ new/scram-3.2/mvnw.cmd      2025-09-16 21:53:03.000000000 +0200
@@ -18,7 +18,7 @@
 @REM 
----------------------------------------------------------------------------
 
 @REM 
----------------------------------------------------------------------------
-@REM Apache Maven Wrapper startup batch script, version 3.3.2
+@REM Apache Maven Wrapper startup batch script, version 3.3.4
 @REM
 @REM Required ENV vars:
 @REM JAVA_HOME - location of a JDK home dir
@@ -119,7 +119,7 @@
 set WRAPPER_JAR="%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.jar"
 set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain
 
-set 
WRAPPER_URL="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.3.2/maven-wrapper-3.3.2.jar";
+set 
WRAPPER_URL="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.3.4/maven-wrapper-3.3.4.jar";
 
 FOR /F "usebackq tokens=1,2 delims==" %%A IN 
("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO (
     IF "%%A"=="wrapperUrl" SET WRAPPER_URL=%%B
@@ -133,7 +133,7 @@
     )
 ) else (
     if not "%MVNW_REPOURL%" == "" (
-        SET 
WRAPPER_URL="%MVNW_REPOURL%/org/apache/maven/wrapper/maven-wrapper/3.3.2/maven-wrapper-3.3.2.jar"
+        SET 
WRAPPER_URL="%MVNW_REPOURL%/org/apache/maven/wrapper/maven-wrapper/3.3.4/maven-wrapper-3.3.4.jar"
     )
     if "%MVNW_VERBOSE%" == "true" (
         echo Couldn't find %WRAPPER_JAR%, downloading it ...
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/scram-3.1/pom.xml new/scram-3.2/pom.xml
--- old/scram-3.1/pom.xml       2024-06-26 02:50:00.000000000 +0200
+++ new/scram-3.2/pom.xml       2025-09-16 21:53:03.000000000 +0200
@@ -5,7 +5,7 @@
   <parent>
     <groupId>com.ongres.scram</groupId>
     <artifactId>scram-parent</artifactId>
-    <version>3.1</version>
+    <version>3.2</version>
     <relativePath>scram-parent/pom.xml</relativePath>
   </parent>
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/scram-3.1/scram-client/pom.xml 
new/scram-3.2/scram-client/pom.xml
--- old/scram-3.1/scram-client/pom.xml  2024-06-26 02:50:00.000000000 +0200
+++ new/scram-3.2/scram-client/pom.xml  2025-09-16 21:53:03.000000000 +0200
@@ -5,7 +5,7 @@
   <parent>
     <groupId>com.ongres.scram</groupId>
     <artifactId>scram-parent</artifactId>
-    <version>3.1</version>
+    <version>3.2</version>
     <relativePath>../scram-parent/pom.xml</relativePath>
   </parent>
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/scram-3.1/scram-client/src/it/jpms-scram-client/pom.xml 
new/scram-3.2/scram-client/src/it/jpms-scram-client/pom.xml
--- old/scram-3.1/scram-client/src/it/jpms-scram-client/pom.xml 2024-06-26 
02:50:00.000000000 +0200
+++ new/scram-3.2/scram-client/src/it/jpms-scram-client/pom.xml 2025-09-16 
21:53:03.000000000 +0200
@@ -7,7 +7,7 @@
   <groupId>com.ongres.scram.it</groupId>
   <artifactId>jpms-scram-client</artifactId>
   <name>JPMS Scram Client</name>
-  <version>3.1</version>
+  <version>3.2</version>
 
   <properties>
     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
@@ -25,7 +25,7 @@
     <dependency>
       <groupId>org.junit.jupiter</groupId>
       <artifactId>junit-jupiter</artifactId>
-      <version>5.10.2</version>
+      <version>5.13.4</version>
       <scope>test</scope>
     </dependency>
   </dependencies>
@@ -34,7 +34,7 @@
       <plugins>
         <plugin>
           <artifactId>maven-compiler-plugin</artifactId>
-          <version>3.13.0</version>
+          <version>3.14.0</version>
         </plugin>
         <plugin>
           <artifactId>maven-jar-plugin</artifactId>
@@ -42,7 +42,7 @@
         </plugin>
         <plugin>
           <artifactId>maven-surefire-plugin</artifactId>
-          <version>3.3.0</version>
+          <version>3.5.4</version>
         </plugin>
       </plugins>
   </build>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/scram-3.1/scram-client/src/test/java/com/example/ScramClientTest.java 
new/scram-3.2/scram-client/src/test/java/com/example/ScramClientTest.java
--- old/scram-3.1/scram-client/src/test/java/com/example/ScramClientTest.java   
2024-06-26 02:50:00.000000000 +0200
+++ new/scram-3.2/scram-client/src/test/java/com/example/ScramClientTest.java   
2025-09-16 21:53:03.000000000 +0200
@@ -15,11 +15,9 @@
 import java.security.cert.CertificateFactory;
 import java.security.cert.X509Certificate;
 import java.util.Arrays;
-import java.util.Base64;
 
 import com.ongres.scram.client.ScramClient;
 import com.ongres.scram.common.ClientFinalMessage;
-import com.ongres.scram.common.exception.ScramParseException;
 import com.ongres.scram.common.util.TlsServerEndpoint;
 import org.junit.jupiter.api.Test;
 
@@ -76,4 +74,38 @@
     }
     return cert;
   }
+
+  @Test
+  void iterationTest()
+      throws CertificateException, IOException {
+    final X509Certificate cert = getCert();
+    final byte[] channelBindingData = 
TlsServerEndpoint.getChannelBindingData(cert);
+
+    ScramClient scramSession = ScramClient.builder()
+        .advertisedMechanisms(Arrays.asList("SCRAM-SHA-256"))
+        .username("postgres")
+        .password("pencil".toCharArray())
+        .channelBinding(TlsServerEndpoint.TLS_SERVER_END_POINT, 
channelBindingData)
+        .nonceSupplier(() -> "1q^MGrWUi{etW+H7(#k431kB")
+        .build();
+    assertEquals("SCRAM-SHA-256", scramSession.getScramMechanism().getName());
+    assertEquals("y,,n=postgres,r=1q^MGrWUi{etW+H7(#k431kB",
+        scramSession.clientFirstMessage().toString());
+
+    assertDoesNotThrow(
+        () -> scramSession.serverFirstMessage(
+            "r=1q^MGrWUi{etW+H7(#k431kBdAr3CWX7B6houDP4f7Z2XEpZ,"
+                + "s=Fgh8JU2AlRjBHUsIU/GgtQ==,"
+                + "i=1000000"));
+
+    ClientFinalMessage clientFinalMessage = scramSession.clientFinalMessage();
+    assertEquals(
+        "c=eSws,"
+            + "r=1q^MGrWUi{etW+H7(#k431kBdAr3CWX7B6houDP4f7Z2XEpZ,"
+            + "p=vQ3IyYl3LvjWOlK2c0IP5QAi6XB7Dm0Axo0V51DcHZA=",
+        clientFinalMessage.toString());
+
+    assertDoesNotThrow(
+        () -> 
scramSession.serverFinalMessage("v=sz/isCwVSUn/TBWeYABz6WaoZIcfsui9NPaJCoxxAjY="));
+  }
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/scram-3.1/scram-common/pom.xml 
new/scram-3.2/scram-common/pom.xml
--- old/scram-3.1/scram-common/pom.xml  2024-06-26 02:50:00.000000000 +0200
+++ new/scram-3.2/scram-common/pom.xml  2025-09-16 21:53:03.000000000 +0200
@@ -5,7 +5,7 @@
   <parent>
     <groupId>com.ongres.scram</groupId>
     <artifactId>scram-parent</artifactId>
-    <version>3.1</version>
+    <version>3.2</version>
     <relativePath>../scram-parent/pom.xml</relativePath>
   </parent>
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/scram-3.1/scram-common/src/main/java/com/ongres/scram/common/ScramFunctions.java
 
new/scram-3.2/scram-common/src/main/java/com/ongres/scram/common/ScramFunctions.java
--- 
old/scram-3.1/scram-common/src/main/java/com/ongres/scram/common/ScramFunctions.java
        2024-06-26 02:50:00.000000000 +0200
+++ 
new/scram-3.2/scram-common/src/main/java/com/ongres/scram/common/ScramFunctions.java
        2025-09-16 21:53:03.000000000 +0200
@@ -7,8 +7,8 @@
 
 import static java.nio.charset.StandardCharsets.UTF_8;
 
+import java.security.MessageDigest;
 import java.security.SecureRandom;
-import java.util.Arrays;
 
 import com.ongres.scram.common.util.Preconditions;
 import org.jetbrains.annotations.NotNull;
@@ -190,8 +190,7 @@
     byte[] clientSignature = clientSignature(scramMechanism, storedKey, 
authMessage);
     byte[] clientKey = CryptoUtil.xor(clientSignature, clientProof);
     byte[] computedStoredKey = hash(scramMechanism, clientKey);
-
-    return Arrays.equals(storedKey, computedStoredKey);
+    return MessageDigest.isEqual(storedKey, computedStoredKey);
   }
 
   /**
@@ -205,7 +204,8 @@
    */
   public static boolean verifyServerSignature(
       ScramMechanism scramMechanism, byte[] serverKey, String authMessage, 
byte[] serverSignature) {
-    return Arrays.equals(serverSignature(scramMechanism, serverKey, 
authMessage), serverSignature);
+    byte[] computedServerSignature = serverSignature(scramMechanism, 
serverKey, authMessage);
+    return MessageDigest.isEqual(serverSignature, computedServerSignature);
   }
 
   /**
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/scram-3.1/scram-parent/pom.xml 
new/scram-3.2/scram-parent/pom.xml
--- old/scram-3.1/scram-parent/pom.xml  2024-06-26 02:50:00.000000000 +0200
+++ new/scram-3.2/scram-parent/pom.xml  2025-09-16 21:53:03.000000000 +0200
@@ -4,7 +4,7 @@
 
   <groupId>com.ongres.scram</groupId>
   <artifactId>scram-parent</artifactId>
-  <version>3.1</version>
+  <version>3.2</version>
   <packaging>pom</packaging>
 
   <name>SCRAM - Parent</name>
@@ -44,7 +44,7 @@
   <scm child.scm.connection.inherit.append.path="false" 
child.scm.developerConnection.inherit.append.path="false" 
child.scm.url.inherit.append.path="false">
     <connection>scm:git:https://github.com/ongres/scram.git</connection>
     
<developerConnection>scm:git:[email protected]:ongres/scram.git</developerConnection>
-    <tag>3.1</tag>
+    <tag>3.2</tag>
     <url>https://github.com/ongres/scram</url>
   </scm>
 
@@ -53,59 +53,46 @@
     <url>https://github.com/ongres/scram/issues</url>
   </issueManagement>
 
-  <distributionManagement>
-    <repository>
-      <id>ossrh</id>
-      <name>OSSRH Release repository</name>
-      <url>https://oss.sonatype.org/service/local/staging/deploy/maven2</url>
-    </repository>
-    <snapshotRepository>
-      <id>ossrh</id>
-      <name>OSSRH Snapshot repository</name>
-      <url>https://oss.sonatype.org/content/repositories/snapshots</url>
-    </snapshotRepository>
-  </distributionManagement>
-
   <properties>
     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
     <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
     <base.java.version>8</base.java.version>
     <maven.compiler.source>${base.java.version}</maven.compiler.source>
     <maven.compiler.target>${base.java.version}</maven.compiler.target>
-    
<project.build.outputTimestamp>2024-06-26T00:50:00Z</project.build.outputTimestamp>
+    
<project.build.outputTimestamp>2025-09-16T20:00:00Z</project.build.outputTimestamp>
     <!-- Dependency versions -->
-    <jetbrains-annotations.version>24.1.0</jetbrains-annotations.version>
-    <junit5.version>5.10.2</junit5.version>
+    <jetbrains-annotations.version>26.0.2-1</jetbrains-annotations.version>
+    <junit5.version>5.13.4</junit5.version>
     <saslprep.version>2.2</saslprep.version>
     <!-- Plugins versions -->
-    <compiler-plugin.version>3.13.0</compiler-plugin.version>
+    <compiler-plugin.version>3.14.0</compiler-plugin.version>
     <jar-plugin.version>3.4.2</jar-plugin.version>
     <source-plugin.version>3.3.1</source-plugin.version>
-    <javadoc-plugin.version>3.7.0</javadoc-plugin.version>
-    <clean-plugin.version>3.4.0</clean-plugin.version>
+    <javadoc-plugin.version>3.11.3</javadoc-plugin.version>
+    <clean-plugin.version>3.5.0</clean-plugin.version>
     <resources-plugin.version>3.3.1</resources-plugin.version>
-    <surefire-plugin.version>3.3.0</surefire-plugin.version>
-    <failsafe-plugin.version>3.3.0</failsafe-plugin.version>
-    <enforcer-plugin.version>3.5.0</enforcer-plugin.version>
-    <install-plugin.version>3.1.2</install-plugin.version>
-    <deploy-plugin.version>3.1.2</deploy-plugin.version>
-    <invoker-plugin.version>3.7.0</invoker-plugin.version>
-    <gpg-plugin.version>3.2.4</gpg-plugin.version>
-    <jacoco-plugin.verson>0.8.12</jacoco-plugin.verson>
-    <flatten-maven-plugin.version>1.6.0</flatten-maven-plugin.version>
+    <surefire-plugin.version>3.5.4</surefire-plugin.version>
+    <failsafe-plugin.version>3.5.4</failsafe-plugin.version>
+    <enforcer-plugin.version>3.6.1</enforcer-plugin.version>
+    <install-plugin.version>3.1.4</install-plugin.version>
+    
<central-publishing-maven-plugin.version>0.8.0</central-publishing-maven-plugin.version>
+    <invoker-plugin.version>3.9.1</invoker-plugin.version>
+    <gpg-plugin.version>3.2.8</gpg-plugin.version>
+    <jacoco-plugin.verson>0.8.13</jacoco-plugin.verson>
+    <flatten-maven-plugin.version>1.7.2</flatten-maven-plugin.version>
     <jdeps-plugin.version>3.1.2</jdeps-plugin.version>
     <sortpom-plugin.version>4.0.0</sortpom-plugin.version>
-    <cyclonedx-plugin.version>2.8.0</cyclonedx-plugin.version>
+    <cyclonedx-plugin.version>2.9.1</cyclonedx-plugin.version>
     <!-- Checkstyle, SpotBugs and PMD properties -->
-    <checkstyle.version>10.17.0</checkstyle.version>
-    <checkstyle-plugin.version>3.4.0</checkstyle-plugin.version>
-    <errorprone.version>2.28.0</errorprone.version>
-    <spotbugs.version>4.8.6</spotbugs.version>
-    <spotbugs-plugin.version>4.8.5.0</spotbugs-plugin.version>
-    <findsecbugs.version>1.13.0</findsecbugs.version>
-    <pmd.version>7.2.0</pmd.version>
-    <pmd-plugin.version>3.23.0</pmd-plugin.version>
-    <forbiddenapis.version>3.7</forbiddenapis.version>
+    <checkstyle.version>11.0.1</checkstyle.version>
+    <checkstyle-plugin.version>3.6.0</checkstyle-plugin.version>
+    <errorprone.version>2.41.0</errorprone.version>
+    <spotbugs.version>4.9.5</spotbugs.version>
+    <spotbugs-plugin.version>4.9.5.0</spotbugs-plugin.version>
+    <findsecbugs.version>1.14.0</findsecbugs.version>
+    <pmd.version>7.17.0</pmd.version>
+    <pmd-plugin.version>3.27.0</pmd-plugin.version>
+    <forbiddenapis.version>3.9</forbiddenapis.version>
     <checks.location>${rootDirectory}/checks</checks.location>
     
<checkstyle.config.location>${checks.location}/checkstyle.xml</checkstyle.config.location>
     
<checkstyle.suppressions.location>${checks.location}/checkstyle-suppressions.xml</checkstyle.suppressions.location>
@@ -353,9 +340,13 @@
           <version>${install-plugin.version}</version>
         </plugin>
         <plugin>
-          <groupId>org.apache.maven.plugins</groupId>
-          <artifactId>maven-deploy-plugin</artifactId>
-          <version>${deploy-plugin.version}</version>
+          <groupId>org.sonatype.central</groupId>
+          <artifactId>central-publishing-maven-plugin</artifactId>
+          <version>${central-publishing-maven-plugin.version}</version>
+          <extensions>true</extensions>
+          <configuration>
+            <publishingServerId>central</publishingServerId>
+          </configuration>
         </plugin>
         <plugin>
           <groupId>org.apache.maven.plugins</groupId>
@@ -375,7 +366,7 @@
               <configuration>
                 <rules>
                   <requireMavenVersion>
-                    <version>[3.9.7,)</version>
+                    <version>[3.9.9,)</version>
                   </requireMavenVersion>
                   <requireJavaVersion>
                     <version>[21,)</version>
@@ -487,6 +478,7 @@
               <compilerArgs>
                 <arg>-Xlint:all</arg>
                 <arg>-XDcompilePolicy=simple</arg>
+                <arg>--should-stop=ifError=FLOW</arg>
                 <arg>-Xplugin:ErrorProne -XepAllErrorsAsWarnings 
-XepDisableWarningsInGeneratedCode</arg>
                 <!-- Required on JDK 16+ due to JEP 396 -->
                 
<arg>-J--add-exports=jdk.compiler/com.sun.tools.javac.api=ALL-UNNAMED</arg>
@@ -529,6 +521,9 @@
                 <!-- don't allow System.out or System.err: -->
                 <bundledSignature>jdk-system-out</bundledSignature>
               </bundledSignatures>
+              <signaturesFiles>
+                
<signaturesFile>${checks.location}/forbiddenapis.txt</signaturesFile>
+              </signaturesFiles>
             </configuration>
             <executions>
               <execution>
@@ -695,6 +690,10 @@
             <groupId>org.cyclonedx</groupId>
             <artifactId>cyclonedx-maven-plugin</artifactId>
           </plugin>
+          <plugin>
+            <groupId>org.sonatype.central</groupId>
+            <artifactId>central-publishing-maven-plugin</artifactId>
+          </plugin>
         </plugins>
       </build>
     </profile>

Reply via email to