Repository navigation
Move the npm, PyPI and NuGet wrappers under packaging/ - #282
Conversation
There was a problem hiding this comment.
This change moves the npm, PyPI, and NuGet packaging directories under a unified packaging/ directory, updating all references in documentation, workflow YAMLs, and configuration files to match the new structure. The update is strictly a path refactor: no logic or build process changes, only path adjustments and documentation clarifications. The pyproject.toml manifest-path is updated to reflect the new relative location. All release workflows (npm, nuget, pypi, github) now reference the new packaging/ paths for their respective artifacts and scripts. Documentation in .agents/AGENTS.md and the sigit-code-release skill is updated to describe and reference the new layout. No logic changes are introduced, and all path changes appear consistent and correct. Previous findings about path references are addressed by this update.
Automated review by siGit Code Review · commit fc4923a · see the review dashboard
Each distribution channel now has its own directory under packaging/, next to aur/, winget/, windows/ and assurance-runner/, and nfpm.yaml moves into packaging/linux/ with the rest of the Linux build. The repo root is left with crates/, docs/ and examples/. The issue suggested dist/. packaging/ already existed, and dist/ is where maturin and dotnet pack write their output and what the stock Node and Python .gitignore templates ignore, so it would look like build output. Paths updated in the release workflows, pyproject's manifest-path, AGENTS.md and the release skill. The render scripts and csproj only use paths relative to their own directory, so they move as they are. Closes #251 Co-Authored-By: Claude Opus 5.5 <[email protected]>
fc4923a to
9eacfd4
Compare
There was a problem hiding this comment.
This change moves the npm, PyPI, and NuGet packaging directories under a unified packaging/ directory, updating all references in documentation and CI workflows to match the new structure. The move is git-aware, preserving file history. Workflow scripts, artifact paths, and documentation now refer to packaging/npm, packaging/pypi, and packaging/nuget instead of their previous top-level locations. The pyproject.toml manifest-path is updated to reflect the new relative path to the Rust CLI crate. The documentation and skill instructions are updated to describe the new layout and rationale for using packaging/ instead of dist/. No functional logic changes are introduced; all changes are path and documentation updates to support the new directory structure.
Automated review by siGit Code Review · commit 9eacfd4 · see the review dashboard
Closes #251. Stacked on #281, so this PR targets
feature/linux-glibc-floor. Merge #281 first, and GitHub will retarget this one todevelopment.Everything that isn't the Rust code now lives under
packaging/, one directory per channel:Why
packaging/and notdist/packaging/already held six of the channels, so this finishes that layout instead of starting a second top-level directory.dist/is also the conventional build-output directory: maturin anddotnet packhere already write topypi/distandnuget/dist, and GitHub's stock Node and Python.gitignoretemplates ignoredist/. Adist/full of hand-written source looks like something you canrm -rf.packaging/is also what Debian, Fedora and most distro maintainers would look for.What changed
git mvonly for the files, so history follows them.pyproject.toml:manifest-pathgoes from../crates/cli/Cargo.tomlto../../crates/cli/Cargo.toml.cd packaging/npm,../../target/...,cd packaging/npm/sigit.nuget/...path, includingdist/and the generatedNuGet.Config.working-directory: packaging/pypiand the artifact paths.packaging/linux/nfpm.yaml. Itssrc:paths are relative to the working directory, not to the config file, so they don't change..agents/AGENTS.mdand thesigit-code-releaseskill now describe the layout and use the new paths.The npm render scripts and the csproj only resolve paths relative to their own directory, so they need no changes.
Testing
@getsigit/sigit-linux-x64and the base as@getsigit/sigit1.7.7.manifest-pathresolves tocrates/cli/Cargo.toml. I couldn't runmaturin sdistlocally (no pip/venv on this machine).The release workflows only run on a tag, so the next release is the first full run of the new paths. If you want that checked before tagging, the PyPI wheel build is the one I'd watch, since maturin-action runs it inside a container.