Mam zamiar wydać bibliotekę Pythona, nad którą pracowałem przez ostatnie kilka tygodni. Czytałem dużo o zależnościach Pythona, ale coś jeszcze nie jest do końca jasne:Czy powinienem przypiąć moje wersje zależności Pythona?
Niektórzy ludzie udają, że powinieneś nigdy nie dopinać do swoich wersji zależności, ponieważ mogłoby to uniemożliwić użytkownikom twojej biblioteki uaktualnienie tych zależności.
Niektóre inne twierdzenie, że należy zawsze przypiąć swoje wersje zależnościami, ponieważ jest to jedyny sposób zagwarantowania, że uwolnienie działa tak, jak to miało miejsce, gdy rozwinął go i aby zapobiec, że łamanie zmiana w zależności sieje spustoszenie w twoja biblioteka.
ja jakoś poszło za rozwiązanie hybrydowe, gdzie zakłada moi zależności wykorzystywane semantic versioning i przypięty tylko główny numer wersji (słownie somelib >= 2.3.0, < 3
), z wyjątkiem, gdy główny numer wersji jest 0
(semantyczny wersjonowanie podpowiada, że takie wersje mają być uważane za niestabilne i może przerwać działanie API, nawet jeśli natknie się tylko na numer poprawki).
Odtąd nie jestem pewien, która droga jest najlepsza. Czy istnieje oficjalna wytyczna (może nawet PEP?), Która dyktuje najlepszą praktykę dotyczącą zależności Pythona i jak je określać?
Dobre pytanie. Myślę, że to powinno być adresowane przez społeczność Pythona. – pylang