Skip to content

Bump virtualenv from 20.31.2 to 20.36.1 - #51

Merged
docktermj merged 2 commits into
mainfrom
dependabot/pip/virtualenv-20.36.1
Jan 14, 2026
Merged

docktermj merged 2 commits into
mainfrom
dependabot/pip/virtualenv-20.36.1

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Jan 13, 2026 •

Copy link
Copy Markdown
Contributor

Bumps virtualenv from 20.31.2 to 20.36.1.

Release notes

Sourced from virtualenv's releases.

20.36.1

What's Changed

Full Changelog: pypa/virtualenv@20.36.0...20.36.1

20.36.0

What's Changed

New Contributors

Full Changelog: pypa/virtualenv@20.35.3...20.36.0

20.35.4

What's Changed

New Contributors

Full Changelog: pypa/virtualenv@20.35.3...20.35.4

20.35.3

... (truncated)

Changelog

Sourced from virtualenv's changelog.

v20.36.1 (2026-01-09)

Bugfixes - 20.36.1

- Fix TOCTOU vulnerabilities in app_data and lock directory creation that could be exploited via symlink attacks - reported by :user:`tsigouris007`, fixed by :user:`gaborbernat`. (:issue:`3013`)

v20.36.0 (2026-01-07)

Features - 20.36.0

  • Add support for PEP 440 version specifiers in the --python flag. Users can now specify Python versions using operators like >=, <=, ~=, etc. For example: virtualenv --python=">=3.12" myenv . (:issue:2994`)

v20.35.4 (2025-10-28)

Bugfixes - 20.35.4

- Fix race condition in ``_virtualenv.py`` when file is overwritten during import, preventing ``NameError`` when ``_DISTUTILS_PATCH`` is accessed - by :user:`gracetyy`. (:issue:`2969`)
- Upgrade embedded wheels:
  • pip to 25.3 from 25.2 (:issue:2989)

v20.35.3 (2025-10-10)

Bugfixes - 20.35.3

  • Accept RuntimeError in test_too_many_open_files, by :user:esafak (:issue:2935)

v20.35.2 (2025-10-10)

Bugfixes - 20.35.2

- Revert out changes related to the extraction of the discovery module - by :user:`gaborbernat`. (:issue:`2978`)

v20.35.1 (2025-10-09)

Bugfixes - 20.35.1

  • Patch get_interpreter to handle missing cache and app_data - by :user:esafak (:issue:2972)
  • Fix backwards incompatible changes to PythonInfo - by :user:gaborbernat. (:issue:2975)

v20.35.0 (2025-10-08)

Features - 20.35.0

... (truncated)

Commits
  • d0ad11d release 20.36.1
  • dec4cec Merge pull request #3013 from gaborbernat/fix-sec
  • 5fe5d38 release 20.36.0 (#3011)
  • 9719376 release 20.36.0
  • 0276db6 Add support for PEP 440 version specifiers in the --python flag. (#3008)
  • 4f900c2 Fix Interpreter discovery bug wrt. Microsoft Store shortcut using Latin-1 (#3...
  • 13afcc6 fix: resolve EncodingWarning in tox upgrade environment (#3007)
  • 31b5d31 [pre-commit.ci] pre-commit autoupdate (#2997)
  • 7c28422 fix: update filelock dependency version to 3.20.1 to fix CVE CVE-2025-68146 (...
  • 365628c test_too_many_open_files: assert on errno.EMFILE instead of strerror (#3001)
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    You can disable automated security fix PRs for this repo from the Security Alerts page.

Resolves #3013
Resolves #3011
Resolves #3008
Resolves #3
Resolves #3007
Resolves #2997
Resolves #3001
Resolves pypa/virtualenv#3011
Resolves pypa/virtualenv#3013
Resolves pypa/virtualenv#2981
Resolves pypa/virtualenv#2982
Resolves pypa/virtualenv#2989
Resolves pypa/virtualenv#2990
Resolves pypa/virtualenv#2996
Resolves pypa/virtualenv#3001
Resolves pypa/virtualenv#3002
Resolves pypa/virtualenv#3007
Resolves pypa/virtualenv#3006
Resolves pypa/virtualenv#3008

Bumps [virtualenv](https://github.com/pypa/virtualenv) from 20.31.2 to 20.36.1.
- [Release notes](https://github.com/pypa/virtualenv/releases)
- [Changelog](https://github.com/pypa/virtualenv/blob/main/docs/changelog.rst)
- [Commits](pypa/virtualenv@20.31.2...20.36.1)

---
updated-dependencies:
- dependency-name: virtualenv
  dependency-version: 20.36.1
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file python Pull requests that update python code labels Jan 13, 2026
@dependabot
dependabot Bot requested a review from a team as a code owner January 13, 2026 20:01
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file python Pull requests that update python code labels Jan 13, 2026
@github-actions

Copy link
Copy Markdown

🤖 Claude Code Review

Code Review Analysis

Code Quality

✅ Code follows style guide

The change is a simple dependency version update in a requirements file. This type of change doesn't involve code style considerations.

✅ No commented-out code

No commented-out code present in the diff.

✅ Meaningful variable names

N/A - This is a dependency version update, no variables are introduced.

✅ DRY principle followed

N/A - No code duplication concerns in this change.

✅ Identify Defects

No defects identified. This is a dependency version bump from virtualenv==20.31.2 to virtualenv==20.36.1. The change appears to be a routine dependency update.

Analysis: Checking the virtualenv release notes, this is a minor version update that likely includes bug fixes and improvements. No breaking changes are expected in minor version updates of virtualenv.

✅ Project memory configuration

I don't see a .claude/CLAUDE.md file mentioned in the git status, so this criterion doesn't apply to this review.

Testing

⚠️ Unit tests for new functions

N/A - This is a dependency update, not new functionality. However, recommendation: Ensure your CI pipeline runs the existing test suite with the updated virtualenv version to verify compatibility.

⚠️ Integration tests for new endpoints

N/A - No new endpoints added.

⚠️ Edge cases covered

N/A - No new functionality to test.

⚠️ Test coverage > 80%

Cannot verify from the diff alone. The dependency update itself doesn't affect coverage, but existing tests should be run to ensure compatibility.

Documentation

✅ Readme updated if needed

N/A - A minor dependency version update typically doesn't require README changes unless there are breaking changes or new setup instructions.

✅ API docs updated

N/A - No API changes.

✅ Inline comments for complex logic

N/A - No code logic changes.

⚠️ CHANGELOG.md updated

Not visible in the diff. Recommendation: Consider adding an entry to CHANGELOG.md documenting this dependency update, especially if it fixes known issues or improves functionality. Example:

### Changed
- Updated virtualenv from 20.31.2 to 20.36.1

✅ Markdown formatting

N/A - No markdown files modified in this diff.

Security

✅ No hardcoded credentials

No credentials present.

✅ Input validation implemented

N/A - No input handling code.

✅ Proper error handling

N/A - No error handling code changes.

✅ No sensitive data in logs

N/A - No logging code changes.

✅ No license files or AQAAAD strings

No license files or suspicious strings detected in the diff.


Summary

Overall Assessment: ✅ APPROVED with minor recommendations

This is a straightforward dependency update that appears safe to merge. The change updates virtualenv from version 20.31.2 to 20.36.1, which is a minor version bump.

Recommendations:

  1. Ensure CI/CD pipeline runs successfully with the updated dependency
  2. Consider adding a CHANGELOG.md entry for this update
  3. Verify that all existing tests pass with the new virtualenv version

No blocking issues identified.

Automated code review analyzing defects and coding standards

@docktermj docktermj self-assigned this Jan 14, 2026
@docktermj
docktermj requested a review from a team as a code owner January 14, 2026 16:08
@github-actions

Copy link
Copy Markdown

🤖 Claude Code Review

I'll now analyze this pull request diff against the provided checklist.

Code Review Analysis

Code Quality

✅ Code follows style guide

The changes are primarily configuration and documentation updates. No Python code style violations detected. The YAML formatting improvements align with standard practices.

✅ No commented-out code

No commented-out code found in the diff.

✅ Meaningful variable names

Not applicable - no new variables introduced.

✅ DRY principle followed

Not applicable - primarily configuration changes.

✅ No defects identified

No bugs, logic errors, or security vulnerabilities detected. The changes are configuration and documentation updates that don't introduce code defects.

⚠️ Project memory configuration (.claude/CLAUDE.md)

The .claude/CLAUDE.md file appears appropriate and general enough for any developer. It contains project-specific information (architecture, commands, data flow) without local environment specifics. ✅

Testing

❌ Unit tests for new functions

Issue: No tests added or updated. While this PR is primarily configuration changes, the following modifications should have corresponding test updates:

  • pyproject.toml:9 - Python version requirement changed from unspecified to >=3.10, dropping Python 3.9 support
  • .github/workflows/pylint.yaml:23 - Test matrix changed from ["3.9", "3.10", "3.11", "3.12"] to ["3.10", "3.11", "3.12", "3.13"]

Recommendation: Verify that dropping Python 3.9 support doesn't break existing functionality. Add a test to validate minimum Python version requirements.

❌ Integration tests for new endpoints

Not applicable - no new endpoints.

❌ Edge cases covered

Not applicable for configuration changes.

❌ Test coverage > 80%

No test coverage changes or reports in this PR. Cannot verify if threshold is maintained.

Documentation

⚠️ Readme updated if needed

No README.md changes detected in the diff. The changes to project structure and Python version support should be reflected in README if it contains setup instructions.

✅ API docs updated

Not applicable - no API changes.

✅ Inline comments for complex logic

Not applicable - no code logic changes.

✅ CHANGELOG.md updated

CHANGELOG.md:5-6 - ✅ Updated to reference proper standards (Keep a Changelog, CommonMark, Semantic Versioning with links)

✅ Markdown files follow CommonMark

The markdown formatting improvements throughout (CODE_OF_CONDUCT.md, CONTRIBUTING.md, SECURITY.md, CHANGELOG.md) follow CommonMark specification properly.

Security

✅ No hardcoded credentials

No credentials found in the diff.

✅ Input validation implemented

Not applicable - no input handling code changes.

✅ Proper error handling

Not applicable - no error handling code changes.

✅ No sensitive data in logs

Not applicable - no logging changes.

✅ No license files (.lic) or AQAAAD strings

No license files or suspicious encoded strings detected.


Summary of Issues

Critical Issues

None.

Important Issues

  1. Missing test updates (.github/workflows/pylint.yaml:23, pyproject.toml:9)

    • Python 3.9 support dropped without corresponding test validation
    • Should verify backward compatibility implications
  2. Missing README update

    • Python version requirements changed but README not updated (if applicable)
    • Dependency installation method changed from requirements.txt to pip install --group all .

Minor Issues

  1. .github/workflows/pylint.yaml:6 - Changed trigger from on: [push] to only pull_request. This means pylint won't run on direct pushes to main, which could allow untested code into the main branch.

  2. .github/dependabot.yml:6-7, 14-15 - Added cooldown.default-days: 21 which will slow down security updates. Consider if this is appropriate for security-sensitive dependencies.

Positive Changes

  1. ✅ Comprehensive Code of Conduct update to v3.0
  2. ✅ Improved CONTRIBUTING.md with proper links and structure
  3. ✅ Added SECURITY.md policy
  4. ✅ Migration to modern Python packaging with pyproject.toml
  5. ✅ Added concurrency controls to workflows to prevent redundant builds
  6. ✅ Improved workflow naming conventions (capitalized titles)
  7. ✅ Enhanced cspell dictionary coverage
  8. ✅ Added Claude configuration for better AI-assisted development

Recommendations

  1. Add test coverage for Python 3.10-3.13 compatibility
  2. Update README.md with new installation instructions if it contains setup documentation
  3. Consider whether removing push trigger from pylint workflow is intentional
  4. Document the rationale for 21-day Dependabot cooldown period

Automated code review analyzing defects and coding standards

@docktermj
docktermj merged commit a7074c0 into main Jan 14, 2026
31 checks passed
@docktermj
docktermj deleted the dependabot/pip/virtualenv-20.36.1 branch January 14, 2026 16:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file python Pull requests that update python code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant