this post was submitted on 11 Jan 2025
52 points (93.3% liked)

Python

6516 readers
31 users here now

Welcome to the Python community on the programming.dev Lemmy instance!

๐Ÿ“… Events

PastNovember 2023

October 2023

July 2023

August 2023

September 2023

๐Ÿ Python project:
๐Ÿ’“ Python Community:
โœจ Python Ecosystem:
๐ŸŒŒ Fediverse
Communities
Projects
Feeds

founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
[โ€“] [email protected] 2 points 5 days ago* (last edited 5 days 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