Skip to content

chore: restore release package versions - #152

Closed
AjayThorve wants to merge 1 commit into
NVIDIA:release/0.1from
AjayThorve:fix/restore-release-version
Closed

chore: restore release package versions#152
AjayThorve wants to merge 1 commit into
NVIDIA:release/0.1from
AjayThorve:fix/restore-release-version

Conversation

@AjayThorve

@AjayThorve AjayThorve commented Jul 29, 2026

Copy link
Copy Markdown
Collaborator

Overview

Restore the active release/0.1 branch to a consistent 0.1.0 package
version after the forward merge left its publishable Rust and Python packages
at 0.2.0.

  • Set the Rust workspace, Python SDK, runtime, shared adapter package, and all
    adapter distributions to 0.1.0.
  • Keep all exact internal package constraints aligned at 0.1.0, including
    the root adapter extras.
  • Regenerate the Cargo and uv lockfiles without changing the dependency graph.
  • Breaking changes: none. This is a release-metadata correction only.

Validation:

  • cargo check --workspace --locked
  • cargo fmt --all -- --check
  • just --fmt --check
  • just test-rust
  • just build-python
  • cargo check -p fabric-python --locked
  • just test-python (529 passed, 15 skipped)
  • just wheels (all Fabric distributions produced at 0.1.0)
  • uv run pre-commit run attributions-rust --all-files
  • uv run pre-commit run attributions-python --all-files
  • uv run --no-project python scripts/licensing/license_diff.py --base-ref upstream/release/0.1 (no Rust or Python dependency changes)

Where should the reviewer start?

Start with Cargo.toml and the root pyproject.toml, then confirm the adapter
package metadata and lockfiles carry the same 0.1.0 version.

Related Issues: (use one of the action keywords Closes / Fixes / Resolves / Relates to)

  • Relates to the release/0.1 packaging and publication flow.

  • I confirm this contribution is my own work, or I have the right to submit it under this project's license.

  • I searched existing issues and open pull requests, and this does not duplicate existing work.

Summary by CodeRabbit

  • Chores
    • Updated the project and package release version to 0.1.0.
    • Aligned runtime, adapter, and shared package versions to 0.1.0.
    • Updated optional adapter integrations to use the matching 0.1.0 release.

Signed-off-by: Ajay Thorve <athorve@nvidia.com>
@AjayThorve
AjayThorve requested a review from a team as a code owner July 29, 2026 17:21
@coderabbitai

coderabbitai Bot commented Jul 29, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Enterprise

Run ID: 910217d8-7047-4c12-92b3-0ade5d3c09ec

📥 Commits

Reviewing files that changed from the base of the PR and between 557b629 and 7364fa9.

⛔ Files ignored due to path filters (7)
  • Cargo.lock is excluded by !**/*.lock
  • adapters/claude/uv.lock is excluded by !**/*.lock
  • adapters/codex/uv.lock is excluded by !**/*.lock
  • adapters/common/uv.lock is excluded by !**/*.lock
  • adapters/deepagents/uv.lock is excluded by !**/*.lock
  • adapters/hermes/uv.lock is excluded by !**/*.lock
  • uv.lock is excluded by !**/*.lock
📒 Files selected for processing (7)
  • Cargo.toml
  • adapters/claude/pyproject.toml
  • adapters/codex/pyproject.toml
  • adapters/common/pyproject.toml
  • adapters/deepagents/pyproject.toml
  • adapters/hermes/pyproject.toml
  • pyproject.toml
📜 Recent review details
⏰ Context from checks skipped due to timeout. (14)
  • GitHub Check: Preview docs
  • GitHub Check: Test (Python 3.13, macos-arm64)
  • GitHub Check: Test (Python 3.14, macos-arm64)
  • GitHub Check: Test (Python 3.14, linux-amd64)
  • GitHub Check: Test (Python 3.13, windows-amd64)
  • GitHub Check: Test (Python 3.13, linux-amd64)
  • GitHub Check: Test (Python 3.12, linux-amd64)
  • GitHub Check: Test (Python 3.14, windows-amd64)
  • GitHub Check: Test (Python 3.11, linux-amd64)
  • GitHub Check: Test (Python 3.12, windows-amd64)
  • GitHub Check: Test (Python 3.11, macos-arm64)
  • GitHub Check: Test (Python 3.11, windows-amd64)
  • GitHub Check: Test (Python 3.12, macos-arm64)
  • GitHub Check: Pre-commit
🧰 Additional context used
📓 Path-based instructions (16)
**/*

