Comparing v1.2.1...v1.2.2 · theskumar/python-dotenv

Commits on Oct 26, 2025

  1. Fix gh-pages deployment permission issue

    - Add contents: write permission for pushing to gh-pages branch
    - Replace mkdocs gh-deploy with peaceiris/actions-gh-pages action
    - Split documentation build and deploy into separate steps for better reliability
    Configuration menu

    Browse the repository at this point in the history

Commits on Jan 10, 2026

  1. Configuration menu

    Browse the repository at this point in the history

  2. Configuration menu

    Browse the repository at this point in the history

  3. Configuration menu

    Browse the repository at this point in the history

  4. Fix formatting

    I somehow merged a malformatted PR earlier today. Let's fix the
    formatting first.

    bbc2 committed

    Jan 10, 2026
    Configuration menu

    Browse the repository at this point in the history

Commits on Jan 12, 2026

  1. Make dotenv run forward flags to given command (#607)

    Changes for users:
    
    - (BREAKING) Forward flags passed after `dotenv run` to the given
      command instead of interpreting them.
        - This means that an invocation such as `dotenv run ls --help` will
          show the help page of `ls` instead of that of `dotenv run`.
        - To pass flags to `dotenv run` itself, pass them right after `run`:
          `dotenv run --help` or `dotenv run --override ls`.
        - As usual, generic options should be passed right after `dotenv`:
          `dotenv --file path/to/env run ls`

    bbc2 authored

    Jan 12, 2026
    Configuration menu

    Browse the repository at this point in the history

  2. Docs: Improve readability of reference page (#605)

    This uses some (but not all) of the settings recommended at
    https://mkdocstrings.github.io/python/usage/#recommended-settings.
    
    Changes to the "Reference" page:
    
    - Replace section heading with function name (instead of function
      declaration): This should be more readable.
        - The function declaration is now shown in a code block instead of
          the heading.
    - Added "Table of contents" to the right, to quickly navigate to a
      particular method.
    - Removed "Source code": It removes clutter from the page and probably
      wasn't very useful (but it can easily be added back if needed).

    bbc2 authored

    Jan 12, 2026
    Configuration menu

    Browse the repository at this point in the history

  3. Clean up "Related projects" section of the readme (#602)

    Changes:
    
    - Removed django-environ-2: The project was archived on GitHub.
    - Changed URL of dynaconf: The canonical repository changed.
    
    Those are very conservative choices. I haven't added projects, or
    removed projects that seemed less relevant.

    bbc2 authored

    Jan 12, 2026
    Configuration menu

    Browse the repository at this point in the history

  4. Configuration menu

    Browse the repository at this point in the history

  5. Configuration menu

    Browse the repository at this point in the history

  6. Drop Python 3.9 support and update to PyPy 3.11 (#608)

    Python 3.9 reached end-of-life on October 5, 2025. This commit removes
    support for Python 3.9 and updates the minimum required version to
    Python 3.10.
    
    Additionally, PyPy has been updated from 3.10 to 3.11, and proper
    support for Python 3.14 free-threading builds (3.14t) has been added
    with separate tox environments.
    
    Changes:
    - Update requires-python from >=3.9 to >=3.10 in pyproject.toml
    - Remove Python 3.9 classifier from package metadata
    - Remove Python 3.9 and PyPy 3.9 from CI test matrix
    - Update PyPy from 3.10 to 3.11 (latest stable version)
    - Remove py39 from tox envlist and gh-actions mapping
    - Remove mypy type checking for Python 3.9
    - Add separate tox environments for py314 and py314t to properly
      support both regular and free-threading Python 3.14 builds
    - Update all tox environment references to include py314 and py314t
    
    The project now officially supports:
    - CPython: 3.10, 3.11, 3.12, 3.13, 3.14 (including free-threading)
    - PyPy: 3.11
    Configuration menu

    Browse the repository at this point in the history

  7. Add Windows testing to CI (#604)

    Changes for users: none.
    
    Notes:
    
    - This adds CI testing with lowest and highest Python versions we
      support.
    - The main motivation for this is that we have Windows-specific code I'm
      worried I might break with improvements, like improvements in `dotenv
      run` error handling (coming soon).
    - I went for the least intrusive changes for now, and disabled tests
      which would fail unless they were trivial to adjust.
      - We have tests using `sh` (Unix-only module) which should be possible
        to fix later. Those tests are disabled on Windows.
      - Also tests relying on the fact that environment variables are case
        sensitive, which isn't the case on Windows. This is going to be more
        tricky to fix. Those tests are also disabled on Windows.
    - To check for the platform, I used `sys.platform == "win32"`
      everywhere, which seems to be the best practice.
    
    Co-authored-by: Saurabh Kumar <theskumar@users.noreply.github.com>
    Configuration menu

    Browse the repository at this point in the history

  8. ci: improve workflow efficiency with best practices (#609)

    - Limit workflow triggers to main branch for pushes
    - Run tests on PRs targeting any branch
    - Add concurrency control to cancel outdated workflow runs
    - Set 15-minute timeout to prevent hung jobs
    - Follows GitHub Actions best practices for open-source projects
    Configuration menu

    Browse the repository at this point in the history

  9. docs: clarify override behavior and document FIFO support (#610)

    - Explicitly state that override=False is the default behavior in the
      Getting Started section for better clarity
    - Add note about FIFO (named pipes) support on Unix systems in the
      File format section
    - Improve formatting consistency:
      - Standardize TOC list markers (use '-' instead of '*')
      - Fix line wrapping and spacing issues throughout
    Configuration menu

    Browse the repository at this point in the history

Commits on Feb 28, 2026

  1. Remove the use of sh in tests (#612)

    This commit has the following benefits:
    
    - Remove `sh` as a development dependency.
    - Increase test coverage on Windows.
    - Improve the robustness of some tests against leftover `.env` files in
      the repository.
        - This is not perfect yet: If you have a `.env` file in your
          repository, it still disrupts some tests (for `find_dotenv`).
    - Improve the readability of error messages for some tests.

    bbc2 authored

    Feb 28, 2026
    Configuration menu

    Browse the repository at this point in the history

Commits on Mar 1, 2026

  1. Merge commit from fork

    Changes for users:
    
    - (BREAKING) `dotenv.set_key` and `dotenv.unset_key` used to follow
      symlinks in some situations. This is no longer the case.  For that
      behavior to be restored in all cases, `follow_symlinks=True` should be
      used.
    - (BREAKING) In the CLI, `set` and `unset` used to follow symlinks in
      some situations. This is no longer the case.
    - (BREAKING) `dotenv.set_key`, `dotenv.unset_key` and the CLI commands
      `set` and `unset` used to reset the file mode of the modified .env
      file to `0o600` in some situations. This is no longer the case: The
      original mode of the file is now preserved. Is the file needed to be
      created or wasn't a regular file, mode `0o600` is used.

    bbc2 authored

    Mar 1, 2026
    Configuration menu

    Browse the repository at this point in the history

  2. Configuration menu

    Browse the repository at this point in the history

  3. Configuration menu

    Browse the repository at this point in the history