Repository navigation
Permalink
Choose a base ref
{{ refName }}
default
Choose a head ref
{{ refName }}
default
Comparing changes
Choose two branches to see what’s changed or to start a new pull request.
If you need to, you can also or
learn more about diff comparisons.
Open a pull request
Create a new pull request by comparing changes across two branches. If you need to, you can also .
Learn more about diff comparisons here.
base repository: pypa/virtualenv
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 21.7.10
Could not load branches
Nothing to show
Loading
Could not load tags
Nothing to show
{{ refName }}
default
Loading
...
head repository: pypa/virtualenv
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 21.7.11
Could not load branches
Nothing to show
Loading
Could not load tags
Nothing to show
{{ refName }}
default
Loading
- 12 commits
- 26 files changed
- 3 contributors
Commits on Sep 16, 2026
-
Configuration menu - View commit details
-
Copy full SHA for 903d05d - Browse repository at this point
Copy the full SHA 903d05dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 0c2fcaf - Browse repository at this point
Copy the full SHA 0c2fcafView commit details -
Configuration menu - View commit details
-
Copy full SHA for 18a239d - Browse repository at this point
Copy the full SHA 18a239dView commit details -
Configuration menu - View commit details
-
Copy full SHA for e13bb21 - Browse repository at this point
Copy the full SHA e13bb21View commit details
Commits on Sep 17, 2026
-
Configuration menu - View commit details
-
Copy full SHA for 13ed8cc - Browse repository at this point
Copy the full SHA 13ed8ccView commit details -
Configuration menu - View commit details
-
Copy full SHA for 7c1991e - Browse repository at this point
Copy the full SHA 7c1991eView commit details -
Configuration menu - View commit details
-
Copy full SHA for a045a14 - Browse repository at this point
Copy the full SHA a045a14View commit details -
Configuration menu - View commit details
-
Copy full SHA for 469dd28 - Browse repository at this point
Copy the full SHA 469dd28View commit details -
Configuration menu - View commit details
-
Copy full SHA for a30f995 - Browse repository at this point
Copy the full SHA a30f995View commit details -
🔧 chore(test): add opt-in Atheris fuzz harness (#3246)
OpenSSF Scorecard's Fuzzing check scores 0 for this repo. Its detection only checks for `import atheris` (or a ClusterFuzzLite/OSS-Fuzz setup) anywhere in the tree, so this adds a real target rather than a token import that would move the number without doing anything. `NushellActivator.quote` and `PowerShellActivator.quote` are hand-rolled escaping schemes over arbitrary strings pulled from paths and prompts: Nushell counts the longest run of `#` and wraps in one more than that, PowerShell doubles single quotes. Both take untrusted-shaped input, and a broken escape is a correctness bug worth catching, not just a lint target. Each harness in `tasks/fuzz_*.py` recomputes the expected output from the escaping rule on its own and asserts equality against the real function, so it fails on any scheme violation, not only on a crash. I ran both assertions against 200k+ randomized adversarial strings (embedded quotes, `#` runs, control characters, Unicode) against the real functions before wiring them into Atheris. Atheris only ships prebuilt wheels for Linux + CPython 3.12-3.14 - it doesn't build on this machine at all, since Apple Clang doesn't ship libFuzzer. It lives in its own `fuzz` dependency group with a marker matching that exact combination, so nothing else ever tries to install it or falls into a doomed source build. `tox -e fuzz` is opt-in and outside `env_list`, so no existing environment or CI job changes.
Configuration menu - View commit details
-
Copy full SHA for 787d1c9 - Browse repository at this point
Copy the full SHA 787d1c9View commit details -
📝 docs(readme): add OpenSSF Best Practices badge (#3248)
The README carries an OpenSSF Scorecard badge but not the companion Best Practices one, so a reader has no signal about the self-certification work behind the [bestpractices.dev project](https://www.bestpractices.dev/projects/14689). The Scorecard `CII-Best-Practices` check reads that project directly, which makes it part of the same security-posture story the neighbouring badge already tells. The badge image reflects the live tier, so it moves from `in progress` to `passing` on its own once the remaining criteria are answered. No workflow or packaging change is involved.
Configuration menu - View commit details
-
Copy full SHA for 68ee5a3 - Browse repository at this point
Copy the full SHA 68ee5a3View commit details -
Configuration menu - View commit details
-
Copy full SHA for 73e352a - Browse repository at this point
Copy the full SHA 73e352aView commit details
Loading
This comparison is taking too long to generate.
Unfortunately it looks like we can’t render this comparison for you right now. It might be too big, or there might be something weird with your repository.
You can try running this command locally to see the comparison on your machine:
git diff 21.7.10...21.7.11