Skip to content

Dependency Incompatibility with SNEWS_Publishing_Tools #140

@sgriswol

Description

@sgriswol

snews-cs and snews-pt each require the python-dotenv package, but they appear to have different and incompatible version requirements.

I installed both using pip 24.0, running against Python 3.12.3. Please let me know if you would like additional details about my environment. I have created a corresponding issue on the snews-pt repository (SNEWS2/SNEWS_Publishing_Tools#151).

pip install snews-pt snews-cs

snews-cs 2.2.0 requires python-dotenv==0.19.2, but you have python-dotenv 0.21.1 which is incompatible.
Successfully installed snews-pt-2.0.1
pip install snews-cs snews-pt

snews-pt 2.0.1 requires python-dotenv<0.22.0,>=0.21.1, but you have python-dotenv 0.19.2 which is incompatible.

As an additional comment, upon reviewing the requirements files of each, I found it confusing to determine which requirement statement would ultimately be used.

snews-cs specifies the requirement in four places:
requirements.txt : python-dotenv==0.19.2
https://github.com/SNEWS2/SNEWS_Coincidence_System/blob/edd3c8cde808c3b622dff0534b2398c203e35a3a/requirements.txt#L501-L5077

pyproject.toml : python-dotenv = "^0.19"

python-dotenv = "^0.19" # Constrained by snews_pt

poetry.lock (1) : python-dotenv = ">=0.19.2,<0.20.0"

python-dotenv = ">=0.19.2,<0.20.0"

poetry.lock (2): python-dotenv==0.19.2

[[package]]
name = "python-dotenv"
version = "0.19.2"
description = "Read key-value pairs from a .env file and set them as environment variables"
optional = false
python-versions = ">=3.5"
groups = ["main", "dev"]
markers = "python_version == \"3.11\" or python_version >= \"3.12\""
files = [
{file = "python-dotenv-0.19.2.tar.gz", hash = "sha256:a5de49a31e953b45ff2d2fd434bbc2670e8db5273606c1e737cc6b93eff3655f"},
{file = "python_dotenv-0.19.2-py2.py3-none-any.whl", hash = "sha256:32b2bdc1873fd3a3c346da1c6db83d0053c3c62f28f1f38516070c4c8971b1d3"},
]

snews-pt specifies the requirement in 3 places:
requirements.txt : python-dotenv~=0.21.1
https://github.com/SNEWS2/SNEWS_Publishing_Tools/blob/ccad7657bc24365c16f70c28fc1062d8d30a19cc/requirements.txt#L6

pyproject.toml : python-dotenv (>=0.21.1,<0.22.0)
https://github.com/SNEWS2/SNEWS_Publishing_Tools/blob/ccad7657bc24365c16f70c28fc1062d8d30a19cc/pyproject.toml#L34

poetry.lock : python-dotenv==0.21.1
https://github.com/SNEWS2/SNEWS_Publishing_Tools/blob/ccad7657bc24365c16f70c28fc1062d8d30a19cc/poetry.lock#L1374-L1384

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions