Skip to content

chore(main): release 2.0.0 - #804

Closed
github-actions[bot] wants to merge 1 commit into
mainfrom
release-please--branches--main
Closed

github-actions[bot] wants to merge 1 commit into
mainfrom
release-please--branches--main

Conversation

@github-actions

Copy link
Copy Markdown
Contributor

🤖 I have created a release beep boop

2.0.0 (2026-09-27)

⚠ BREAKING CHANGES

  • put the pictures pages carry where the rest of the output goes (#592)
  • stop the build on three things it used to publish around (#590)
  • put everything the build generates in one directory (#584)
  • WikvenVersionPage is now WikvenAboutPage, and its default page name is "About" rather than "Version".
  • group the composite actions under actions/ (#359)
  • require MediaWiki 1.46, dropping 1.45 support (#236)

Features

  • action: default to a pinned image version and cache it between runs (#188) (f7fcb40)
  • actions: offer a guiding pull request comment on translation findings (#520) (1ab0175)
  • add a {{WIKVENVERSION}} variable (#604) (a702b9f)
  • add a mark command to number translation units (#216) (0fcde73)
  • add translate scaffold to generate translation skeletons (#223) (48ce2ab)
  • bake ULS webfonts into the static export (opt-in) (#286) (074a103)
  • bake with the standalone binary in CI, and fix the three things that found (#481) (8cf3bc3)
  • base the image on mediawiki:1.46-fpm-alpine (#332) (f3fdcee)
  • build: list the site's extensions and skins, with their licenses (#523) (42d75d2)
  • build: name wikven in the User-Agent of every request it makes (#542) (7d6d1ce)
  • docs: put a copy button on the code blocks (#377) (3beee91)
  • fold the version page into an About page (#426) (af61267)
  • gate translation checks on broken source pages, not on stale translations (#385) (aacfbfc)
  • give Minerva a main menu the export can serve (#366) (fc59117)
  • give the standalone binary the translate commands (#507) (25ba28e)
  • have a bake say where its time went (#719) (d9d56e5)
  • have serve say where the site it is serving can be read (#733) (b1c42da)
  • have the binary introduce itself rather than Caddy (#734) (fd4d889)
  • index each language separately, and assert it stays that way (#447) (b4b01cc)
  • keep Vector's appearance menu, which works statically (#387) (ce30fea)
  • let a bake keep the extensions and skins it fetched (#723) (ec65354)
  • let a bake reach more than one service (#798) (2d25205)
  • let a site choose the skin it is read in (#589) (5f96e9e)
  • let a site say where it will be published (#621) (6e458fd)
  • let a skin author turn off the chrome wikven imposes (#551) (ea78cab)
  • let a stamp mean someone read the translation (#572) (12d3292)
  • let WikvenFailOnCategories name the categories a build must find no page in (#661) (89d4726)
  • localize translated-page chrome and route Special:Translate links to the edit host (#229) (3afa7c4)
  • make page titles translatable, and translate them into Korean (#256) (acdd975)
  • make the Translating page translatable (#248) (6122151)
  • name a setting that belongs to no one (#578) (3df5b0e)
  • name the server a binary build ran on, on the licenses page (#617) (d68b969)
  • name the setting core cannot accept (#574) (56f2d80)
  • publish images on releases and nightlies, not on every commit to main (#488) (18fa018)
  • publish the image to quay.io as well, with no token to keep (#485) (f387e5e)
  • put everything the build generates in one directory (#584) (d8b8f43)
  • put the generated templates under one name, and keep the old ones (#559) (2cd766a)
  • put the pictures pages carry where the rest of the output goes (#592) (78fdf9f)
  • put the skin switcher in the toolbox and drop the footer select (#351) (2f2551e)
  • refuse a translation carrying a tag that belongs to its source page (#675) (d0bfe72)
  • require MediaWiki 1.46, dropping 1.45 support (#236) (993e62c)
  • resolve Special:MyLanguage/ links in the static export (#225) (f4904ea)
  • say above the tables what baked the site (#774) (7f36389)
  • say what built a site, in the footer of every page (#799) (2b17d0b)
  • say what every built site redistributes, on a page the footer links (#560) (3fe4eb6)
  • say what the translations phase spends its time on (#800) (eb78cfa)
  • say what wikven does about Lua, and stop guessing at it (#473) (ea10b7d)
  • say which address a page is published at, and where its translations are (#658) (002260c)
  • settle the actions' inputs before 1.0.0 freezes them (#583) (2bee0c1)
  • settle what a page is called in the output (#605) (a2860f7)
  • ship SifterSearch as a built-in, on-by-default search extension (#195) (7b19be8)
  • stop the build on three things it used to publish around (#590) (9c0a0b3)
  • support Citizen in wikven instead of per-site workarounds (#369) (bced0dd)
  • translate page content into other languages (#214) (28ff2b2)
  • write a sitemap for a site that says where it is published (#623) (b0ad0a1)

Bugfixes

  • action: use a locally-built image instead of always pulling (#194) (8046aa4)
  • answer a caller that asked for a whole URL with one (#630) (effaada)
  • answer a change to an English page in English alone (#715) (7d2bc8e)
  • answer symlinks where a source tree is read, not where a path is bounded (#591) (d3be13e)
  • build the image when a Translate dev dependency has an advisory (#277) (00838b9)
  • build the search index once, at the end (#283) (09a5324)
  • build: put wikven in front of the User-Agent core builds for Commons (#543) (4c774a3)
  • bump bundled SifterSearch to v0.6.0 (stop the double search box) (#200) (cd38aa7)
  • bundle the modules core loads by looking at the rendered page (#484) (c96c107)
  • check-translations: keep the comment to what the change touches (#541) (8288229)
  • clear the title cache once the translation units exist (#466) (562ea9e)
  • copy the pictures an extension serves out of its own directory (#787) (541a21a)
  • create directories with wfMkdirParents (#289) (5157174)
  • date each page at the commit that changed it, not at the bake (#424) (4cd31f4), closes #406
  • declare the build's directory settings in extension.json (#262) (65432b5)
  • decode JS-bundle URL escapes with json_decode in AssetLocalizer (#297) (ccbf702)
  • don't treat a documented <translate> example as a translation source (#239) (cdcc388)
  • drain translation jobs by hand again, reverting #311 (#326) (4170fd7)
  • drop the .git the bundled extension clones leave in the image (#330) (d19dbf4)
  • drop the category footer's dead Special:Categories link (#173) (2df6bf8)
  • drop the discussion tab in every skin, Minerva included (#493) (cd0fccd)
  • dump ResourceLoader modules without load.php's HTTP response (#259) (3a39aac)
  • end a source translation unit where its <translate> block ends (#379) (50aebd8)
  • export subpage titles as real subdirectories (#213) (1db8e0d)
  • fail the build when a stylesheet never reaches the disk (#565) (6ad1b41)
  • fail the build when the webfonts a site asked for cannot be copied (#566) (6fbd87a)
  • fail when a composer package lands where nothing loads it (#581) (263fee5)
  • fetch a third-party extension again when its pin moves (#546) (44938c2)
  • fetch the bundled extensions as tarballs, not clones (#331) (9f60efa)
  • freeze page_touched so wiki-page modules hash the same every bake (#271) (853c06f)
  • give a chart's identifiers numbers of the page's own (#782) (659d8dd)
  • give a fetch that reaches the network more than one go (#469) (ba9fb1d)
  • give a picture named in a page's metadata an address that resolves (#648) (a2c3b32)
  • give Citizen's "View source" tab an icon (#440) (f0b4e02)
  • give Citizen's search shortcuts the search the export has (#397) (27eeebf)
  • give every source image its own File: page (#603) (623b866)
  • give the per-skin build its own environment and working directory (#298) (cfb0243)
  • give the settings page the sentence written for it (#753) (6615b96)
  • give the skin list its own section instead of renaming the toolbox (#363) (aa13b7b)
  • grant the release binary job the provenance permissions it needs (#177) (be9f283)
  • hide dead skin chrome left by the static export in Timeless and Citizen (#196) (1b4c9e1)
  • hide the empty tools box each skin draws around the toolbox (#346) (5afb909)
  • import again, in a fresh boot, the pages that waited on another page (#772) (1a58d19)
  • index a translated page once, not once per title it has (#458) (e934e00)
  • keep $wgCacheEpoch out of module versions (#270) (7795bf9)
  • keep a search inside the skin copy the reader is in (#434) (32e7f6d)
  • keep a skin pass out of the other skins' pages (#430) (e84cd11)
  • keep the build's chrome off a licenses page the site wrote (#568) (e45596e)
  • keep the paths the build derives out of a site's hands (#573) (e21b16b)
  • keep the site's own styles linked from a style directory (#563) (5dfea21)
  • leave a page of its own where a translation would go (#597) (09934b7)
  • let a picture named in a page's head be told from one in its body (#671) (2aa57ca)
  • let Citizen's preferences panel keep its own spacing (#708) (904775d)
  • let the downloaded tarball go when the fetch does not (#695) (0595e40)
  • link the search toggle to the results page, not to Special:Search (#421) (3b3b2d5)
  • list directories with FilesystemIterator, not glob (#294) (f8188fa)
  • make storeImages downloads status-aware and stream to disk (#307) (b75afc3)
  • make the exported HTML the same in every bake (#282) (caf6661)
  • make verbatimRanges() comment-aware (#312) (59117f7)
  • match <translate> with its attributes, as Translate does (#292) (243bbb0)
  • measure a sitemap against both the caps it has to be inside (#669) (a12295f)
  • move Vector's skin list into the appearance menu (#423) (68917e0), closes #405
  • name the page an import refuses instead of ending in a trace (#765) (8506b52)
  • never read a translation file as a base page (#390) (6adb270)
  • probe openssl's own compiled-in CA bundle location first (#309) (c82d5b1)
  • propagate the child's exit code from wikven build and serve (#302) (5c75797)
  • read a source page the way Translate segments it (#388) (ff95548)
  • read a subpage as a translation only where it says it is one (#580) (e967fb5)
  • read units the way Translate does (#358) (4642fc8)
  • read Vector feature classes through classList (#301) (9dfebd1)
  • rebase the printfooter link on a page exported into a subdirectory (#422) (5e5b905)
  • refuse an extension or skin name that points outside the image (#570) (35c0678)
  • refuse an image or asset path that climbs out of its directory (#588) (8fe34a1)
  • refuse images the source tree only points at (#596) (38669f5)
  • render every translated page after all pages are marked (#243) (0d987d3)
  • reparent the local URLs a page carries in its JavaScript config (#445) (beba746)
  • replace fetchExtensions' curl subprocess with core's HTTP client (#308) (9be62ec)
  • replace hand-rolled balanced-div matcher with RemexHtml (#314) (3173c2d)
  • report a run the standalone binary's build died in (#665) (6f77af3)
  • report a vetoed File:/MediaWiki: import as a failure (#291) (8140261)
  • require real tag context before rewriting a relative reference (#313) (0f04ab6)
  • require UniversalLanguageSelector explicitly and disable its webfonts (#218) (1b3e1b7)
  • resolve $wgWikvenLogos through Title/RepoGroup, not by hand (#315) (6f4de14)
  • resolve translate mark/stamp file paths against the source directory (#220) (0aa95ea)
  • retry and cache the build's Wikimedia Commons lookups (#257) (2ac2cce)
  • run the job queue in a fixed order (#281) (6aa694e)
  • say what language the licenses page's copies are in (#562) (4242977)
  • send a Special:MyLanguage link to the file it means (#611) (1aad459)
  • settle the search bundle's language order between bakes (#451) (e7fc96c)
  • split translation units only on adjacent newlines, as Translate does (#295) (0feeebf)
  • stop a new unit inheriting a deleted one's translations (#564) (5fdd228)
  • stop handing a reader the address of the machine that built the site (#638) (eac411d)
  • stop loading skins the site never asked for (#662) (99a8f9b)
  • stop shipping a Caddy module wikven cannot use (#619) (e186a3d)
  • stop the build when an image of yours did not import (#569) (c78b572)
  • stop the preview answering for an address the site does not have (#650) (18e6b01)
  • stop the RLPAGEMODULES rewrite from editing article prose (#296) (9ef6b8a)
  • stop the translation drain spinning on a queue that gives nothing (#739) (b93aeef)
  • stop three things going quiet (#599) (9103f0c)
  • stop ULS reaching for input methods the export cannot serve (#402) (af60e0e)
  • strip the clocks ImageMagick writes into exported thumbnails (#276) (a1bb8d0)
  • switch skins correctly from a translated page (#258) (6f85fe6)
  • take the DISPLAYTITLE spellings from the magic word registry (#293) (7c88a7a)
  • take the translations comment down rather than turn it into an all-clear (#595) (6b88a10)
  • tell a source editor only about translations that fail the check (#718) (38d5640)
  • translate a page whose file name is not spelled like its title (#567) (6ec596a)
  • turn off JsonConfig's cache for a build that makes what it reads (#770) (feff623)
  • turn the parser cache off so a bake reads its own finished state (#335) (91036c3)
  • use CSSMin's data: URI encoder in AssetLocalizer (#310) (6fe63d5)
  • wait for the page before filling in the skins section (#649) (d615e2a)
  • wrap a word too long for the screen instead of scrolling the page (#545) (818a0e9)

Performance

  • freeze page_touched once, in the orchestrator (#431) (a2d878b)
  • give the image the gmp its base conversions keep asking for (#742) (16e8f39)
  • keep the job queue on the database the build already has open (#736) (5b79453)
  • let a bake's boots share what the first one compiled (#741) (bfb9a14)
  • let the binary's bake share its compiled PHP too (#743) (228d783)
  • let the wiki's own database sync the way the three beside it do (#725) (bb7a8d2)
  • offer Translate only the languages the source is written in (#730) (fd74048)
  • parse the pages beside each other before importing them (#728) (619fb47)
  • render the skins beside each other (#437) (33bbbfb)
  • spare the translation units a description they will never show (#737) (cd45597)
  • stop purging a cache a bake does not have (#735) (bcbb842)
  • stop rebuilding translation stats a bake goes on to recompute (#722) (500cb23)
  • stop rendering the history pages the export throws away (#432) (39fe30c)
  • stop rendering translation pages the build renders again (#729) (e3d40d4)
  • stop running two jobs a static export has no reader for (#726) (c866061)
  • tag the base page ready without writing it again (#738) (b672785)

Refactoring

  • group the composite actions under actions/ (#359) (01f0f3d)

This PR was generated with Release Please. See documentation.

@lens0021 lens0021 closed this Sep 27, 2026
@lens0021
lens0021 deleted the release-please--branches--main branch September 27, 2026 03:15
lens0021 added a commit that referenced this pull request Oct 9, 2026
Stops the bogus `release 2.0.0` pull requests (#837, #832, #804, #764,
#613). Sets release-please's `force-tag-creation` (in 17.6.0, which the
pinned action v5.0.0 requires), so a draft release's tag exists from the
start and the next release pull request starts from it. The binaries
still attach before the publish job un-drafts the release. The
Development page and its Korean translation say why.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

https://claude.ai/code/session_01RALhBwbiZGrBpprRuUjAkK

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

1 participant