Skip to content

Scope the crate with an include list - #8

Merged
0xFantomMenace merged 1 commit into
mainfrom
fix/package-scope
Sep 23, 2026
Merged

0xFantomMenace merged 1 commit into
mainfrom
fix/package-scope

Conversation

@0xFantomMenace

@0xFantomMenace 0xFantomMenace commented Sep 19, 2026 •

Copy link
Copy Markdown
Member

The crate used an exclude denylist, so any new file in the directory would ship by default.

This change replaces it with an include allowlist. Cargo ignores exclude once include is set, and include does not consult .gitignore, so examples are named file by file: a directory pattern would also pick up untracked local files. A Package contents CI job plants untracked files at the root, in src/ and in examples/, and fails unless every file in the crate is tracked source or metadata cargo generates. Agent working directories are ignored.

Test plan

  • cargo package --list with untracked files planted lists only tracked sources, Cargo.lock, Cargo.toml.orig and .cargo_vcs_info.json
  • Loosening the include list to directory patterns makes the check fail
  • CI green

Replace the exclude denylist with an include allowlist naming exactly what
ships. Cargo ignores exclude once include is set and include does not consult
.gitignore, so examples are listed file by file. A CI job plants untracked
files and fails unless every file in the crate is tracked source or cargo
metadata. Agent working directories are ignored.
@0xFantomMenace
0xFantomMenace merged commit f9c0210 into main Sep 23, 2026
1 check passed
@0xFantomMenace
0xFantomMenace deleted the fix/package-scope branch September 23, 2026 02:36
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.

1 participant