Issue 1 – Bar charts blank/lines only: - Silent fall-through on unsupported chart_types (donut, stacked_bar, area) now raises ValueError instead of producing axes-only output - Zero-width bars on duplicate/single dates fixed via sorted-gap calculation - Donut chart type added (ring with percentage labels) - Pie/donut routing now triggers on any() instead of all() Issue 2 – Axis controls not applying: - AxisSpec gains date_min/date_max (x-axis clamping via prompts) - y-bounds no longer silently widened when user sets min_val/max_val - Tick clamping: ticks outside user range are dropped not widened - New dual_y_axis layout with independent left/right Y-axes and y_axis_side per series - Endpoint Y-axis labels (min/max) always render even when spacing is tight Issue 3+4 – Font fallback & InDesign compatibility: - Replace CairoSVG with Playwright/headless Chromium for PNG and PDF export - Chromium honours @font-face base64 data URIs → Roboto Condensed in all exports - PDF output contains embedded TTF subsets and real text operators (selectable in InDesign/Illustrator, no path-outlining, consistent across regions) - FastAPI lifespan manages persistent Playwright browser instance Issue 5 – Stroke weight drift: - All stroke_width values now carry explicit "px" unit suffix - SVG root gets width="…px" height="…px" so 1 SVG px = 0.75 PDF pt exactly AI improvements: - Prompts document date_min/date_max, scale_kind, dual_y_axis, donut - Rule 9 softened: user-specified ranges are honoured even if they crop data - Refinement uses deep-merge so tick_interval/min_val/date_min are never accidentally reset to None when Claude modifies unrelated fields - New donut few-shot example added Library upgrades: anthropic 0.84→0.97, fastapi 0.135→0.136, pandas 3.0.1→3.0.2, pydantic 2.12→2.13, uvicorn 0.41→0.46; cairosvg removed, playwright 1.58.0 added. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
34 lines
603 B
Text
34 lines
603 B
Text
annotated-doc==0.0.4
|
|
itsdangerous==2.2.0
|
|
PyJWT[crypto]==2.8.0
|
|
annotated-types==0.7.0
|
|
anthropic==0.97.0
|
|
anyio==4.12.1
|
|
certifi==2026.2.25
|
|
click==8.3.1
|
|
distro==1.9.0
|
|
docstring_parser==0.17.0
|
|
drawsvg==2.4.1
|
|
et_xmlfile==2.0.0
|
|
fastapi==0.136.1
|
|
h11==0.16.0
|
|
httpcore==1.0.9
|
|
httpx==0.28.1
|
|
idna==3.11
|
|
Jinja2==3.1.6
|
|
jiter==0.13.0
|
|
MarkupSafe==3.0.3
|
|
numpy==2.4.2
|
|
openpyxl==3.1.5
|
|
pandas==3.0.2
|
|
playwright==1.58.0
|
|
pydantic==2.13.3
|
|
python-dateutil==2.9.0.post0
|
|
python-dotenv==1.2.2
|
|
python-multipart==0.0.22
|
|
six==1.17.0
|
|
sniffio==1.3.1
|
|
starlette==0.52.1
|
|
typing-inspection==0.4.2
|
|
typing_extensions==4.15.0
|
|
uvicorn==0.46.0
|