📄 CodeRabbit inference engine (.agents/skills/karpathy-guidelines/SKILL.md)

**/*: Before implementing, explicitly state assumptions, surface ambiguity and tradeoffs, present multiple interpretations when relevant, and ask for clarification rather than silently deciding or proceeding when requirements are unclear.
Prefer the minimum code needed to solve the requested problem: avoid speculative features, unnecessary abstractions, unrequested flexibility, and handling of impossible scenarios; simplify overcomplicated solutions.
When editing existing code, make surgical changes only: do not modify unrelated code, comments, formatting, or pre-existing dead code; match the existing style, and remove only unused imports, variables, or functions introduced by your changes.
Define verifiable success criteria for each task, such as writing regression tests for bugs and invalid-input tests for validation, then verify the implementation against those criteria. For multi-step work, state a brief plan with a verification check for each step.

**/*: Always spell NVIDIA in all caps; do not use Nvidia, nvidia, nVidia, nVIDIA, or NV.
Use an NVIDIA before a noun, because the name begins with an “en” sound.
Do not add a registered trademark symbol after NVIDIA when referring to the company; use trademark symbols with product names only when required by the document type or legal guidance.
Verify official capitalization, spacing, hyphenation, and spelling for NVIDIA and third-party product names; do not rewrite official product names for grammar or title-case rules.
Precede NVIDIA product names with NVIDIA on first mention when natural and accurate, and link the first mention when the destination helps the reader.
On first use, include the company name and full model qualifier when it helps identify the model; preserve official capitalization and punctuation, and use shorter family names only after establishing the full name.
For learning-oriented and developer content, do not force trademark symbols unless explicitly required; for press, ...

Files:

  • adapters/common/pyproject.toml
  • adapters/hermes/pyproject.toml
  • adapters/claude/pyproject.toml
  • adapters/deepagents/pyproject.toml
  • Cargo.toml
  • pyproject.toml
  • adapters/codex/pyproject.toml
**/*.{rs,toml}

📄 CodeRabbit inference engine (.agents/skills/prepare-pr/SKILL.md)

For any Rust change, run just test-rust and cargo fmt --all -- --check.

For Rust core, CLI, or shared runtime semantic changes, run Rust formatting and tests, and add Python tests when behavior is exposed through the SDK.

Files:

  • adapters/common/pyproject.toml
  • adapters/hermes/pyproject.toml
  • adapters/claude/pyproject.toml
  • adapters/deepagents/pyproject.toml
  • Cargo.toml
  • pyproject.toml
  • adapters/codex/pyproject.toml
**/{Cargo.toml,Cargo.lock,pyproject.toml,package.json}

📄 CodeRabbit inference engine (.agents/skills/prepare-pr/SKILL.md)

For new or updated dependencies, document the functional need, alternatives considered, and why the selected dependency is the narrowest fit.

Files:

  • adapters/common/pyproject.toml
  • adapters/hermes/pyproject.toml
  • adapters/claude/pyproject.toml
  • adapters/deepagents/pyproject.toml
  • Cargo.toml
  • pyproject.toml
  • adapters/codex/pyproject.toml
**/*.{toml,lock}

📄 CodeRabbit inference engine (.agents/skills/validate-change/SKILL.md)

If a manifest or lockfile changes, run the license-diff script against origin/main, review transitive license changes, and run the attributions-rust and attributions-python pre-commit hooks.

Files:

  • adapters/common/pyproject.toml
  • adapters/hermes/pyproject.toml
  • adapters/claude/pyproject.toml
  • adapters/deepagents/pyproject.toml
  • Cargo.toml
  • pyproject.toml
  • adapters/codex/pyproject.toml
**/*.{yml,yaml,toml,lock}

