From d36cf008f8e986882994187373b523f10d4d44d5 Mon Sep 17 00:00:00 2001 From: Petr Viktorin Date: Mon, 1 Dec 2025 16:48:47 +0100 Subject: [PATCH 1/7] Adjust standalone release chart CSS - Use CSS variables from outside if present - Use light or dark theme - Add an outline to labels to improve readability (especially on incompatible background colours, and above the day line) - Reorder elements to improve readability (put text on top of the day line) --- _static/devguide_overrides.css | 28 ---- _tools/release_cycle_template.svg.jinja | 175 ++++++++++++++---------- 2 files changed, 102 insertions(+), 101 deletions(-) diff --git a/_static/devguide_overrides.css b/_static/devguide_overrides.css index 2661c6810..625a9dda2 100644 --- a/_static/devguide_overrides.css +++ b/_static/devguide_overrides.css @@ -6,34 +6,6 @@ height: 110px; } -/* Release cycle chart */ -.release-cycle-chart .release-cycle-year-line { - stroke: var(--color-foreground-primary); -} - -.release-cycle-chart .release-cycle-year-text { - fill: var(--color-foreground-primary); -} - -.release-cycle-chart .release-cycle-today-line { - stroke: var(--color-brand-primary); -} - -.release-cycle-chart .release-cycle-row-shade { - fill: var(--color-background-item); -} - -.release-cycle-chart .release-cycle-version-label { - fill: var(--color-foreground-primary); -} - -.release-cycle-chart .release-cycle-blob-label.release-cycle-status-end-of-life, -.release-cycle-chart .release-cycle-blob-label.release-cycle-status-prerelease, -.release-cycle-chart .release-cycle-blob-label.release-cycle-status-feature { - /* and FG when it's not in a blob */ - fill: var(--color-foreground-primary); -} - .good pre { border-left: 3px solid rgba(74, 182, 93, 1); } diff --git a/_tools/release_cycle_template.svg.jinja b/_tools/release_cycle_template.svg.jinja index 702a8cf18..c41537942 100644 --- a/_tools/release_cycle_template.svg.jinja +++ b/_tools/release_cycle_template.svg.jinja @@ -5,95 +5,108 @@ viewBox="0 0 {{ diagram_width }} {{ diagram_height }}" > @@ -105,6 +118,15 @@ {% for version in versions %} {% set y = version.y * line_height %} + + + Python {{ version.key }} + {% if version.y % 2 %} @@ -166,7 +188,7 @@ {% for version in versions %} - + {% set top_y = version.y * line_height - 1 * SCALE %} {% set height = 1.25 * SCALE %} @@ -174,8 +196,6 @@ {% set end_x = date_to_x(version.end_of_life_date) %} {% set radius = 0.25 * SCALE %} - {% set small_text_y = version.y * line_height - 0.1 * SCALE %} - + + + {% for version in versions %} + + + {% set start_x = date_to_x(version.first_release_date) %} + {% set end_x = date_to_x(version.end_of_life_date) %} + {% set middle_x = ([end_x, date_to_x(version.start_security_date)]|min) %} + {% set small_text_y = version.y * line_height - 0.1 * SCALE %} {% endfor %} - - - From 2f0db0bd80b9d7f109ff40bb28d6431e123d171a Mon Sep 17 00:00:00 2001 From: Petr Viktorin Date: Tue, 2 Dec 2025 15:47:25 +0100 Subject: [PATCH 2/7] Draw outlines and text separately --- _tools/release_cycle_template.svg.jinja | 97 ++++++++++++------------- 1 file changed, 46 insertions(+), 51 deletions(-) diff --git a/_tools/release_cycle_template.svg.jinja b/_tools/release_cycle_template.svg.jinja index c41537942..89f9d9ad2 100644 --- a/_tools/release_cycle_template.svg.jinja +++ b/_tools/release_cycle_template.svg.jinja @@ -33,9 +33,6 @@ stroke-width: 0.8px; opacity: 75%; } - .release-cycle-year-text { - fill: var(--svg-color-foreground-primary); - } .release-cycle-today-line { stroke: var(--svg-color-brand-primary); stroke-width: var(--blob-border-width); @@ -44,36 +41,30 @@ fill: var(--svg-color-background-item); opacity: 50%; } - .release-cycle-version-label { - fill: var(--svg-color-foreground-primary); - } .release-cycle-blob { stroke-width: var(--blob-border-width); } - text { + .text-main { fill: var(--svg-color-foreground-primary); + /* use specific colours on known backgrounds */ + &.release-cycle-status-security, + &.release-cycle-status-bugfix { + fill: black; + } + } + .text-outline { /* an outline of the background color, in case it's not set - correctly */ + correctly */ + fill: transparent; stroke: var(--svg-color-background-primary); stroke-width: var(--blob-border-width); - /* draw stroke first (half of it will be visible as outline) */ - paint-order: stroke; /* use specific colours on known backgrounds */ - &.release-cycle-status-security , + &.release-cycle-status-security, &.release-cycle-status-bugfix { - fill: black; stroke: var(--status-bg-color); } - /* For year labels, keep outline below the row shading - (it's a separate element) */ - &.release-cycle-version-label-outline { - fill: transparent; - } - &.release-cycle-version-label { - stroke: none; - } } .release-cycle-status-end-of-life { --status-bg-color: #DD2200; @@ -120,7 +111,7 @@ {% set y = version.y * line_height %} - {{ format_year(year) }} - + {% for cls in ('text-outline', 'text-main') %} + + {{ format_year(year) }} + + {% endfor %} {% if not loop.last %} - - {{ version.status }} - + {% for cls in ('text-outline', 'text-main') %} + + {{ version.status }} + + {% endfor %} Date: Tue, 2 Dec 2025 15:48:41 +0100 Subject: [PATCH 3/7] Set background color explicitly --- _tools/release_cycle_template.svg.jinja | 32 +++++++++---------------- 1 file changed, 11 insertions(+), 21 deletions(-) diff --git a/_tools/release_cycle_template.svg.jinja b/_tools/release_cycle_template.svg.jinja index 89f9d9ad2..744073335 100644 --- a/_tools/release_cycle_template.svg.jinja +++ b/_tools/release_cycle_template.svg.jinja @@ -27,6 +27,8 @@ width: 100%; --blob-border-width: 1.6px; + + background-color: var(--color-background-primary); } .release-cycle-year-line { stroke: var(--svg-color-foreground-primary); @@ -109,16 +111,6 @@ {% for version in versions %} {% set y = version.y * line_height %} - - - Python {{ version.key }} - - {% if version.y % 2 %} - {{ format_year(year) }} - - {% endfor %} + + {{ format_year(year) }} + {% if not loop.last %} Date: Tue, 2 Dec 2025 15:50:26 +0100 Subject: [PATCH 4/7] Fix --- _tools/release_cycle_template.svg.jinja | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/_tools/release_cycle_template.svg.jinja b/_tools/release_cycle_template.svg.jinja index 744073335..20b3bc9c4 100644 --- a/_tools/release_cycle_template.svg.jinja +++ b/_tools/release_cycle_template.svg.jinja @@ -125,7 +125,7 @@ {% for year in years %} Date: Tue, 2 Dec 2025 16:18:18 +0100 Subject: [PATCH 5/7] Avoid :root --- _tools/release_cycle_template.svg.jinja | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/_tools/release_cycle_template.svg.jinja b/_tools/release_cycle_template.svg.jinja index 20b3bc9c4..ee44edbd6 100644 --- a/_tools/release_cycle_template.svg.jinja +++ b/_tools/release_cycle_template.svg.jinja @@ -5,7 +5,8 @@ viewBox="0 0 {{ diagram_width }} {{ diagram_height }}" >