Skip to content

Compare any two indexes - #2105

Merged
stonebig merged 2 commits into
winpython:masterfrom
stonebig:compare-any-two-indexes
Sep 13, 2026
Merged

stonebig merged 2 commits into
winpython:masterfrom
stonebig:compare-any-two-indexes

Conversation

@stonebig

Copy link
Copy Markdown
Contributor

No description provided.

stonebig and others added 2 commits September 13, 2026 18:46
wppm.diff could already compare two package indexes, and nothing could
reach it. It was not on the wppm command line, so nothing in -h mentioned
it; its own usage text said "python diff.py", which the relative imports
make impossible; and printing a comparison died on Windows with a
UnicodeEncodeError, because an upgrade is written "1.2.3 -> 1.2.4" with a
U+2192 and the console is cp1252 -- so any two releases far enough apart
to have one upgraded package could not be compared at all.

wppm -diff <a>.md <b>.md now does it, on any two indexes: two releases, a
year apart, or two flavors of the same release. It runs before the target
is resolved, so it needs no distribution -- two downloaded files and a
pip-installed wppm are enough.

The file mode also had no title, and the direction is not guessable from
the output: every upgrade line reads "old -> new", so a reader holding
the pair the wrong way round sees every upgrade as a downgrade. It now
opens with "## Changes from <first> to <second>". The version mode keeps
the header it has always had; the dead line above it, assigned and then
overwritten before it could be printed, is gone.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
A _History.md compares a release against the one immediately before it,
and that chain carries no meaning: flavors are not stable across cycles,
one appearing while another goes away, and readers upgrade about once a
year rather than every cycle. So the comparison it offers is one almost
nobody is asking for.

The cycle's changelog pull request now files the package index, the lock
file and the requirements, and nothing else. Each of those describes its
own release; readers wanting a comparison pick their own two indexes with
wppm -diff. The histories already in changelogs/ stay where they are.

The local build still writes one, beside its output where the person
running the build reads it before publishing anything -- it is the useful
view there. It is no longer copied into changelogs/, which is what turned
it into a published artifact.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@stonebig
stonebig merged commit c5a77ba into winpython:master Sep 13, 2026
2 checks passed
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