Description
Wir haben in #231 umgestellt
- von (ALT) einzelnen requiements.txt mit einzeln gepinnten dependencies für jede linting/test/coverage usw. umgebung
- auf (NEU) eine verbliebene requirements.txt mit pinning der echten package-dependencies und vielen optional-dependencies in der pyproject.toml, die auch direkt dort gepinnt werden (und indirekte dependencies pinnen wir in den optional dependencies gar nicht mehr)
An sich ist das gut und richtig und @FreddyFox892 hat das dankenswerterweise schon auf fast alle Repos ausgerollt #228.
Jetzt hab ich leider ein Problem gefunden: Wenn ich in einem der umgestellten repos, z.b.
tox -re dev
ausführe, dann wird das paket aus dem repo selbst in die site-packages der umgebung installiert.
Hier im template-repo kann man z.b. sehen, dass <reporoot>/.tox/dev/lib/site-packages
anschließend eine datei wie z.b. your_favourite_package_name-0.1.dev209+g30fc950.dist-info
enthält und (z.b. bei efoli leicht testbar) teilweise auch nur your_favourite_package_name
ohne das dev-suffix (hängt glaube ich daran, dass der build des dann in den site-packages installierten pakets auf die git/cvs-daten zugreift).
Dieses Verhalten ist etwas ungünstig, weil dann der pyhton-interpreter wenn man tests debuggt zumindest bei mir auf die Idee kommt, nicht den Code in src zu debuggen, sondern stattdessen die beim erstellen der tox-venv installierte version des packets in den site-packages, die ja auch noch gleich heißt wie das paket, das in src liegt. Man kann das mit pip uninstall you_favourite_package_name
zurückdrehen aber schön ist das ja auch nicht.
Angeblich lässt sich das vermeiden, wenn man use_develop=true
oder extras=...
verwendet: https://stackoverflow.com/a/61885242/10009545 aber ich kriege es gerade nicht hin (siehe versuche in #235 )