Skip to content

Releases: pypa/pipenv

Release v2026.2.1

19 Mar 15:09

Choose a tag to compare

🤖 AI-Generated Changelog

Fixed

  • Always restore PTY echo state via try/finally in fork_compat, ensuring terminal echo is reliably re-enabled even if an error occurs during subprocess execution

🔗 Full Changelog: v2026.2.0...v2026.2.1

Release v2026.2.0

18 Mar 22:26

Choose a tag to compare

🤖 AI-Generated Changelog

Added

  • Support sequential script execution via TOML array syntax in [scripts] section
  • Add --all flag to install and sync commands to install all Pipfile categories
  • Support PIPENV_DEFAULT_CATEGORIES environment variable for configuring default package categories
  • Allow venv_in_project to be set in the [pipenv] section of Pipfile
  • Support inline environment variable assignments in pipenv run
  • Add support for Python Install Manager (pymanager) on Windows

Fixed

  • Respect extra-index-url and fix trusted-host handling in pip.conf
  • Show download progress during locking phase
  • Fix atomic writes for lockfile cache path in bad lock situations
  • Fix --no-binary option not being stored in Pipfile
  • Fix lockfile storing file URLs instead of version strings for index-resolved packages
  • Fix resolver to use Pipfile Python version for marker evaluation
  • Fix --dry-run help text for the update command
  • Preserve environment variable references in credentials during update
  • Fix pipenv --rm removing the wrong virtualenv when .venv directory coexists with WORKON_HOME venv
  • Recreate virtualenv when --python version differs from the existing virtual environment
  • Fix subdependency local file path resolution
  • Fix outdated checks for file-locked packages
  • Respect environment markers in install -r to match sync behavior
  • Fix PermissionError on Windows when scanning restricted PATH entries
  • Preserve file:// URL in Pipfile and fix local editable path/file key handling
  • Fix uninstall --all no longer wiping Pipfile.lock
  • Use path key for local dependencies and file key for remote URLs in Pipfile entries
  • Fix broken version comparison in system Python version compatibility check
  • Fix PowerShell full .exe path recognition in pipenv activate on Windows
  • Suppress PTY echo of setup commands in fork_compat
  • Improve dependency conflict error messages
  • Clean up orphaned virtualenvs after integration tests
  • Fix inline env var Pipfile quoting for shlex compatibility

Changed

  • Update pythonfinder vendored dependency to version 3.0.2
  • Expand platform marker support documentation with platform_machine examples
  • Bump black from 24.3.0 to 26.3.1

🔗 Full Changelog: v2026.1.0...v2026.2.0

Release v2026.1.0

13 Mar 20:01

Choose a tag to compare

🤖 AI-Generated Changelog

Fixed

  • Fixed regression in handling of packaging version strings with prereleases
  • Fixed regression with editable dependencies and extras in lock file resolution
  • Fixed path output displaying an additional leading forward slash
  • Fixed MD5 usage to support FIPS-enabled Python environments
  • Restored max retry behavior for install operations
  • Improved install failure messaging with dependency context

Changed

  • Vendored pip 26.0.1 with updated compatibility patches
  • Updated SearchScope dataclass to use slots=True parameter, resolving __slots__ conflict with default values
  • Bumped virtualenv from 20.35.4 to 20.36.1
  • Bumped urllib3 from 2.6.0 to 2.6.3
  • Clarified path dependency default install behavior in documentation
  • Updated locked dependencies

Security

  • Fixed MD5 checksum handling to use FIPS-compliant alternatives in restricted Python environments

🔗 Full Changelog: v2026.0.3...v2026.1.0

Release v2026.0.3

17 Dec 01:52

Choose a tag to compare

What's Changed

  • Fix pipenv shell --quiet to actually suppress output by @matteius in #6500
  • Exclude docs directory from package distribution by @matteius in #6501
  • Fix zsh parse error in pipenv shell command by @matteius in #6504

Full Changelog: v2026.0.2...v2026.0.3

Release v2026.0.2

10 Dec 23:38

Choose a tag to compare

What's Changed

  • Fix: Allow shell builtins to work with pipenv run by @matteius in #6487
  • Fix: Allow packages with only prerelease versions to be installed by @matteius in #6486
  • Fix: Auto-enable fancy shell mode when Oh My Posh is detected by @matteius in #6488
  • Fix: Preserve environment markers when importing requirements.txt by @matteius in #6489
  • Fix: Unset COLUMNS and LINES before spawning pipenv shell by @matteius in #6490
  • Fix: Use sys.executable -m pipenv instead of bare pipenv command by @matteius in #6491
  • Improve error messages for build wheel failures by @matteius in #6492
  • Add 'pipenv activate' command for current shell activation by @matteius in #6494
  • Docs: Update installation guide for PEP 668 compatibility by @matteius in #6495
  • Add --no-lock flag to 'pipenv requirements' command by @matteius in #6496
  • Add PIPENV_PROJECT_DIR environment variable by @matteius in #6497