📄 CodeRabbit inference engine (.agents/skills/validate-change/SKILL.md)

For CI or packaging changes, use maintain-ci or maintain-packaging, then run recipes and checks whose behavior changed.

Files:

  • adapters/common/pyproject.toml
  • adapters/hermes/pyproject.toml
  • adapters/claude/pyproject.toml
  • adapters/deepagents/pyproject.toml
  • Cargo.toml
  • pyproject.toml
  • adapters/codex/pyproject.toml
{pyproject.toml,adapters/**/pyproject.toml}

📄 CodeRabbit inference engine (.agents/skills/update-project-version/SKILL.md)

{pyproject.toml,adapters/**/pyproject.toml}: Update the literal project.version in the root setuptools project and every adapter pyproject.toml.
Keep internal exact-version requirements aligned: root nemo-fabric-* == <version> optional dependencies and each adapter's nemo-fabric-adapters-common == <version> dependency.

Files:

  • adapters/common/pyproject.toml
  • adapters/hermes/pyproject.toml
  • adapters/claude/pyproject.toml
  • adapters/deepagents/pyproject.toml
  • pyproject.toml
  • adapters/codex/pyproject.toml
**/*.{rs,py,toml}

📄 CodeRabbit inference engine (.agents/skills/update-project-version/SKILL.md)

When editing version helpers, verify every nemo-fabric-* workspace package through Cargo metadata and reject a static version in python/pyproject.toml.

Files:

  • adapters/common/pyproject.toml
  • adapters/hermes/pyproject.toml
  • adapters/claude/pyproject.toml
  • adapters/deepagents/pyproject.toml
  • Cargo.toml
  • pyproject.toml
  • adapters/codex/pyproject.toml
**/*.{toml,rs,py}

📄 CodeRabbit inference engine (.agents/skills/update-project-version/SKILL.md)

Avoid blind repository-wide replacement of version-like strings; distinguish package-version references from examples and unrelated dependency versions.

Files:

  • adapters/common/pyproject.toml
  • adapters/hermes/pyproject.toml
  • adapters/claude/pyproject.toml
  • adapters/deepagents/pyproject.toml
  • Cargo.toml
  • pyproject.toml
  • adapters/codex/pyproject.toml
**/*.{rs,py,html,md,mdx,toml,yml,yaml,sh,bash}

📄 CodeRabbit inference engine (CONTRIBUTING.md)

All Rust, Python, HTML, Markdown, MDX, TOML, YAML, and shell source files must include the project SPDX copyright and Apache-2.0 license headers using the comment syntax appropriate to each file type.

Files:

  • adapters/common/pyproject.toml
  • adapters/hermes/pyproject.toml
  • adapters/claude/pyproject.toml
  • adapters/deepagents/pyproject.toml
  • Cargo.toml
  • pyproject.toml
  • adapters/codex/pyproject.toml
{adapters/**,examples/**}

⚙️ CodeRabbit configuration file

{adapters/**,examples/**}: Review adapter and example changes for command correctness, config/schema consistency, artifact handling, and compatibility with the public NeMo Fabric contracts.

Files:

  • adapters/common/pyproject.toml
  • adapters/hermes/pyproject.toml
  • adapters/claude/pyproject.toml
  • adapters/deepagents/pyproject.toml
  • adapters/codex/pyproject.toml
{Cargo.toml,python/pyproject.toml,pyproject.toml}

📄 CodeRabbit inference engine (.agents/skills/maintain-packaging/SKILL.md)

Keep Rust workspace/package metadata and Python/maturin package metadata internally consistent, including package names, versions, import paths, and module names.

Files:

  • Cargo.toml
  • pyproject.toml
{Cargo.toml,Cargo.lock,pyproject.toml,uv.lock,python/pyproject.toml}

📄 CodeRabbit inference engine (.agents/skills/maintain-packaging/SKILL.md)

{Cargo.toml,Cargo.lock,pyproject.toml,uv.lock,python/pyproject.toml}: Keep workspace, Python, and lockfile dependency versions aligned where required, and review both direct and transitive dependency changes from resolved lockfiles.
Inspect resolved transitive licenses, explicitly surface UNKNOWN, non-SPDX/custom, proprietary, source-available, copyleft, or network-copyleft terms, and route unresolved licensing questions to dependency approvers with distribution and linkage context.
Document the functional need, alternatives considered, rationale for the selected dependency, and any unresolved licensing question when introducing dependencies.

Files:

  • Cargo.toml
  • pyproject.toml
{Cargo.toml,pyproject.toml,python/pyproject.toml}

📄 CodeRabbit inference engine (.agents/skills/maintain-packaging/SKILL.md)

Before adding a dependency, prefer the standard library, an existing dependency, or a small local implementation when appropriate; otherwise select a maintained, narrow-fit dependency with clear SPDX metadata and a permissive license where possible.

Files:

  • Cargo.toml
  • pyproject.toml
{Cargo.toml,Cargo.lock,pyproject.toml,uv.lock}

📄 CodeRabbit inference engine (.agents/skills/maintain-packaging/SKILL.md)

After updating manifests or lockfiles, run uv run --no-project python scripts/licensing/license_diff.py --base-ref origin/main and review added packages and license changes.

Files:

  • Cargo.toml
  • pyproject.toml
{pyproject.toml,python/pyproject.toml,Cargo.toml,docs/package.json,.github/workflows/*.yml,justfile}

📄 CodeRabbit inference engine (.agents/skills/maintain-packaging/SKILL.md)

Reflect public packaging changes in release-facing documentation and ensure CI references the same package names and commands used by local workflows.

Files:

  • Cargo.toml
  • pyproject.toml
Cargo.toml

📄 CodeRabbit inference engine (.agents/skills/update-project-version/SKILL.md)

Cargo.toml: Use Cargo.toml [workspace.package].version as the source of truth for Rust workspace and Python build versioning.
Keep Cargo.toml [workspace.dependencies].nemo-fabric-core.version aligned with the workspace version.
Use valid Cargo SemVer in Cargo metadata and equivalent PEP 440 syntax in explicit Python metadata for prerelease or build-metadata versions.

Files:

  • Cargo.toml
🔇 Additional comments (7)
Cargo.toml (1)

17-23: LGTM!

adapters/common/pyproject.toml (1)

12-12: LGTM!

pyproject.toml (1)

12-12: LGTM!

Also applies to: 28-28, 41-49, 58-58

adapters/claude/pyproject.toml (1)

12-12: LGTM!

Also applies to: 28-28

adapters/codex/pyproject.toml (1)

12-12: LGTM!

Also applies to: 28-28

adapters/deepagents/pyproject.toml (1)

12-12: LGTM!

Also applies to: 28-28

adapters/hermes/pyproject.toml (1)

12-12: LGTM!

Also applies to: 29-29


Walkthrough

Package metadata and dependency pins are changed from 0.2.0 to 0.1.0 across the Rust workspace and Python packages.

Changes

Release version alignment

Layer / File(s) Summary
Workspace version declarations
Cargo.toml
Rust workspace metadata and the nemo-fabric-core dependency are set to 0.1.0.
Python package and dependency pins
pyproject.toml, adapters/*/pyproject.toml
Python package versions and runtime, adapter, and common-package dependency pins are aligned to 0.1.0.

Estimated code review effort: 1 (Trivial) | ~3 minutes

Possibly related PRs

  • NVIDIA/NeMo-Fabric#151: Updates overlapping release version and dependency pins across the same Rust and Python manifests.
🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed Follows Conventional Commits and accurately summarizes the version reset.
Description check ✅ Passed Includes all required sections with clear overview, reviewer guidance, validation, and confirmations.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
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.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

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

@github-actions

Copy link
Copy Markdown

@AjayThorve AjayThorve closed this Jul 29, 2026
@AjayThorve
AjayThorve deleted the fix/restore-release-version branch July 29, 2026 17:48
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