From aa6cd4e63064dae80c5db82f0f35155aeb6de91c Mon Sep 17 00:00:00 2001 From: Aaron Roe Fulkerson <45860746+AaronRoeF@users.noreply.github.com> Date: Mon, 17 Aug 2026 23:35:56 -0700 Subject: [PATCH] fix(lint): restore Python 3.9 compatibility (#58) Add deferred annotation evaluation, enforce Python 3.9 linter coverage in CI, and publish synchronized plugin version 2.4.4. --- .claude-plugin/plugin.json | 2 +- .codex-plugin/plugin.json | 2 +- .github/workflows/ci.yml | 21 +++++++++++++++++++++ scripts/lint-skin.py | 2 ++ 4 files changed, 25 insertions(+), 2 deletions(-) diff --git a/.claude-plugin/plugin.json b/.claude-plugin/plugin.json index 5b4e222..956b859 100644 --- a/.claude-plugin/plugin.json +++ b/.claude-plugin/plugin.json @@ -1,7 +1,7 @@ { "name": "diagram-design", "description": "Create branded architecture, IT current-state, flowchart, sequence, state machine, ER/data model, timeline, swimlane, quadrant, radar/spider, loop/flywheel, nested, tree, org chart, layer stack, Venn, pyramid/funnel, bar, line, Gantt and scatter charts, high-level, process, medallion, data flow, DP integration, or DP security matrix diagrams as standalone HTML/SVG/PNG. Redraw .drawio/.drawio.png/.drawio.svg or Mermaid .mmd sources at a chosen size/detail; onboard brand tokens from a website; add semantic patterns, callouts, accessible motion, or sketchy/hand-drawn styling.", - "version": "2.4.3", + "version": "2.4.4", "author": { "name": "Cathryn Lavery", "url": "https://github.com/cathrynlavery" diff --git a/.codex-plugin/plugin.json b/.codex-plugin/plugin.json index 67b3edf..86cb08c 100644 --- a/.codex-plugin/plugin.json +++ b/.codex-plugin/plugin.json @@ -1,7 +1,7 @@ { "name": "diagram-design", "description": "Create branded architecture, IT current-state, flowchart, sequence, state machine, ER/data model, timeline, swimlane, quadrant, radar/spider, loop/flywheel, nested, tree, org chart, layer stack, Venn, pyramid/funnel, bar, line, Gantt and scatter charts, high-level, process, medallion, data flow, DP integration, or DP security matrix diagrams as standalone HTML/SVG/PNG. Redraw .drawio/.drawio.png/.drawio.svg or Mermaid .mmd sources at a chosen size/detail; onboard brand tokens from a website; add semantic patterns, callouts, accessible motion, or sketchy/hand-drawn styling.", - "version": "2.4.3", + "version": "2.4.4", "author": { "name": "Cathryn Lavery", "url": "https://github.com/cathrynlavery" diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ea5ca9e..e091ad1 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -51,6 +51,27 @@ jobs: - name: Validate Claude marketplace package without warnings run: npx --yes @anthropic-ai/claude-code@2.1.229 plugin validate . --strict + python39-compat: + name: Python 3.9 Compatibility + runs-on: ubuntu-latest + timeout-minutes: 10 + + steps: + - name: Checkout repository + uses: actions/checkout@v4 + with: + persist-credentials: false + + - name: Set up Python 3.9 + uses: actions/setup-python@v5 + with: + python-version: "3.9" + + - name: Verify linter compatibility + run: | + python scripts/test-lint-a11y.py + python scripts/lint-skin.py --all --baseline + validate: name: Lint & Verify (${{ matrix.os }}, Python ${{ matrix.python-version }}) strategy: diff --git a/scripts/lint-skin.py b/scripts/lint-skin.py index 874a90f..9209400 100644 --- a/scripts/lint-skin.py +++ b/scripts/lint-skin.py @@ -5,6 +5,8 @@ Pre-2.0 examples may legitimately fail because they were built against an older skin. Use ``--all --baseline`` to skip those documented legacy files. """ +from __future__ import annotations + import argparse import hashlib import re