Skip to content

Conversation

@prandla
Copy link
Member

@prandla prandla commented Feb 10, 2026

arch updated their python to 3.14 and tests started failing again...

this time it was werkzeug's fault. i upgraded werkzeug to the latest release. this pulled jinja and markupsafe along aswell.

the biggest change is that werkzeug's securecookie module got extracted into a separate secure-cookie project, which appears to be abandoned now. i rewrote the usage of it using tornado's create_signed_value function (which is supposed to be an implementation detail for set_secure_cookie, which we can't use outside of a tornado request handler, but well, we already depend on this function elsewhere and it's not like there's any risk of tornado updating and breaking it ;) ).

other changes were pretty trivial renames / import reorganizations. i did also discover a bug in werkzeug which i reported upstream, likely to be fixed in the next release, but i don't think it's too blocking. (see file_middleware_test.py; the bug is about improper advertising of range request support, but i think we rarely have files large enough for range requests to be relevant.)

also, now that nothing depends on pkg_resources anymore, we can remove setuptools from the runtime dependencies and bump the build-time version to 82.0 (which is the first release that actually removes pkg_resources).

updating constraints.txt also upgraded all our transitive deps. i skimmed the changelogs for most of them and didn't spot anything interesting.

also update jinja2 to 3.0 to prevent dependency conflict with
markupsafe. jinja2 3.0 isn't the latest, but upgrading to it doesn't
seem to break anything.
we don't have any (transitive) dependencies on pkg_resources anymore.

also pin build-time setuptools to a specific version.
this also updates all the transitive deps.. i skimmed the changelogs and
didn't spot anything that would be relevant to us.
@codecov
Copy link

codecov bot commented Feb 11, 2026

Codecov Report

❌ Patch coverage is 55.26316% with 17 lines in your changes missing coverage. Please review.
✅ Project coverage is 54.70%. Comparing base (4cdaa00) to head (2cb40f2).
✅ All tests successful. No failed tests found.

Files with missing lines Patch % Lines
cms/server/admin/authentication.py 0.00% 11 Missing ⚠️
cmsranking/RankingWebServer.py 0.00% 5 Missing ⚠️
cmscommon/eventsource.py 0.00% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1631      +/-   ##
==========================================
+ Coverage   54.67%   54.70%   +0.03%     
==========================================
  Files         335      335              
  Lines       27361    27352       -9     
==========================================
+ Hits        14960    14964       +4     
+ Misses      12401    12388      -13     
Flag Coverage Δ
functionaltests 0.00% <0.00%> (ø)
unittests 54.70% <55.26%> (+0.03%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

1 participant