Unstructured-IO / unstructured

Open source libraries and APIs to build custom preprocessing pipelines for labeling, training, or production machine learning pipelines.
https://www.unstructured.io/
Apache License 2.0
7.37k stars 572 forks source link

build: move numpy pin to packaging #3296

Closed qued closed 3 days ago

qued commented 3 days ago

Moved numpy pin to base.in where it will be picked up by packaging.

Side note: constraints.txt (formerly constraints.in) is a really useful pattern: you put a constraint there, add that file as a -c requirement in other files, and the constraint will be applied when pip-compiling only when needed because the library is required by something else. Neat! However, unfortunately, in my searches I've never found a similar pattern for packaging, so any pins we want to propagate to user installs need to be explicitly placed in the .in files.

So what is constraints.txt really doing for us? Well in the past I think there have been instances where something is temporarily broken in an upstream dependency but we expect it to be patched soon, but in the meantime we want things to work in our CI builds and development installs, so it's not worth pinning everywhere it's used. Having said that, I'm coming to the conclusion that constraints.txt causes more harm than good in the confusion it causes WRT packaging -- maybe we should remove that pattern at some point.