The previous changes for the 3.8 update are ready, but staging got
merged into master, so there are a few more challenges to tackle:
* Use python 3.10 now since it's actually supported and less effort to
build (3.9 isn't recursed into anymore).
* sphinx doesn't build with these overrides, so patch it out entirely
(i.e. drop `sphinxHook` where it's causing problems).
* backport a few jinja2 fixes for python 3.10 that were fixed in later
versions, but break because this env is stuck to 2.11.
checkInputs used to be added to nativeBuildInputs. Now we have
nativeCheckInputs to do that instead. Doing this treewide change allows
to keep hashes identical to before the introduction of
nativeCheckInputs.
ChangeLog: https://github.com/privacyidea/privacyidea/blob/v3.7.3/Changelog
Failing Hydra build: https://hydra.nixos.org/build/190981743
* Disable tests of `werkzeug` since a lot of it is now failing with
`unclosed file handle` (partly just randomly) which is an indicator
for a broken test-suite. Dependency updates that would help us to get
rid of this hackery are apparently in progress upstream[1].
* Disable checkPhase for `Mako` since it now requires `lingua` as
`checkInput`, but it'd require `click>8`, however we use v7 here for
the older flask. To avoid even more dependency chaos, I decided to
just turn off the tests here.
* Update disabled tests for `privacyidea` itself: a few tests are either
removed or succeeding now (perhaps because we now set `$HOME` now for
tests ;-) ). Documented on the remaining tests why they can't work in
a `nix-build`.
[1] https://github.com/privacyidea/privacyidea/issues/2876
ChangeLog: https://github.com/privacyidea/privacyidea/releases/tag/v3.6
Unfortunately we have to use `sqlalchemy` at 1.3 for `sqlsoup`. As
`sqlalchemy` is required by a lot of packages, I decided to move this
package out of `pythonPackages` itself and instantiate a new
`pythonPackages` inside the expression where `sqlalchemy` points to
`sqlalchemy_1_3`.