Skip to content

deps: sphinx-exercise 1.2.2 in both images - #312

Merged
mmcky merged 1 commit into
mainfrom
deps/sphinx-exercise-1.2.2
Nov 11, 2026
Merged

mmcky merged 1 commit into
mainfrom
deps/sphinx-exercise-1.2.2

Conversation

@mmcky

@mmcky mmcky commented Nov 11, 2026

Copy link
Copy Markdown
Contributor

Why

Lecture-matrix run 42942041680, dispatched on main to test #307 on all eight legs, failed one: lecture-python.myst · quantecon, at "Build PDF (No Execution)". pdflatex stopped with LaTeX Error: Not in outer par mode at a \begin{figure}[htbp] inside an exercise solution.

QuantEcon/lecture-python.myst#1121 (merged 2026-11-11 00:26 UTC) restored figure captions in its solutions and moved that repository to sphinx-exercise==1.2.2. sphinx-exercise 1.2.2 (released 2026-11-10) writes a captioned figure inside an exercise or solution box as \begin{figure}[H], as Sphinx does inside its own admonitions, which is what pdflatex needs there. The full quantecon image pins sphinx-exercise==1.2.1 exactly, and the matrix doesn't apply a lecture's environment.yml to it, so that leg built with 1.2.1. The quantecon-build leg of the same repository ran 1.2.2 and passed its PDF build.

Changes

File Change
containers/quantecon/environment.yml sphinx-exercise==1.2.1 → ==1.2.2
containers/quantecon-build/environment.yml sphinx-exercise>=1.2.1 → >=1.2.2, so the lean image's floor matches, as #293 did for the theme

Both are pip entries, and 1.2.2 is on PyPI. No other file in the repository names a sphinx-exercise version.

What I checked

  • The failing leg's log lists sphinx-exercise 1.2.1; the passing lecture-python.myst · quantecon-build leg lists 1.2.2.
  • 1.2.2's release notes name this exact error for a captioned figure inside an exercise or solution, and say HTML output is unchanged.
  • fix(build-lectures): a jupyter build fails on its warnings under -W --keep-going (#300) #307 is not involved: every jupyter build step that ran in that matrix run passed (seven legs; the eighth was skipped after the PDF failure), and lecture-python.myst's jupyter build passed on quantecon-build.
  • lecture-python.myst's own ci.yml and publish.yml install its environment.yml with setup-miniconda, so its published site was never affected.

After merge

The merge rebuilds both images, promotes them to :latest once the smoke tests pass, and starts a lecture-matrix run, which should turn lecture-python.myst · quantecon green. Merge it on its own, not while a lecture-matrix run is in progress. Its CHANGELOG entry goes in the next release PR, as #293's did.

Not in this PR

Any other image dependency: Dependabot's weekly conda run covers those.

Claude Code (on behalf of mmcky)

🤖 Generated with Claude Code

https://claude.ai/code/session_01WT8bMbZoC2dpGt3sPyBjyd

sphinx-exercise 1.2.2 writes a captioned figure inside an exercise or
solution box as \begin{figure}[H], so pdflatex no longer stops with
"LaTeX Error: Not in outer par mode". lecture-python.myst moved to
1.2.2 when it restored figure captions in its solutions, and the full
image's exact 1.2.1 pin failed that repository's PDF build in lecture
matrix run 42942041680. The lean image's floor moves with it.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01WT8bMbZoC2dpGt3sPyBjyd
Copilot AI balanced review requested due to automatic review settings November 11, 2026 06:45

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Note

Copilot was unable to complete this review at the selected tier due to model policy or plan restrictions.

🟢 Approval recommended

The changes are limited to straightforward dependency version bumps for sphinx-exercise across the two container environment files, and the review evidence indicates there are no outstanding issues to resolve.

No open issues 🎉

What changed in this PR

Updates both container images to use sphinx-exercise 1.2.2 so downstream PDF builds behave consistently and avoid the LaTeX failure triggered by captioned figures inside exercise/solution boxes.

Changes:

  • Bump the full quantecon image pip pin from sphinx-exercise==1.2.1 to ==1.2.2.
  • Raise the quantecon-build image minimum from sphinx-exercise>=1.2.1 to >=1.2.2 to align the version floor across images.
File Description
containers/​quantecon/​environment.yml Updates the full image’s pip dependency pin to sphinx-exercise==1.2.2.
containers/​quantecon-build/​environment.yml Raises the lean build image’s minimum sphinx-exercise version requirement to >=1.2.2.

Review effort: Balanced

@mmcky
mmcky merged commit c5d2e44 into main Nov 11, 2026
76 checks passed
@mmcky
mmcky deleted the deps/sphinx-exercise-1.2.2 branch November 11, 2026 08:04
mmcky added a commit that referenced this pull request Nov 11, 2026
Cut ## [0.19.0] - 2026-11-11 below an empty ## [Unreleased], with the
entry #312 owed: sphinx-exercise 1.2.2 in both images. PLAN's release
line names v0.19.0, with @v0 on v0.18.0 until the release gate passes
it.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01WT8bMbZoC2dpGt3sPyBjyd
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.

2 participants