Skip to content

fix: we need to publish all three modules#382

Merged
mkleene merged 8 commits into
mainfrom
publish-all-modules
Jun 24, 2026
Merged

fix: we need to publish all three modules#382
mkleene merged 8 commits into
mainfrom
publish-all-modules

Conversation

@mkleene

@mkleene mkleene commented Jun 23, 2026

Copy link
Copy Markdown
Contributor
  • add artifacts necessary for publishing to sdk-fips-bc and sdk-pqc-bc
    • also clean up boilerplate
  • two consistency changes
    • rename sdk-fips-bouncycastle to sdk-fips-bc (this should be ok since we haven't succeeded in publishing since this module was created)
    • don't exclude the sdk-pqc-bc jar when using the FIPS profile. the provider modules need only be included/excluded by their consumers

Summary by CodeRabbit

Summary

  • Build & Release

    • Release artifacts now include sources archives, Javadoc documentation, and checksum files (MD5/SHA-1/SHA-256/SHA-512) for generated JARs.
  • Compatibility / Modules

    • Updated FIPS-related module/artifact naming to use sdk-fips-bc (replacing sdk-fips-bouncycastle) across the development and release build profiles, including the cmdline runtime and reactor.
  • Documentation

    • Refreshed FIPS-related Javadoc text and related user-facing error messages to match the new artifact name.
  • CI

    • Adjusted FIPS-mode test setup to install the updated FIPS artifact.

@mkleene mkleene requested review from a team as code owners June 23, 2026 15:25
@coderabbitai

coderabbitai Bot commented Jun 23, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 8665f6c9-81d9-431e-b3d7-9cf0d4a38b06

📥 Commits

Reviewing files that changed from the base of the PR and between 585cb16 and 9388ad1.

📒 Files selected for processing (1)
  • pom.xml

📝 Walkthrough

Walkthrough

The root pom.xml centralizes publishing plugins. The sdk-fips-bouncycastle module is renamed to sdk-fips-bc, sdk-pqc-bc is added to reactor profiles, and FIPS-related dependencies, workflows, Javadocs, and tests now reference sdk-fips-bc.

Changes

Publishing Plugin Centralization and Module Renaming

Layer / File(s) Summary
Root pluginManagement and sdk plugin cleanup
pom.xml, sdk/pom.xml
The root pom.xml adds source, Dokka, and checksum publishing plugins, and sdk/pom.xml removes inline source and checksum plugin configuration details while keeping the plugin declarations.
Module rename and build plugins
sdk-fips-bc/pom.xml, sdk-pqc-bc/pom.xml
sdk-fips-bc/pom.xml renames the module artifact and adds build plugins, and sdk-pqc-bc/pom.xml adds the same build plugin block.
Reactor profile module lists
pom.xml
The develop and release profiles in pom.xml replace sdk-fips-bouncycastle with sdk-pqc-bc and sdk-fips-bc.
FIPS dependency and workflow updates
sdk/pom.xml, cmdline/pom.xml, .github/workflows/checks.yaml
sdk/pom.xml, cmdline/pom.xml, and .github/workflows/checks.yaml now reference sdk-fips-bc in the FIPS classpath, runtime dependency, and workflow install step.
FIPS guidance text updates
sdk/src/main/java/io/opentdf/platform/sdk/ECKeyPair.java, sdk/src/main/java/io/opentdf/platform/sdk/HkdfProvider.java, sdk/src/test/java/io/opentdf/platform/sdk/ECKeyPairTest.java, sdk/src/test/java/io/opentdf/platform/sdk/FipsProviderVerificationTest.java
ECKeyPair.java, HkdfProvider.java, and the related tests update Javadoc and assertion text to mention sdk-fips-bc instead of sdk-fips-bouncycastle.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~12 minutes

Possibly related PRs

  • opentdf/java-sdk#367: Also changes the FIPS build/test wiring in checks.yaml and Maven profile/classpath references around Bouncy Castle.
  • opentdf/java-sdk#375: Closely related to the FIPS HKDF/provider messaging and artifact rename reflected in ECKeyPair, HkdfProvider, and the FIPS tests.
  • opentdf/java-sdk#379: Overlaps with the root pom.xml reactor/profile changes around the FIPS module split and publishing setup.

Suggested reviewers

  • marythought
  • dmihalcik-virtru

Poem

🐇 I hop through poms with steady cheer,
New checksums sparkle bright and clear.
sdk-fips-bc now takes the stage,
While sdk-pqc-bc joins the page.
The rabbit nods: all paths align.

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 33.33% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title is related to the main change: updating publishing so all three modules are published.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch publish-all-modules

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.

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request centralizes the configuration of several Maven plugins (maven-source-plugin, dokka-maven-plugin, and checksum-maven-plugin) into the parent pom.xml under plugin management, simplifying the child POMs. It also renames the module sdk-fips-bouncycastle to sdk-fips-bc and adds sdk-pqc-bc to the release profile. One issue was identified where the tag in sdk-fips-bc/pom.xml still references the old artifact name and should be updated for consistency.

Important

The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.

Comment thread sdk-fips-bc/pom.xml
@github-actions

Copy link
Copy Markdown
Contributor

X-Test Failure Report

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@pom.xml`:
- Line 351: The module rename from sdk-fips-bouncycastle to sdk-fips-bc in the
reactor modules is incomplete. Update all downstream dependency references in
cmdline/pom.xml that still use the artifact ID
io.opentdf.platform:sdk-fips-bouncycastle to reference the renamed artifact ID
sdk-fips-bc instead, ensuring consistent naming across all pom.xml files and
preventing dependency resolution failures.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 79f41870-4fd7-40e0-bfdf-be96494ce0f4

📥 Commits

Reviewing files that changed from the base of the PR and between 787039c and 8083768.

📒 Files selected for processing (7)
  • pom.xml
  • sdk-fips-bc/pom.xml
  • sdk-fips-bc/src/main/java/io/opentdf/platform/sdk/fips/bouncycastle/BouncyCastleFipsHkdfProvider.java
  • sdk-fips-bc/src/main/resources/META-INF/services/io.opentdf.platform.sdk.HkdfProvider
  • sdk-fips-bc/src/test/java/io/opentdf/platform/sdk/fips/bouncycastle/BouncyCastleFipsHkdfProviderTest.java
  • sdk-pqc-bc/pom.xml
  • sdk/pom.xml
💤 Files with no reviewable changes (1)
  • sdk/pom.xml

Comment thread pom.xml Outdated
@github-actions

Copy link
Copy Markdown
Contributor

@github-actions

Copy link
Copy Markdown
Contributor

X-Test Failure Report

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@pom.xml`:
- Around line 372-377: The fips profile in the pom.xml file is configured with
activeByDefault set to true, which conflicts with its documented intent to be
opt-in. Remove the activeByDefault element (currently set to true at line 376)
from the fips profile activation block to allow users to selectively enable FIPS
behavior only when explicitly requested, rather than having it activate
unconditionally by default.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 64bd2d34-0825-46a1-8656-da3e58bb0668

📥 Commits

Reviewing files that changed from the base of the PR and between 8083768 and 585cb16.

📒 Files selected for processing (9)
  • .github/workflows/checks.yaml
  • cmdline/pom.xml
  • pom.xml
  • sdk-fips-bc/pom.xml
  • sdk/pom.xml
  • sdk/src/main/java/io/opentdf/platform/sdk/ECKeyPair.java
  • sdk/src/main/java/io/opentdf/platform/sdk/HkdfProvider.java
  • sdk/src/test/java/io/opentdf/platform/sdk/ECKeyPairTest.java
  • sdk/src/test/java/io/opentdf/platform/sdk/FipsProviderVerificationTest.java
✅ Files skipped from review due to trivial changes (4)
  • sdk/src/test/java/io/opentdf/platform/sdk/ECKeyPairTest.java
  • sdk/src/main/java/io/opentdf/platform/sdk/HkdfProvider.java
  • sdk/src/test/java/io/opentdf/platform/sdk/FipsProviderVerificationTest.java
  • sdk/src/main/java/io/opentdf/platform/sdk/ECKeyPair.java
🚧 Files skipped from review as they are similar to previous changes (1)
  • sdk-fips-bc/pom.xml

Comment thread pom.xml Outdated
@github-actions

Copy link
Copy Markdown
Contributor

X-Test Failure Report

@github-actions

Copy link
Copy Markdown
Contributor

@github-actions

Copy link
Copy Markdown
Contributor

@sonarqubecloud

Copy link
Copy Markdown

Quality Gate Failed Quality Gate failed

Failed conditions
0.0% Coverage on New Code (required ≥ 33%)

See analysis details on SonarQube Cloud

@github-actions

Copy link
Copy Markdown
Contributor

@mkleene mkleene merged commit 9a93140 into main Jun 24, 2026
21 of 22 checks passed
@mkleene mkleene deleted the publish-all-modules branch June 24, 2026 21:40
mkleene pushed a commit that referenced this pull request Jun 25, 2026
🤖 I have created a release *beep* *boop*
---


<details><summary>0.17.1</summary>

##
[0.17.1](v0.17.0...v0.17.1)
(2026-06-24)

### Features
* sdk: add pure ML-KEM-768 and ML-KEM-1024 key wrapping
([#373](#382))
([068caa7](068caa7))
### Bug Fixes

* we need to publish all three modules
([#382](#382))
([9a93140](9a93140))
</details>

Co-authored-by: opentdf-automation[bot] <149537512+opentdf-automation[bot]@users.noreply.github.com>
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.

2 participants