Czego używacie do zarządzania zależnościami?

0

Pipenv, Poetry czy virtualenv? Co jest teraz "na czasie"?

1

ja znam tylko virtualenv, ale jak masz dockera obraz to już to nie ma znaczenia, bo jesteś i tak odizolowany.

2

Używam virtualenv proste, plus ewentualnie jakiś skrypt startowy, ale zdaję sobie sprawę, że są rozwiązania lepsze, choćby przytoczone przez Ciebie.

0
Szalony Programista2 napisał(a):

ja znam tylko virtualenv, ale jak masz dockera obraz to już to nie ma znaczenia, bo jesteś i tak odizolowany.

Tu nie chodzi o samą izolacje a o zarządzanie zależnościami tzn. jakie wersje libek masz, jak rozwiązywane są konflikty, jak łatwo się aktualizuje itd.

1

pyenv do zarządzania wersjami pythona, ale to ogólnie systemowo

pip-tools, czyli pip-compile + pip-sync w prostszych projektach z virtualenv
w nieco bardziej skomplikowanych albo tam gdzie potrzebuję publikować mój kod jako paczkę/albo jest to OS projekt to poetry

Czyli generalnie prosty setupik, bez zbytniego boilerplate
dzięki pyenv za pomocą jednej komendy mogę zmieniać wersję pythona używaną w danym katalogu bez wpływania na systemowego pythona
na podstawie tej wersji generuję venva, lub kilka venvów kiedy np w projekcie zmieniamy wersję pythona lub chce sobie potestować
do tego poetry automatycznie obsłuży mi rozwiązywanie zależności oraz ich freezowanie by buildy były powtarzalne plus zajmie się budowaniem/publikowaniem paczki

Brzmi jak olbrzymi boilerplate ale w praktyce jest to dość proste.
TLDR:
virtualenv, pip-tools/poetry (zbiorek skryptów -> pip-tools, jakiś kapke większyp rojekt albo coś co będzie jako paczka budowane -> poetry), pyenv

1 użytkowników online, w tym zalogowanych: 0, gości: 1