Full Changelog: v2026.0.1...v2026.0.2

Release v2026.0.1

10 Dec 16:38

Choose a tag to compare

What's Changed

  • Fix pip.conf index-url not being honored after pip 25.3 update by @matteius in #6479
  • Fix: Respect PIPENV_VERBOSITY=-1 for .env loading message by @matteius in #6480
  • Fix: Suppress duplicate .env loading message in nested pipenv invocations by @matteius in #6481
  • Include unit tests in sdist for downstream distribution testing by @matteius in #6482
  • docs: Comprehensive documentation updates by @matteius in #6483
  • Fix prerelease versions being selected without --pre flag by @matteius in #6484

Full Changelog: v2026.0.0...v2026.0.1

Release v2026.0.0

10 Dec 14:23

Choose a tag to compare

What's Changed

  • Requested quiet addition 6287 by @matteius in #6393
  • PEP 751 experimental pylock.toml support by @matteius in #6391
  • Fix --dev-only requirements filtering and scan command docs by @matteius in #6451
  • Fix --quiet flag to actually suppress output during install by @matteius in #6452
  • Validate Python version when using --system flag by @matteius in #6453
  • Enhance --system flag support for Docker workflows by @matteius in #6454
  • Fix pipenv update incorrectly marking all packages as modified by @matteius in #6455
  • Handle venv_resolve_deps exception by @matteius in #6456
  • PEP660 editable VCS dependencies not reinstalled correctly by @matteius in #6362
  • Support --dev flag for uninstall by @matteius in #6392
  • Fix Issue 6347: default constraints not applying to other categories by @matteius in #6364
  • Add pipenv audit command using pip-audit for vulnerability scanning by @matteius in #6457
  • Update vendored pipdeptree to 2.30.0 by @matteius in #6458
  • Fix pipenv graph not showing version info for dependencies by @matteius in #6459
  • Update Docker docs to clarify --system flag usage by @matteius in #6461
  • Fix PIPENV_ACTIVE not being unset on deactivate by @matteius in #6462
  • Fix markers not being respected for file and VCS dependencies by @matteius in #6460
  • Fix pipenv check --quiet not working properly by @matteius in #6463
  • Fix pipenv update --dev updating transitive deps independently by @matteius in #6464
  • Fix editable package name incorrectly parsed from test files by @matteius in #6465
  • Fix VCS dependencies not reinstalling when ref/commit changes by @matteius in #6466
  • Fix pipenv-resolver CLI not working by @matteius in #6468
  • Fix SSH git username being incorrectly redacted by @matteius in #6469
  • Fix malformed lockfile exiting successfully with code 0 by @matteius in #6467
  • Fix Windows CI failures and validate --index argument by @matteius in #6470
  • Improve resolver error display for end users by @matteius in #6471
  • Fix subprocess deadlock in resolver causing pipenv lock to hang by @matteius in #6472
  • Fix --lock-only flag for pipenv upgrade command by @matteius in #6473
  • Fix Windows shutil.rmtree error on Python 3.12+ by @matteius in #6474
  • Add PIPENV_PYENV_AUTO_INSTALL environment variable by @matteius in #6475
  • Fix typo in get_constraints_from_deps version formatting by @matteius in #6476
  • Fix benchmark CI hanging due to pipe buffer deadlock by @matteius in #6477

Full Changelog: v2025.1.3...v2026.0.0

Release v2025.1.3

09 Dec 11:01

Choose a tag to compare

What's Changed

Full Changelog: v2025.1.1...v2025.1.3

Release v2025.1.1

05 Dec 23:28

Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v2025.0.4...v2025.1.0

Release v2025.0.4

07 Jul 21:44

Choose a tag to compare

What's Changed

  • Fix editable installation from relative paths on Windows by @stewartmiles in #6416
  • chore: remove tomli from vendor by @oz123 in #6417
  • Bump urllib3 from 2.4.0 to 2.5.0 in /examples by @dependabot in #6424
  • Bump requests from 2.32.3 to 2.32.4 in /examples by @dependabot in #6427
  • Add back ignore_compatibility option to pip package finder for comprehensive lock file generation by @matteius in #6426
  • Bugfix: Make sure ensure_python() installs Python when conditions are met by @EpiX-1 in #6425
  • Performance Optimization: Resolver, Benchmarking & Batch Operations by @matteius in #6419

New Contributors

Full Changelog: v2025.0.3...v2025.0.4