Skip to content

The pins and the download URLs move with the release - #19

Merged
fabeat merged 2 commits into
mainfrom
release/0.3.0
Oct 30, 2026
Merged

fabeat merged 2 commits into
mainfrom
release/0.3.0

Conversation

@fabeat

@fabeat fabeat commented Oct 30, 2026

Copy link
Copy Markdown
Contributor

The site installs the three libraries as path repositories and names a released version twice — once in require and once in the path repository's versions map — so both have to move, and they have to agree: a pin that names an older version in one place fails the install rather than the build, and the message names the repository that is outranked.

Package before after
commonmark-generic-directives 0.3.0 0.3.1
markdown-word dev-main 0.3.0
markdown-presentation dev-main 0.3.0

composer.lock follows the pins, because a lock that does not satisfy composer.json fails composer install outright. The update was limited to those three; nothing else moved.

The download URLs. mdoffice's assets are named after the version, so every URL that names an asset has to name the version that is published — a URL naming a version that was never published is a 404 forever. Five changed, all of them under releases/latest/download/: the Linux, macOS and phar URLs on the installation page, the ARM asset it names, and the one on the front page.

The --version transcript. The page shows what an installed copy answers, and it was showing mdoffice 0.1.1 with the libraries at 0.2.2. It now shows mdoffice 0.1.2 with the libraries at v0.3.0.

The v is what the program prints: a released copy reads its libraries from the install, where Packagist's version is the tag name. That was checked against the published 0.1.1 executable and the published phar, which both print v0.2.2 — so the page was missing the v before this change as well. The transcript is now the program's own output, character for character.

What is left

This is the last thing to change, and it should be merged after the four releases are published — the URLs it carries are 404 until then.

The site installs the three libraries as path repositories and names a released
version twice — once in `require` and once in the path repository's `versions`
map — so both have to move to the version that was just released. The
directives package goes to 0.3.1 and the two converters to 0.3.0, and the lock
follows the pins: a lock that names an older version fails the install rather
than the build, and the message names the repository that is outranked.

The assets of `mdoffice` are named after the version, so the three download
URLs and the ARM asset one of them names move to 0.1.2. A URL naming a version
that was never published is a 404 forever.
The page shows what an installed copy answers, and the answer changed with
the release: the tool is `0.1.2`, and it holds the `v0.3.0` of both
converters. The libraries were read from the install rather than declared,
so the numbers are the ones the program prints.

That includes the `v` in front of the library versions, which the transcript
was missing: a released copy reads its libraries from Packagist, where the
version is the tag — `v0.3.0` — and the published `0.1.1` answers
`v0.2.2` on both lines. A checkout answers with the branch it resolved
rather than with a release, which is what the prose below the transcript
says, and the padding is the program's own: the version starts in the same
column on both lines, in the transcript and in the output.
@sonarqubecloud

Copy link
Copy Markdown

@fabeat
fabeat merged commit 8f35749 into main Oct 30, 2026
3 checks passed
@fabeat
fabeat deleted the release/0.3.0 branch October 30, 2026 15:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant