chore: add explicit package include lists to all crates. - #1146
Conversation
|
What are the files that were included that no longer are? |
|
just two files, both in idna:
everything else packages the exact same file list as before. all the test fixtures still ship, so running the tests from the tarball still. |
|
Seems fine. If this is a broader effort I would highly recommend including the list of removed files in the PR body: crates get asked a lot to reinclude files (for e.g. Debian), so it's not a straightforward call each time, there are tradeoffs. Listing them lets the crate author make a quick decision. |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #1146 +/- ##
=======================================
Coverage ? 86.93%
=======================================
Files ? 26
Lines ? 5264
Branches ? 0
=======================================
Hits ? 4576
Misses ? 688
Partials ? 0 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
as part of an e18e effort to slim down published crates across the Rust ecosystem, this PR adds explicit
includelists to all published crates so the.cratefiles no longer ship dev-only assets, and future additions to the crate directories (CI configs, fuzz corpora, bench data) can't silently land in the tarballs.we left tests due to distro packagers run these crates' tests from the crates.io tarball Debian's debcargo configs for
url,idna, anddata-urlall execute them in autopkgtest. Stripping tests wouldn't fail their builds (cargo strips the test targets from the published manifest), it would silently drop their test coverage.idna/tests/IdnaTestV2-Unicode16.txt(760 KB) is never read by any test. CI copies it overIdnaTestV2.txtto test against the latest Unicode, and CI runs from the repo checkout, not the package. every other fixture isinclude_str!'d by a live test. idna's bench harness is also no longer shipped.Total: 381.0 KB → 276.0 KB (−28%) and since
idnais a dependency ofurl, the −42% is paid by nearly every consumer ofurl.Note
sizes are compressed
.cratetarballs fromcargo package. all crates passcargo packageverify builds, and the full workspace test suite (including the 12k-case UTS-46 suite that readsIdnaTestV2.txt) passes unchanged.