Thanks! I admit I have no clue about what these files are used for. I imagine to create the bundle?
Constraint files are used to set up test environments (docs build environment is test environments).
In the past we have had situations where a new release of package crashed our test suite, preventing work on any PR until someone debugged and solved the failure.
With constraints, such failure happens only on the update branch.
An example of such a failure is the problem with PySide6 that, since version 6.10, segfaults on part of mocking (see #8560).
Unfortunately, it is not protective of nondeterministic fails like PyQt6 ones.
The constraint could be used to install older versions of napari (eg, reproduction of some older research).
Constraints are not used for bundles, as bundles are built using conda packages, not PyPI ones. And there is no clear translation between thems.
Originally posted by @Czaki in napari/napari#8581 (comment)
- We should also comment on our policy (we are happy to update constraints for folks, especially since its fiddly)
- We should add info about how things work after #8505