Continuous Integration Optimization
okay, so here's changes for the CI:
- tests run against installed wheel, not an editable install
- also the source distribution is build and validated as the wheel
- the declared trove classifiers drive the interpreter selection to run tests against
- tag pushes trigger a workflow that uploads the packages directly(?) to the PyPI
however due to the change of package installation (actually the non-presence of the pure source) the coverage count reports less which leads to a fail of the expected goal. all of these possible solutions i don't like:
- decrease the expectation; as local runs are more likely to re-define the expectation
- increasing test coverage; inefficient now. if this just happens now it's okay, but it will be an actual matter before optimizations are seeked way later in the project
- adding a test based on the source distribution; that'd suggest to use the test files from that dist as well, but that then creates the requirement to test that the source dist is complete, doable, but i don't imagine this to be more of a nag than practical
- define two different goals; just no
why test against installed wheel instead of source tree tho...?
packages are what most users will install.
adding a test based on the source distribution
i think that's what should be done in order to test both distribution formats. and one can compare the contained test suite against one from a vcs checkout.
i overcame my fear that the source distribution might be missing contents.
the testing against wheels against various interpreter/language versions is now considered as a compatibility test.