refactor: replace hardcoded package names with readDir-based discovery#92
Merged
cameronraysmith merged 17 commits intomainfrom Feb 18, 2026
Merged
refactor: replace hardcoded package names with readDir-based discovery#92cameronraysmith merged 17 commits intomainfrom
cameronraysmith merged 17 commits intomainfrom
Conversation
…covery Replace hasFunctional/hasCli pathExists checks and hardcoded packageWorkspaces entries with builtins.readDir-based discovery. Packages are classified as maturin (Cargo.toml present) or pure Python automatically. Expose packageNames, maturinPackageNames, purePackageNames, and hasMaturinPackages via _module.args for downstream consumers (devshell.nix, containers.nix).
Rust recipes (cargo-build, cargo-test, cargo-clippy, cargo-nextest, cargo-check) now require an explicit package parameter instead of defaulting to pnt-cli.
Container recipes (container-build-production, container-load-production, container-push-production) now require an explicit CONTAINER parameter instead of defaulting to pnt-cli.
Annotate each package with a maturin boolean based on Cargo.toml presence in the package directory.
Filters list-packages-json to only maturin-enabled packages.
Probe for Cargo.toml in each package directory during CI discovery and include the result as a boolean is_maturin field in the JSON matrix output. Downstream jobs can use this to conditionally route maturin packages to Rust-specific build steps.
…MaturinPackages Consume hasMaturinPackages from _module.args exposed by python.nix instead of using builtins.pathExists ../packages/pnt-cli. Removes the last hardcoded package name reference from devshell.nix.
…ackage discovery Discover maturin packages by scanning packages/ for Cargo.toml presence, mirroring the discovery pattern in python.nix. Each discovered maturin package automatically gets a production container definition. Removes the hardcoded hasCli pathExists check and pnt-cli container definition.
Consolidate three per-package test-python check conditions into a single regex pattern that matches all test-python matrix job names generically.
…ntext Merge .1 and .2 scope so rename and Nix attribute updates happen atomically. Update all 5 issue descriptions with full rename/leave classification derived from sciexp/data fix commit analysis.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.