I use poetry and forget the rest of them exist. It has worked well so far.
I’ve found using conda, in dev, to provide system libraries and poetry (+ a build.py for our C extensions) to be a really comfortable experience.
In CI we use cibuildwheel to produce “statically-linked” wheel files. They’re not really statically linked, but they behave as though they are by bundling all dependent libraries into the wheel and doing some RPATH “magic” to look those kind up during runtime.
I’d like to reduce the delta between dev and CI at some point, but it is stable rn so I’m inclined not to futz with it.