python-dotenv is a project that helps load environment variables from a `.env` file into your application. It’s useful when you want to manage configuration locally for development while keeping environment-based settings separate from your code.
Project status
- Active maintenance: The repo shows recent activity (last upstream push on 2026-05-08) and versioned updates continuing through v1.2.2 (2026-03-01), including Python 3.14 related support.
- Update cadence: Updates appear in roughly 3 to 5 month intervals recently (v1.2.2 in 2026-03, then v1.2.1 and v1.2.0 in late 2025), suggesting an active, ongoing development rhythm rather than maintenance mode.
AI summary generated 2026-05-18
Recent updates
v1.2.2
2026-03-01python-dotenv 1.2.2 adds Python 3.14 and free-threaded build support, and changes the CLI `run` path so extra flags are forwarded to the child command. The release also tightens file rewrite behavior around symlinks and file permissions, while the code diff shows a few additional behavior shifts beyond what the notes mention.
BreakingFeaturesv1.2.1
2025-10-26v1.2.1 adds Unix FIFO support for `.env` loading and switches PyPI publishing to trusted publishing. The runtime change is small, but the release also includes a broader tooling cleanup, moving config into `pyproject.toml` and simplifying the build and release pipeline.
Featuresv1.2.0
2025-10-26v1.2.0 is mostly a tooling and packaging release, but it also adds `PYTHON_DOTENV_DISABLED` so `load_dotenv()` can be turned off at runtime. The release adds Python 3.14 CI and tox support, modernizes the build and release pipeline around `pyproject.toml`, `build`, and ruff, and keeps the public dotenv loading API otherwise stable.
Featuresv1.1.1
2025-06-24This is a focused patch release for python-dotenv 1.1.1. It fixes `find_dotenv` behavior on Python 3.13 and updates `dotenv run` on Windows to avoid the broken `execvpe` path.
v1.1.0
2025-03-25python-dotenv v1.1.0 adds Python 3.13 support, drops Python 3.8, and improves `dotenv run` and debugger-aware `.env` discovery. It also refreshes the project’s CI and repository governance files, including Dependabot and a security policy.
BreakingFeaturesv1.0.1
2024-01-23v1.0.1 is a small maintenance release focused on robustness and compatibility. It improves `.env` rewriting error handling, makes `.env` discovery work better for zipimported code and thread-based reload scenarios, and refreshes tests, docs, and CI for newer Python versions.
v1.0.0
2023-02-24v1.0.0 is a small maintenance release that mainly fixes CLI startup when the current working directory no longer exists, updates the supported Python floor to 3.8+, and adds Python 3.12-dev coverage. The rest of the diff is mostly packaging, docs, CI, and test tooling cleanup.
Breakingv0.21.1
2023-01-21Version 0.21.1 is a maintenance release focused on code modernization, typing cleanup, and better CLI handling for unreadable .env files. It also fixes the undefined dest rewrite bug, updates the project license, and moves CI onto stable Python 3.11.
Featuresv0.21.0
2022-09-03Version 0.21.0 adds CLI ergonomics, including `python -m dotenv` execution and a new `dotenv list --format` flag, while also updating documentation and packaging. It drops Python 3.5 and 3.6 support and changes `load_dotenv` so empty loads can return `False`.
BreakingFeaturesv0.19.2
2021-11-11This release fixes a specific issue related to writing new environment entries using `set_key`, ensuring proper file formatting. No new features or compatibility changes are mentioned in the release notes.