• logging_strict
    link
    fedilink
    arrow-up
    2
    ·
    edit-2
    1 day ago

    the one venv to rule them all is not a viable solution.

    Some packages cause problems, one tactic is to isolate the problem package into a separate venv.

    For example

    .venv/ – main venv for the dev setup

    .doc/.venv - Sphinx docs (now minimum py310)

    .wth for e.g. package restview which has out of date dependencies.

    Each venv has its respective requirements files. Some associated with a dependency or optional dependency. The ones that aren’t are pin files.

    Lets say there are easily a total of 20 requirements and constraints (pin files).

    This mess is in a freak’n nasty multi level hierarchy.

    Now imagine you are the author maintainer of 10 packages. Can you be confident one package requirements won’t conflict with other packages requirements?

    Almost forgot

    these packages are no longer maintained:

    pip-tools

    pip-requirements-parser

    … scary