From 3e7acba73cfd6371e460083ad135ee030a234018 Mon Sep 17 00:00:00 2001 From: Matt McKay Date: Fri, 14 Aug 2026 11:04:21 +1000 Subject: [PATCH 1/2] chore(quantecon): track PR #89 (heading-attributes) in fork trackers MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit VERSION.yml gains feature 15 (merge_sha a40f0cb0, tag null until the next qe-v cut); UPSTREAM-PRS.yml gains a standalone heading-attributes candidate — it completes upstream's inline-attribute mechanism (their #1822) and touches no fork-modified code paths, so the cherry-pick should be clean. Downstream adoption is tracked in QuantEcon/claude-latex-to-myst#160 and needs a qe-v10 tag first. Co-Authored-By: Claude Fable 5 --- quantecon/UPSTREAM-PRS.yml | 37 +++++++++++++++++++++++++++++++++++++ quantecon/VERSION.yml | 7 +++++++ 2 files changed, 44 insertions(+) diff --git a/quantecon/UPSTREAM-PRS.yml b/quantecon/UPSTREAM-PRS.yml index 1fbda36eb..e17ef2381 100644 --- a/quantecon/UPSTREAM-PRS.yml +++ b/quantecon/UPSTREAM-PRS.yml @@ -253,6 +253,43 @@ upstream_candidates: enumerate.ts rather than a clean replay, or bundle after book-mode-with-section-scope. + - id: heading-attributes + title: Pandoc-style heading attribute blocks ({#id .class .unnumbered}) + description: | + Wires the inline-attribute tokenizer (upstream's own #1822, used + by roles and directives) to ATX/setext headings via a markdown-it + core rule. `.unnumbered` / `{-}` / `enumerated=false` map to + `enumerated: false`, which the enumerate transform already honors: + the heading keeps its target and TOC entry, renders no number, + and does not advance the counter — LaTeX \section* semantics. + `#id` becomes the heading label/identifier, `.class` lands on the + node. A trailing brace block parses as attributes only when its + entire content is recognized vocabulary, so prose braces and + escaped \{ stay literal; opt out with + `extensions.headingAttributes: false`. + status: pending + commits: + - sha: a40f0cb0 + local_pr: 89 + title: "Heading attribute blocks: {#id .class .unnumbered} on ATX/setext headings" + depends_on: [] + upstream: + pr: null + branch: null + merged_sha: null + notes: | + Strong standalone candidate: completes upstream's existing + inline-attribute mechanism rather than inventing fork syntax, + uses pandoc's own heading-attribute notation (so pandoc- and + LaTeX-converted content arrives already carrying the marker), + and touches no fork-modified code paths — enumerate.ts is + untouched, so the cherry-pick onto upstream/main should be + clean. Fork context in QuantEcon/mystmd#68 and the #88 survey + (24 wrongly-numbered starred headings in the Deep Learning + book); downstream adoption tracked at + QuantEcon/claude-latex-to-myst#160, which needs a qe-v10 tag + cut over this feature first. + - id: ci-deflake title: Deflake DOI resolver and Jupyter execution tests description: | diff --git a/quantecon/VERSION.yml b/quantecon/VERSION.yml index 8aceee976..ab1b2d753 100644 --- a/quantecon/VERSION.yml +++ b/quantecon/VERSION.yml @@ -133,3 +133,10 @@ merged_features: local_pr: 81 merge_sha: 756a4d5d tag: qe-v9 + + - id: 15 + name: heading-attributes + description: Pandoc-style heading attribute blocks — {#id .class .unnumbered} maps to label/class/enumerated with the block stripped from heading text; .unnumbered renders no number and does not advance the counter (\section* semantics) + local_pr: 89 + merge_sha: a40f0cb0 + tag: null From ffa48e12c937106e6df7e672880b21799e2d518f Mon Sep 17 00:00:00 2001 From: Matt McKay Date: Fri, 14 Aug 2026 11:22:33 +1000 Subject: [PATCH 2/2] chore(quantecon): cut qe-v10 metadata (heading-attributes) qe_version -> qe-v10; feature 15 (a40f0cb0) tagged qe-v10. Tag to be cut on this PR's merge commit per the VERSION.yml procedure, so the tagged tree is self-consistent. qe-v10 = qe-v9 + heading attribute blocks + the qe-version.ts untracking housekeeping (#90, no feature row). Co-Authored-By: Claude Fable 5 --- quantecon/VERSION.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/quantecon/VERSION.yml b/quantecon/VERSION.yml index ab1b2d753..9a50a5c63 100644 --- a/quantecon/VERSION.yml +++ b/quantecon/VERSION.yml @@ -32,7 +32,7 @@ # Doing it in this order means anyone who `cat`s VERSION.yml at tag # `qe-v` sees a self-consistent file (qe_version matches the tag). -qe_version: qe-v9 +qe_version: qe-v10 upstream_base: 1.10.1 merged_features: @@ -139,4 +139,4 @@ merged_features: description: Pandoc-style heading attribute blocks — {#id .class .unnumbered} maps to label/class/enumerated with the block stripped from heading text; .unnumbered renders no number and does not advance the counter (\section* semantics) local_pr: 89 merge_sha: a40f0cb0 - tag: null + tag: qe-v10