Skip to content

chore(release): LWT 3.3.0-fork, and restore the lost 3.2.2 changelog - #269

Merged
HugoFara merged 1 commit into
developfrom
chore/release-3.3.0
Aug 6, 2026
Merged

chore(release): LWT 3.3.0-fork, and restore the lost 3.2.2 changelog#269
HugoFara merged 1 commit into
developfrom
chore/release-3.3.0

Conversation

@HugoFara

@HugoFara HugoFara commented Aug 6, 2026

Copy link
Copy Markdown
Owner

Cuts 3.3.0-fork, and first repairs a changelog bug that would otherwise be
made permanent by the release.

The 3.2.2 changelog was silently deleted

3.2.2 has been tagged and on main since 2026-08-05, and ApplicationInfo
reports it — but grep 3.2.2 CHANGELOG.md returned nothing. The sections read
[Unreleased] → [3.2.1-fork].

The release commit b35053cf3 did write the heading. Merge 2a9117053
(PR #259, apkg export) removed it:

commit has [3.2.2-fork]?
aa0b366bb (first parent, PR #260) yes
579c9c9fa (second parent, apkg branch) no
2a9117053 (merge result) no

That branch was cut before the release, so resolving the CHANGELOG conflict
took the branch side. The effect isn't cosmetic: the fifteen items that
shipped in 3.2.2 — the term modal, CurrentLanguage::resolveId(), the CRLF
tag-import fix, #250, #249, the data_hex identity change, thirteen security
advisories — were sitting back under [Unreleased]. Anyone running 3.2.2 had
no changelog for their version.

It had to be fixed before the release or 3.3.0's section would have absorbed
3.2.2's content and the gap would have become permanent.

Verified by extracting both and diffing: the restored section is byte-identical
to what b35053cf3 published. The ### Removed block for #266 is new work,
so it moves up into 3.3.0 rather than staying inside the restored 3.2.2.

The release

Minor rather than patch — three Added entries:

The reader fix is the one users are actually waiting on: selecting several
words in the reader produced a term named e6967a5826fe441a 75e3090289e2955d,
and 3.2.x still ships it.

@since 3.2.2 annotations in source are left alone — those features did ship
in 3.2.2.

Checks

  • Psalm --threads=1 — no errors found
  • PHPCS PSR12 on ApplicationInfo.php — 0 errors, 0 warnings
  • PHPUnit — 9174 tests, 22377 assertions, all pass. The 1 warning is
    pre-existing and inside vendor/kiwilan/php-ebook.
  • Vitest — 133 files, 4419 tests pass
  • markdownlint MD013 count unchanged at the pre-existing 319
  • No frontend rebuild: nothing in vite.config.ts or src/frontend/ reads the
    package version.

Two things, because the release cannot be cut correctly without the first.

Restore the 3.2.2-fork changelog section. It was written by the release
commit b35053c and deleted by merge 2a91170 (PR #259, apkg export):
that branch predated the release, so resolving the CHANGELOG conflict took
the branch side and dropped the heading, folding all fifteen items that
shipped in 3.2.2 back under [Unreleased]. 3.2.2 has been tagged and on main
since 2026-08-05 with no changelog of its own. The restored section is
byte-identical to what b35053c published; only the heading was missing.

The `### Removed` block for #266 is new work, not 3.2.2's, so it moves up
into the release being cut rather than staying where the heading landed.

Cut 3.3.0-fork. Minor, not patch: three Added entries — Anki deck import
(#228), FSRS-6 scheduling groundwork (#238 phase 2a), and .apkg export and
import. The reader fix is the one users are waiting on: selecting several
words produced a term named after two SHA-256 tokens, and 3.2.x is still
shipping it.

Bumps ApplicationInfo::VERSION + RELEASE_DATE and package.json. `@since
3.2.2` annotations are left alone — those features did ship in 3.2.2.
@HugoFara
HugoFara merged commit 1a95ce5 into develop Aug 6, 2026
14 checks passed
@HugoFara
HugoFara deleted the chore/release-3.3.0 branch August 6, 2026 13:02
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