Downgrade Equinox P2 jars to fix FIPS-compliant server startup issues#4795
Downgrade Equinox P2 jars to fix FIPS-compliant server startup issues#4795arunans23 wants to merge 1 commit intowso2:masterfrom
Conversation
Aligns Equinox P2 dependency versions with wso2/carbon-kernel#4570, which fixes server startup failures in FIPS-compliant mode caused by incompatible Bouncy Castle jar versions introduced by newer P2 jars.
WalkthroughThe PR downgrades a comprehensive set of Equinox P2 dependency versions in Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Poem
🚥 Pre-merge checks | ✅ 2 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (2 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
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. Comment |
There was a problem hiding this comment.
🧹 Nitpick comments (2)
pom.xml (2)
2108-2110: Consider a small regression guard for this packaging fix.This change addresses a runtime startup failure, but nothing in the build will fail if a later P2 upgrade pulls the incompatible crypto jars back into the distribution. Even a lightweight dependency-tree or assembled-lib check in CI would make that regression obvious.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@pom.xml` around lines 2108 - 2110, Add a CI regression guard that fails the build if future P2 upgrades reintroduce the incompatible crypto jars; implement a lightweight check (e.g., a Maven step running mvn dependency:tree or assembling the distro and scanning libs) and assert that banned artifact coordinates or classnames are not present, referencing the P2-related properties changed in this PR such as version.equinox.p2.publisher.eclipse and version.equinox.p2.transport.ecf so the check is tied to P2 upgrades; ensure the job runs on PRs and reports the offending artifact/version when it fails.
2087-2104: Add a breadcrumb above this rollback set.This block fans out into versionless child dependencies such as
features/org.wso2.micro.integrator.core.runtime.feature/pom.xmlLines 107-200, so a future partial bump here will silently change the shipped P2 stack. A short note that these properties must move together for the FIPS fix would make drift much easier to catch.💡 Suggested note
+ <!-- Keep this Equinox p2 version set aligned for the FIPS startup fix. --> <version.equinox.p2.artifact.repository>1.4.0</version.equinox.p2.artifact.repository> <version.equinox.p2.core>2.8.0</version.equinox.p2.core> <version.equinox.p2.director>2.5.0</version.equinox.p2.director>🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@pom.xml` around lines 2087 - 2104, Summary: Add a breadcrumb comment above this rollback set warning that these equinox p2 properties must move together. Insert a short comment immediately above the block of properties (the rollback set containing version.equinox.p2.artifact.repository, version.equinox.p2.core, version.equinox.p2.engine, version.equinox.p2.metadata.repository, version.equinox.p2.repository, etc.) stating that they fan out into versionless child dependencies and must be changed as a group for the FIPS fix; include a one-line instruction like "Do not update individually — update all listed version.equinox.p2.* properties together" and add a [do-not-change-separately] tag for future reviewers.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Nitpick comments:
In `@pom.xml`:
- Around line 2108-2110: Add a CI regression guard that fails the build if
future P2 upgrades reintroduce the incompatible crypto jars; implement a
lightweight check (e.g., a Maven step running mvn dependency:tree or assembling
the distro and scanning libs) and assert that banned artifact coordinates or
classnames are not present, referencing the P2-related properties changed in
this PR such as version.equinox.p2.publisher.eclipse and
version.equinox.p2.transport.ecf so the check is tied to P2 upgrades; ensure the
job runs on PRs and reports the offending artifact/version when it fails.
- Around line 2087-2104: Summary: Add a breadcrumb comment above this rollback
set warning that these equinox p2 properties must move together. Insert a short
comment immediately above the block of properties (the rollback set containing
version.equinox.p2.artifact.repository, version.equinox.p2.core,
version.equinox.p2.engine, version.equinox.p2.metadata.repository,
version.equinox.p2.repository, etc.) stating that they fan out into versionless
child dependencies and must be changed as a group for the FIPS fix; include a
one-line instruction like "Do not update individually — update all listed
version.equinox.p2.* properties together" and add a [do-not-change-separately]
tag for future reviewers.
Purpose
Downgrade Equinox P2 dependency versions to fix server startup failures in FIPS-compliant mode.
Related Issue
Approach
Aligned Equinox P2 jar versions in
pom.xmlwith the versions from wso2/carbon-kernel#4570. The newer P2 versions caused server startup issues in FIPS-compliant environments due to incompatible Bouncy Castle jar dependencies.Summary by CodeRabbit