Skip to content

Update primer-on-jinja-templating pins to match the refreshed tutorial - #810

Open
realpython-bot wants to merge 1 commit into
realpython:masterfrom
realpython-bot:jinja-primer-dependency-refresh
Open

Update primer-on-jinja-templating pins to match the refreshed tutorial#810
realpython-bot wants to merge 1 commit into
realpython:masterfrom
realpython-bot:jinja-primer-dependency-refresh

Conversation

@realpython-bot

Copy link
Copy Markdown
Contributor

The tutorial Primer on Jinja Templating was refreshed in the CMS and now declares Flask 3.1.3 / Jinja2 3.1.6 on Python 3.14. This folder still pinned the 2024 set, so the materials built a different environment than the article describes.

What changed

package was now
blinker 1.8.2 1.9.0
click 8.1.7 8.5.0
Flask 3.0.3 3.1.3
Jinja2 3.1.4 3.1.6
MarkupSafe 2.1.5 3.0.3
Werkzeug 3.0.3 3.1.8
itsdangerous 2.2.0 2.2.0 (unchanged — current release)

The article itself only names Flask and Jinja2, but the transitive bumps are required, not cosmetic: Flask 3.1.3 requires Werkzeug>=3.1, so pinning Flask forward while leaving Werkzeug==3.0.3 would be an inconsistent set. These versions are exactly what the resolver picks for Flask==3.1.3 + Jinja2==3.1.6 on Python 3.14.

Verification

Ran app.py under these pins with Flask's test client:

  • / → 200
  • /results → 200, rendering all five students as Frieda 92, Fritz 40, Gergeley 87, Sandrine 100, Sirius 75 — ordered by name, matching the article's final results.html (sort(attribute="name")).

No template or app.py changes. The content audit raised no code issues for this article; the one prose fix in this update pass concerned a chained-sort example that is presented as a hypothetical aside in the article and is not part of the tracked results.html, so materials are unaffected by it.

Prepared during a written-content maintenance review (reviewer: Martin Breuss).

🤖 Generated with Claude Code

The tutorial "Primer on Jinja Templating" was refreshed in the CMS and now
declares Flask 3.1.3 / Jinja2 3.1.6 on Python 3.14. This file still pinned
the 2024 set, so the materials built a different environment than the
article describes.

  blinker     1.8.2  -> 1.9.0
  click       8.1.7  -> 8.5.0
  Flask       3.0.3  -> 3.1.3
  Jinja2      3.1.4  -> 3.1.6
  MarkupSafe  2.1.5  -> 3.0.3
  Werkzeug    3.0.3  -> 3.1.8

itsdangerous stays at 2.2.0, its current release.

The transitive bumps are required, not cosmetic: Flask 3.1.3 needs
Werkzeug>=3.1, so pinning Flask forward while leaving Werkzeug at 3.0.3
would be an inconsistent set. The versions here are what the resolver
picks for Flask==3.1.3 plus Jinja2==3.1.6 on Python 3.14.

Verified by running app.py under these pins: both routes return 200 and
/results renders the five students ordered by name, matching the article's
final results.html.

No template or app.py changes -- the content audit raised no code issues
for this article.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant