Skip to content
Permalink

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
Choose a base ref
...
head repository: pypa/virtualenv
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 21.7.11
Choose a head ref
  • 12 commits
  • 26 files changed
  • 3 contributors

Commits on Sep 16, 2026

  1. Configuration menu
    Copy the full SHA
    903d05d View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    0c2fcaf View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    18a239d View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    e13bb21 View commit details
    Browse the repository at this point in the history

Commits on Sep 17, 2026

  1. Configuration menu
    Copy the full SHA
    13ed8cc View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    7c1991e View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    a045a14 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    469dd28 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    a30f995 View commit details
    Browse the repository at this point in the history
  6. 🔧 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.
    gaborbernat authored Sep 17, 2026
    Configuration menu
    Copy the full SHA
    787d1c9 View commit details
    Browse the repository at this point in the history
  7. 📝 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.
    gaborbernat authored Sep 17, 2026
    Configuration menu
    Copy the full SHA
    68ee5a3 View commit details
    Browse the repository at this point in the history
  8. release 21.7.11

    gaborbernat committed Sep 17, 2026
    Configuration menu
    Copy the full SHA
    73e352a View commit details
    Browse the repository at this point in the history
Loading