Skip to content

Release assets under assets/readme/examples/ drift — nothing regenerates them, and the deck stamps a raw SNAPSHOT #454

Description

@DemchaAV

Two problems that compound

1. Nothing regenerates the committed example assets

cut-release.ps1 refreshes web/showcase/** (Step 4, ShowcaseSync) and assets/readme/repository_showcase_render.png (Render-ReadmeBanner). It touches nothing under assets/readme/examples/**.

Those files are linked from examples/README.md and the root README, so a reader clicking through gets whatever was committed the day the example was added. assets/readme/examples/engine-deck.pdf is the visible case: it is still the v1.8.0 render, carrying the codename illustrative, two minors behind. It has not been regenerated since dcc62500.

2. The deck bakes a pre-release qualifier into a public asset

EngineDeckExample interpolates the raw VERSION in three places — the page title, the section header, and the footer on every slide:

.leftText("GraphCompose · v" + VERSION + " “" + CODENAME + "”")

The version pill is handled: versionBlock() strips the qualifier with VERSION.replaceFirst("-.*$", ""), with a comment explaining that 2.0.0-SNAPSHOT is too wide for the 96 pt pill. The other three sites got no such treatment, so a render taken on develop today produces:

GraphCompose · v2.1.0-SNAPSHOT “twinned”

So the two problems pull against each other: the asset is stale, and regenerating it at any moment other than during a cut publishes a -SNAPSHOT string to readers.

Suggested direction

  • Strip the qualifier once, where VERSION is resolved, rather than at one of four use sites — the pill's replaceFirst then becomes redundant and can go. A deck should never display a build qualifier.
  • Either add an assets/readme/examples/** refresh step to cut-release.ps1 (alongside Render-ReadmeBanner, which already solves the same problem for the hero), or drop the version and codename from the deck entirely so the asset stops being version-bound.
  • If a refresh step lands, verify it under -DryRun, -PostReleaseOnly and -SkipShowcase — the v1.6.5 lesson was a release step that only worked in the default mode.

Related

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingreleaseRelease preparation, publishing and versioning

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions