-
Notifications
You must be signed in to change notification settings - Fork 483
Reduce crate size by excluding fuzz/ and record/ #1281
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
+1
−1
Conversation
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
The fuzz/ and record/ directories are about 2MiB, and are not used by the end user. This removes them from the crate for future publishes. Also, this avoids risk of an [xz-style attack] leveraging the binary files produced by fuzzing, where malicious code could be slipped in past review through binary test data. [zx-style attack]: https://en.wikipedia.org/wiki/XZ_Utils_backdoor
BurntSushi
BurntSushi
approved these changes
Aug 23, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks!
erickt
added a commit
to erickt/regex
that referenced
this pull request
Aug 25, 2025
I missed more binary test data `tests/fuzz/` in rust-lang#1281, which should remove another 56KiB from the regex crate.
weiznich
added a commit
to GiGainfosystems/regex
that referenced
this pull request
Oct 14, 2025
During a dependency review I noticed that regex-automata includes binary fuzzing and test data. These files are not required for building regex-automata as dependency and make it a hard to review the code. This is similar to rust-lang#1281 This commit introduces a `include` directive in the `Cargo.toml` file to explicitly include only those files required to build `regex-automata`. This excludes the test directory and also reduces the size of the published crate from 122 files, 2.6MiB (610.6KiB compressed) to 77 files, 2.5MiB (584.0KiB compressed) which results in a 150 GB/month traffic reduction for crates.io assuming the current 6 million/month downloads and the difference in the compressed package size.
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.
Uh oh!
There was an error while loading. Please reload this page.
The fuzz/ and record/ directories are about 2MiB, and are not used by the end user. This removes them from the crate for future publishes.
Also, this avoids risk of an xz-style attack leveraging the binary files produced by fuzzing, where malicious code could be slipped in past review through binary test data.