Skip to content

Conversation

@shahar-biron
Copy link
Collaborator

@shahar-biron shahar-biron commented Oct 27, 2025

Description

This PR updates the Spring Data dependencies from SNAPSHOT to stable RC1 versions to enable publishing to Maven Central.

Changes

  • Updated spring-data-parent from 4.0.0-SNAPSHOT to 4.0.0-RC1
  • Updated spring-data-commons from 4.0.0-SNAPSHOT to 4.0.0-RC1

Why

Maven Central enforces a strict rule that release artifacts cannot depend on SNAPSHOT dependencies. The previous release attempt failed with this error:

Rule 1: RequireReleaseDeps failed with message:
org.springframework.data:spring-data-commons:jar:4.0.0-SNAPSHOT <--- is not a release dependency

Testing

  • ✅ Build verification passed with mvn clean verify
  • ✅ All compilation completed successfully
  • ✅ Using stable Spring Data 4.0.0-RC1 which is available in Maven Central

This will allow us to successfully publish version 8.0.0-RC2 to Maven Central.

Summary by CodeRabbit

  • Chores
    • Updated build configuration version references to 4.0.0-RC1.
    • Removed automated source-attachment step from the release build profile.

…l release

- Updated spring-data-parent from 4.0.0-SNAPSHOT to 4.0.0-RC1
- Updated spring-data-commons from 4.0.0-SNAPSHOT to 4.0.0-RC1

This allows the project to be published to Maven Central which requires
all dependencies to be stable releases (no SNAPSHOT versions).
@coderabbitai
Copy link

coderabbitai bot commented Oct 27, 2025

Walkthrough

Updated Maven POM: parent version and springdata.commons property moved from 4.0.0-SNAPSHOT to 4.0.0-RC1, and the maven-source-plugin execution that attached sources was removed from the release profile.

Changes

Cohort / File(s) Summary
POM version and property updates
pom.xml
Updated <parent><version> from 4.0.0-SNAPSHOT4.0.0-RC1 and <properties><springdata.commons> from 4.0.0-SNAPSHOT4.0.0-RC1.
Release profile plugin removal
pom.xml
Removed maven-source-plugin block (the attach-sources execution) from the <profile id="release"> section.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

  • Single file changed; mostly mechanical version updates and one plugin block removal.
  • Review points: ensure release builds no longer require source attachment and validate CI/release pipeline expectations.

Poem

🐇 I nudged the POM, made versions neat and spry,

From Snapshot's bustle to an RC sky.
The source plugin hopped away — quiet and light;
We bloom for release on a crisp, clear night.

Pre-merge checks and finishing touches

❌ Failed checks (1 warning)
Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. You can run @coderabbitai generate docstrings to improve docstring coverage.
✅ Passed checks (2 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title Check ✅ Passed The PR title "Use stable Spring Data 4.0.0-RC1 for Maven Central release" directly and clearly summarizes the main change in the changeset: updating Spring Data dependencies from SNAPSHOT versions to the stable RC1 version to enable Maven Central publishing. The title is specific, concise (9 words), and uses clear language without vague terms. A teammate scanning the commit history would immediately understand the primary objective. While the title doesn't mention every detail like the removal of the maven-source-plugin, that's expected and acceptable per the criteria provided.
✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch release/use-stable-spring-data-4.0.0-RC1

📜 Recent review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between c9a52e5 and 99a152e.

📒 Files selected for processing (1)
  • pom.xml (2 hunks)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (2)
  • GitHub Check: Tests (Java 21)
  • GitHub Check: Build and Test
🔇 Additional comments (2)
pom.xml (2)

25-25: Version update to RC1 unblocks Maven Central publishing.

The parent version change from SNAPSHOT to 4.0.0-RC1 is appropriate. RC versions are valid release artifacts in Maven Central, whereas SNAPSHOT versions are rejected.


118-118: Property update is consistent with parent version.

The springdata.commons property update to 4.0.0-RC1 matches the parent version change and ensures consistent dependency resolution in both dependencyManagement (line 200) and dependencies sections (line 284-286).


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

The spring-data-parent POM already configures maven-source-plugin,
so having it again in the release profile causes a duplicate artifact error.
@shahar-biron shahar-biron merged commit 51ea6a0 into main Oct 27, 2025
11 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants