Parsoid/Deployments
Appearance
From mediawiki.org
< Parsoid
Planned deployments, linked from wikitech:Deployments. For a list of past deployments, look for 'parsoid' in wikitech:Server Admin Log. See also Parsoid/Releases for non-alpha versions.
For the current train deploy schedule, see MediaWiki 1.46/Roadmap#Schedule for the deployments.
See wikitech:Parsoid#Deploying changes to learn how to deploy a new version of Parsoid.
August 11-13 In progress v0.24.0-a19 for 1.47.0-wmf.15
[edit ]- build: Updating dependencies
- Fix edge case bug resolving fragments in subpage contexts
- Explicitly set useParsoid in GetTOC tool, T432763
- Support lazy image loading in Parsoid, T148047, T324158
- Sync parserTests with core
- Omit mw-file-description class from manualthumbs
- ParserTests: Split off TokenStreamPatcher tests into separate file
- ParserTests: Split off sanitizer tests to separate file
- ParserTests: Move several p-wrapping tests to pWrapping.txt
- ParserTests: Split off fuzz tests to separate file
- ParserTests: Move more tests to wtsTests.txt and separatorTests.txt
- ParserTests: Split off Parsoid-specific html2wt tests into own file
- ParserTests: Split off medialink tests into its own file
August 4-6 Yes V0.24.0-a18 for 1.47.0-wmf.14
[edit ]- ParserTests: Split off cat & lang link tests into separate file
- ParserTests: Split off wikilink tests into its own file
- Sync parserTests with core
- Move "class" attribute before "typeof" in gallerybox element, T344784
- AddMediaInfo: Set LINK_BATCH_SIZE to 5000, T433179
- Allow class option on gallery lines, T344784
- AddMediaInfo: After media limit is hit, don't treat rest of images as missing, T430854
- SiteConfig: Increase parsoid media limit to 5000, T430854
- WikiLinkHandler: Fix overager check for presence of |, T433320
- TableFixups: Refactor getReparseType + fix bugs in td-th merge scenarios, T417792
- AddRedLinks: Set LINK_BATCH_SIZE to 5000, T433179
- TableFixups::getReparseType: Remove useless check
- tables.txt: Remove standalone section from unsupported test mode
- build: Updating brace-expansion to 1.1.16, 2.1.2
- Introduce new reparse scenario to handle <th> after <td>, T417792
July 28-30 Yes V0.24.0-a17 backport to 1.47.0-wmf.13
[edit ]- Ensure continuity of template wrapping layer after TOC insertion, T385317, T432477
- No need to findSectionAncestor for insertion point
- Begin to distinguish "missing fragment" from "empty fragment" in URLs, T19006
- Make use of native string functions where possible
- Fix bug setting namespace in TemplateHandler, T360814
- Colon-escaped child link doesn't drop trailing slash, T234299
- TestUtils.js: Normalize away data-mw-original-href
- WikitextSerializer: Turn string constants into PHP constants
(削除) July 21 - July 23 v0.24.0-a16 for 1.47.0-wmf.12 (削除ここまで) Not deployed
[edit ]- Fix source of spurious dom-diffs that in turn caused dirty diffs, T409675
- Rip out self-nested extension tag support from grammar, T387808
- roundtrip-test.js: Ensure dsr fixup is applied to newDP as well
- Add a tracking category for pages where Parsoid reaches the configured media limit., T430854
- Assign dsr to body element in roundtrip testing, T432282
- Remove unused $linkData->linkType
July 20 Yes V0.24.0-a15 backport to 1.47.0-wmf.11
[edit ]- Avoid pre-expansion lint if tokenized template is aborted, T353697
- Handle slash prefixed links in NSs that allow subpages, T221028, T226289
- Bump image limit to 1250, T430854
July 1 Yes V0.24.0-a14 backport to 1.47.0-wmf.9
[edit ]- Rely on HeadingPFragment to set the index when inTemplate, T430367, T387374
- TableFixups: Add missing 'inTemplate' flag to pipeline construction, T430186
June 30 - July 2nd Yes V0.24.0-a13 for 1.47.0-wmf.9
[edit ]- prepare_vendor_patch.sh: Fix composer update command
- Unbalanced preproc prevents heading, T429887
- Bump to wikipeg@6.1.4
- [api-testing] Allow optional whitespace in content-type headers
- Handle svg tag name for PHP 8.3, T428105
- Remove html from data-mw when it's added to the indicators, T430069
June 25 Yes V0.24.0-a12 midweek backport to 1.47.0-wmf.8
[edit ]- Extension tag PFragment wrapper should be evaluated in inline context
- Api/DataAccess: Don't use $revid if $titleOverride is set
- Add ExtTagPFragment type to be returned by the preprocessor, T429624
- rt-testing: Target only k8s/cloudvps based setup, T420336
- Only wrap stashable content in block nodes
- WrapSectionsState: Avoid using `-1` for a codepoint offset
- Add a HeadingPFragment type to be returned by the preprocessor, T391624, T387520, T387521, T384490, T387374
- tests: Assert Parsoid v3 HTML shape (full-document vs body-only), T393295
- Inspect DOMFragments when stashing elements in mw-empty-elt wrappers, T429688
- Add hidden lint to ease updating enwiki's Template:Pre, T353697
June 23-25 Yes V0.24.0-a11 for 1.47.0-wmf.8
[edit ]- Point red file links to Special:Upload, T425841
- Utils: Add helper function for detection of malformed utf-8
- AddMediaInfo: Limit number of rendered media, T348236
June 16 Yes V0.24.0-a10 backported to 1.47.0-wmf.7
[edit ]- Stop section wrapping all literal html heading, T417530
- Do not add DisplaySpace in svg content, T428105
June 16-18 Yes V0.24.0-a9 for 1.47.0-wmf.7
[edit ]- Document the move of AddMetaData to PageBundleParserOutputConverter, T393925
- Close API Portal wiki, T427537
- Sync parserTests with core
- Remove rel=noreferrer and rel=noopener on external links, T427561
- Ensure extConfig is loaded for tagNeedsNowikiStrippedInTagPF
- Port sync-parserTests.js to PHP
- Port fetch-parserTests.js to PHP
- Update indicators.txt after core change
June 9 Yes V0.24.0-a8 backported to 1.47.0-wmf.6
[edit ]- Parsoid Extension modules can now register codec hints for new attributes, T424427
- Factor out WTUtils::getDOMFragmentContents()
- Revert "rt-testing: Use dedicated cache for testing instance", T428452
- Fix end of template detection for shouldStashRenderingTransparentNodes, T378906
- rt-testing: Use dedicated cache for testing instance, T420336
- Sync parserTests with core
- Fix p-wrapping for tables embedded in dllists, T427664
- Allow invalid extlink chars encoded as entities, T427972
- Update name and address for bvibber
- [tests] Skip preproc performance test if xdebug extension is loaded
- Update docs/data.md with information on rich attributes and document schema
- prepare_vendor_patch: use docker from vendor README instead of local composer
June 1 Yes V0.24.0-a7 backported to 1.47.0-wmf.4
[edit ]May 28 Yes V0.24.0-a6 backported to 1.47.0-wmf.4
[edit ]- Match proxy signature to ContentUtils::createAndLoadDocument
- Pass SiteConfig to DomPageBundle::toDom, T427354
- Set inTemplate pipeline opt when reprocessing tokens, T427098
- regression-testing: Fix default values for CLI args, T420336
May 26-28 Yes V0.24.0-a5 for 1.47.0-wmf.4
[edit ]- DOMRangeBuilder: Refactor handleFirstRenderingTransparentNode a bit, T426649
- Sync parserTests with core
- .phpcs.xml: change from a blocklist to an allowlist
- regression testing: Pass uid to mw parsoid deploy script
- More permissive extlink-like text in wikilinks, T413437
- DOMRangeBuilder: Don't stash mw:Param* metas, T426649
- Add SiteConfig as parameter to ::createAndLoadDocument()
- tests: Change TestCase::returnCallBack() to willReturnCallback()
- Fix crasher in expanded external links, T426645
- deploy-mw-parsoid.sh: Fix trailing @ character from ssh command
- Fix namespace of ContentUtilsTest
- Add some follow up FIXMEs, T404241
- Drop obsolete code and add span wrapper marker
- Create a REPL script for wikitext evaluation with Parsoid, T413372
May 19-21 Yes V0.24.0-a4 for 1.47.0-wmf.3
[edit ]- Remove some gratuitous picks in grammar
- Revert the code fix in e010a827 and update test
- ProcessTreeBuilderFixups: Don't drop content marked with mw:DOMFragment, T426371
- ProcessTreeBuilderFixups Cleanup: Remove unused frame arg
- DOMRangeBuilder: Don't stash/strip mw:DOMFragment style nodes, T426371
- DOMRangeBuilder: Fix broken isNewlineWrappingSpan helper, T426371
- ParserTests\TestRunner: distinguish `null` and in page property metadata
- build: Updating dependencies
- Add leading slash to api-testing paths
- prepare_vendor_patch: poll packagist instead of prompting
- rt-test: Allow using jsonformatter for output
May 12-14 Yes V0.24.0-a3 for 1.47.0-wmf.2
[edit ]- Make DOM data attribute loading fully lazy when counters are available, T409751
- rt-testing: Add an optional step to deploy mw-parsoid latest on k8s, T420336
- Reapply: "Fix a corner case in table attribute parsing"
May 7 Yes V0.24.0-a2 for 1.47.0-wmf.1
[edit ]- Revert "Fix a corner case in table attribute parsing"
- Extlink with templated url terminating chars, T368724
- Consolidate directives found in urls
- Don't URL-encode the caption text of free external links (take 2)
- Fix a corner case in table attribute parsing, T424446
- Update bin/start-rt-test.sh to allow RT testing a gerrit commit
- Update integrated known failures
- Handle top-level template parameters for empty-elt span wrapping, T425008
- rt/regression testing: Make scripts compatible with mw-parsoid, T420336
- Introduce BasePageBundle::hasContent and make isEmpty a negative proxy, T423701
- tests: Default $wgAllowExternalImages to false, T319058
- Don't stash TOC markers in mw-empty-elt elements, T425107
- Remove reference to makeConfigSetScript in comment
- build: Updating npm dependencies
- Always create a span for rendering-transparent nodes stashing, T425056
- Set page properties corresponding to magic word behavior switches, T373384, T424773
- Revert "Temporarily stub out PageContent::getRevisionId() to allow RT testing"
- ParserTests: Add newlines also after <br> tags
- Cast thumbtime to a string, T423241
Apr 28 Yes V0.24.0-a1 for 1.47.0-wmf.1
[edit ]Apr 28 Yes V0.23.0 for 1.46.0-rc0
[edit ]- Sync parserTests with TMH and core
- TOCData/SectionMetadata: update docs, support __clone, drop JsonSerializable
- Drop symfony/polyfill-php83 from requirements
Apr 28-30 Yes V0.23.0-a29 for 1.46.0-wmf.26
[edit ]- Sync parserTests with core
- tools/fetch-parserTests.js: use user-agent for both HTTP requests, T421680
- composer.json: Bump required PHP version to 8.3
- Add a method to check whether a BasePageBundle is empty, T423701
- Reduce performance test iteration count, T422865
- TestRunner: Update old syntax for callable
- Move redlinks pass into nested pipeline, T376943, T422962
- DiffUtils: Ensure rich attributes are always loaded when being compared
- Revert "Don't URL-encode the caption text of free external links"
- Don't wrap nodes in fosterable positions, T378906
- Gather more template-generated rendering-transparent nodes into a span, T378906
- Temporarily stub out PageContent::getRevisionId() to allow RT testing
- Support templates in link media option, T423948
- Sync parserTests with core
- Sanitizer: Don't arm inward-pointing French quotes, T378404
- DOMDataUtilsTest: Add new cloning tests + fix cloning bugs
- Record resolved title/rev in TemplateInfo
- Don't URL-encode the caption text of free external links
Apr 20 Yes V0.23.0-a28 - Backported to 1.46.0-wmf.24
[edit ]- Update phpunit to 10.5.63, T423763
- Sanitizer: more minor code clean ups synced from core
- Sanitizer: reorder functions to match core Sanitizer
- Sanitizer: partial sync from core to Parsoid
- Warn if the user-agent is not defined & document how to set it up, T421680
- [gallery] Use Sanitizer::sanitizeTagAttrs for args, T423192
- Add heuristic about when to serialize lc content to newline, T422966
- Add test demonstrating wt2wt bug in language converter with lists, T422966
- Add another test case for language converter markup and tables
- Allow language converter markup to contain tables, T422966
- Identify lints coming from parser functions, T420102
- parse.php: Fix --normalize for --wt2html
- AddRedLinksTest: use named test cases
- ConversionTraverser: update comment
- Don't language-convert inside <style> elements, T422879
Apr 14-Apr 16 Yes V0.23.0-a27 for 1.46.0-wmf.24
[edit ]- Skip performance test that crashes pcov so that coverage reports don't fail, T422865
- Sync parserTests with core
- Add rel="nofollow" attributes to test expected output
- Parser tests: Sort HTML attributes when normalizing output
- parserTests --update-unexpected now omits data-parsoid unless present before
- RegressionTesting: Additional tweaks to the script
- Fix edge case bug in TokenStreamPatcher
- RegressionTesting: Tweak script to fetch all changes if too many
Apr 6-Apr 8 Yes V0.23.0-a25/-a26 for 1.46.0-wmf.23
[edit ]v0.23.0-a26
- DOMDataUtils: Allow loading rich attributes from AttributeExpander output
- Sanitizer: Truncate IDs to a reasonable length; remove escapeIdReferenceList, T251506
- parse.php: fix typo
- DOMDataUtils: rich attribute optimization: don't store trivial rich values
v0.23.0-a25
- Detect invalid templated attributes of table cells and back out, T414751
- Add test to abort table cell attrs on wikilink from tpl, T414751
- Sync parserTests with core
- TableFixups: Skip cells of tables from well-balanced templates
- Fix behavior switch preventing inducing pwrapping, T421787
- ParsoidExtensionAPI: Document buggy call / use of $releaseDom
- Allow passing headers to rt test, T421699
- Sync parserTests with core, T246054
Mar 31-Apr 2 Yes V0.23.0-a24 for 1.46.0-wmf.22
[edit ]- build: Don't list json as a required extension, T401078
- Set 'prevent-selective-update' when conflicting metadata is set, T348236, T300979
- Html headings aren't section wrapped, T417530
- Use DataAccess::getExternalUrlInfo() for attributes of external links, T420043, T416536, T310512
- roundtrip-test: Add more debugging console.log stmts
Mar 23-25 Yes V0.23.0-a23 for 1.46.0-wmf.21
[edit ]- Stop adding tracking category for magic link in wikilink, T420749
- Match magic link classes with legacy parser, T329347
- Add `class` and `style` attributes for upright images, T420657
- DOMDataUtilsTest: Add several new lazy-loading tests
- TemplateHandler: Refactor to return PageContent not just string
- Strip all annotations, not just the last registered annotation stripper
- LanguageConverter: ensure zh language converter is actually disabled (take 2), T346657, T418549
- Suppress breaking on pipe in html attributes in link desc, T420286
- AddRedLinks: don't serialize to HTML when all we need is text content
Mar 17-19 Yes V0.23.0-a22 for 1.46.0-wmf.20
[edit ]- *PageBundle: remove roll-back compatibility for parsoid.counter
- build: Upgrade wikimedia/langconv from ^0.4.2 to ^0.5.0
- build: Upgrade minus-x from 1.1.3 to 2.0.1
- build: Upgrade mediawiki-phan-config from 0.19.0 to 0.20.0
- build: Upgrade mediawiki-codesniffer from 49.0.0 to 50.0.0
- Fix leaking listItem tokens, T419491
- Update baseconfigs
- Update sitematrix
- Regenerate integrated-mode known failures
Mar 10-12 Yes V0.23.0-a21 for 1.46.0-wmf.19
[edit ]- PageContent::getLinkTarget() is no longer optional
- Account for mw:LanguageVariant in WrapSectionState, T419090
- Rework for loop in TokenizerUtils::internalFlatten
- Minor Arguments refactor: add ::getSrcOffsets(), factor out EmptyArguments
- Fix deprecation warning
- Handle null revision content when getting main content
- Fix ord() deprecation warning in Utils::lastUniChar(), T419090
- Update copyright year
- Limit default width to file width, T407423
- Allow wikimedia/object-factory 6+ as well as 5.0.1, for cut-over
- Revert changes to counter initialization values
- Update comment about codec options in DOMDataUtils::cloneDocument()
- Use a more compatible lowercase
v0.23.0-a20, not put on train
[edit ]Issues with backward compatibility of page bundle data; resolved by Revert changes to counter initialization values (1247662)
- DOMDataUtils: Get rid of unused $options to visitAndLoadDataAttribs
- DOMDataUtils: prepareDoc -> prepareAndLoadDoc and remove boilerplate
- Init PB counters + update unit tests to be consistent with DataBag
- LanguageConverter: ensure zh language converter is actually disabled, T346657, T418549
- Grammar: Allow pipe in table attribute value, T406187
- Fix the RE used to detect lang-variant corruption, T418549
- WTUtils: Add fromTemplatedContent helper & export it into Ext/
- Script to fetch problematic ve-edits on zhwiki
Mar 3-5 Yes V0.23.0-a19 for 1.46.0-wmf.18
[edit ]- Fix newline constraints after encapsulated content
- composer: Loosen wikimedia/idle-dom requirements
- Tweak test file to ensure prepareDoc is followed by visitAndLoad*
- DOMDataUtils: Remove dead code
- Follow redirects when expanding templates using API; record original title
- Sync parser tests with core
- Make rich attributes enumerate their embedded document fragments, T348165
- TableFixups: Fix edge case in attribute reparsing, T417728
- Rename TempData::NO_ATTRS to ::TABLE_CELL_WITH_NO_ATTRIBUTE_SYNTAX
- When missing counters, don't create data-mw if it doesn't already exist
- Assorted cleanup of table fixups related code:
v0.23.0-a18, not put on train
[edit ]Issues with empty data-mw; resolved by When missing counters, don't create data-mw if it doesn't already exist (1242597)
- prepare_vendor_patch: tag validity check + force lowercase
- Permit the use of wikimedia/json-codec 5.0.0
- Add max annotation-id and about-id counter values to pagebundle
- WTUtils: Remove dead code
Feb 24-26 Yes V0.23.0-a17 for 1.46.0-wmf.17
[edit ]- Sync parserTests with core
- Support Japanese wiki use of double-wide hash and colon, T415405
- BasePageBundle: don't create counters array unless needed
- Remove AllowDynamicProperties stub, unneeded under PHP 8.2, T417921
- Sync parserTests with core.
- DOMCompat::replaceChildren(): work around bug in PHP 8.3
- [tests] *Actually* skip +langconv tests, T380517
- build: Upgrade mediawiki-phan-config for PHP 8.5 support, T406326
- DOMRangeInfo: Tighten types and remove dead code
- Cleanup after processing embeded docs, T415220
- Use wikipeg 6.1.1
- Unbreak dead-NodeData-use protection
- Backward compatibility for REST page bundle format
- Add default val for parsoid counter
- Preserve original id in html when reset to store in pb, T415477
- parsertests: Skip +langconv tests, T380517
- Language Converter: parse embedded wikilinks and images correctly, T417533
- Allow remex-html ^6.0.0
- Move shadowing of Parsoid-like ids to sanitizer
Feb 17-19 Yes V0.23.0-a16.2 for 1.46.0-wmf.16
[edit ]- Backward compatibility for REST page bundle format
v0.23.0-a16.1 contained:
- Add default val for parsoid counter
v0.23.0-a16 contained:
- BasePageBundle: Add counters top-level property
- PipelineContentCache: Track frame source of cached content
- Implement sanitization of meta/link tags with schema.org microdata, T408915
- SiteConfig: Use Psr/Log classes
- Ensure round trip testing doesn't hang forever on large pages
- Use DocumentFragment for data-mw.body.html and <embedtag>
- Grammar.pegphp: Fix edge case parsing table attributes
- DomPageBundle/HtmlPageBundle: reorder SiteConfig argument, make non-optional
- DomPageBundle/HtmlPageBundle: Deprecate passing SiteConfig in $options
- ParsoidTest: use HtmlPageBundle class not deprecated PageBundle
- Add alias for DOMCompat/TokenList
- DOMDataUtils::storeDataAttribs is always called with options array
Feb 10-12 Yes V0.23.0-a15 for 1.46.0-wmf.15
[edit ]- Forward-compatibility with PageBundle counter encoding change
- Create a CounterType enum to replace hardcoded strings for ids
- WikiLinkHandler Cache: Update tsr source property as well
- Fix Ext\DOMDataUtils::cloneNode/cloneElement to match DOMDataUtils
- Update Parsoid use statements for SourceRange to reflect its move to Core
- Update Parsoid use statements for DOMCompat to reflect its move to Core
- SectionMetadata: update documentation, T407379
- Use mb_strtolower for html tag name normalization
- Move Tokens/SourceRange to Core/SourceRange
- Move ContentUtilsTest to tests/phpunit/Parsoid/Utils
Feb 3-5 Yes V0.23.0-a14 for 1.46.0-wmf.14
[edit ]- Add ContentUtils::createAndLoad* to Ext\ContentUtils, T332457
- Don't clobber serializeNewEmptyDp in setupTopLevelDoc
- Move Utils/DOMCompat to Core/DOMCompat, since it is stable to use, T332457
- URL-encode backslashes in title hrefs, T415315
- Revert "Hard-deprecate ParsoidExtensionAPI::domToWikitext called with an Element"
- Cleanup: Remove unnecessary id trimming + rename method for clarity
- Add DOMUtils::parseHTML/::parseHTMLToFragment to Ext\DOMUtils, T332457
- Deprecate DOMDataUtils::{get,set}JSONAttribute
- Hard-deprecate ParsoidExtensionAPI::domToWikitext called with an Element
- Remove ExtensionTagHandler::processAttributeEmbeddedHTML()
- ContentUtils: pass top level document to ParsoidExtensionAPI wrapper
- ContentUtilsTest: use PageBundle methods for serialization
- Deprecate ParsoidExtensionAPI::htmlToDom() with $doc or $options
- DOMDataUtils: Fix unintended attribute removal, T415888
- bin/parserTests.php: Make --quiet output quieter, but not as quiet as --quieter
- Ignore redirect wikitext coming from templates, T398962
- DOMDataUtils: replace ::getNodeDataIfExists() with ::getDataMwIfExists()
- StubMetadataCollector::getPageProperty: Correct type hint, this can be numeric if setNumericPageProperty() was used
- build: Upgrade PHPUnit from 10.5.58 to 10.5.62 to unblock CI, T415723
- build: Drop back-compatibility for testing-access-wrapper, 4+ required for PHP 8.5
Jan 30/Feb 2 Yes V0.23.0-a13.1 backport to 1.46.0-wmf.13
[edit ]- Don't clobber serializeNewEmptyDp in setupTopLevelDoc
- ContentUtils: pass top level document to ParsoidExtensionAPI wrapper
- DOMDataUtils: Fix unintended attribute removal, T415888
Jan 27 - Jan 29 Yes V0.23.0-a13 as part of 1.46.0-wmf.13
[edit ]- Always fall back to generic case when setting data-mw to null
- Move the setters to NodeData as well
- Update redirected links in grammar
- Prefer union type to Assert::parameterType
- Clean up code related to codec hints
- Don't try to variant-convert redlinks when skipLanguageConversionPass=true
- DOMDataUtils: Don't redundantly load node data
- Use new 'template3' token for `{{#...}}` constructs, T394834, T390344
- MicroOpt: Remove redundant getDataParsoid calls
- html2wt: Don't use data-parsoid.srcTagName blindly, T415233
- Linter: Partial disable template-arg-in-extension-tag, T348722
- Log a warning if extension src isn't present when linting, T415220
- TestUtils::stripParsoidIds(): strip backslash-escaped IDs as well
- Fix PHP 8.3 deprecation in Linter::lintTemplateArgInExtensionTag, T414712
- ParsoidExtensionAPI: avoid round-tripping through HTML string
- TableFixups: Fix regexp preventing cell splitting for empty cells, T415000
- Instead of 'markNew', add toplevel option to serialize new & empty dps
- bin/parse: Better comply with new API rate limits; support personal token
- SiteConfig: Do not call ord() with more than one byte string
- Remove register_argc_argv check
- Define fatalError for standalone mode
- Sync parserTests with core
Jan 20 - Jan 22 Yes V0.23.0-a12 as part of 1.46.0-wmf.12
[edit ]- Add more complex DomPageBundleTest test + fix another bug
- Fix bug caused by using falsy checks instead of explicit null checks
- Don't move out format tags when originating as piped, T409669
- Rearrange conditions in TokenUtils::tokensToString
- Restore bullets before retokenizing expanded attrs, T394662
- Remove code which was deprecated-with-warnings in Parsoid 0.22
- ContentUtils::createAndLoadDocumentFragment(): deprecate & ignore $options
- Ensure codec options aren't clobbered by the Cite extension
- DOMDataUtils: use ::setAttributeObject() in ::setData{Parsoid,Mw}()
- Linter: Add lint for usage of template arguments inside tags, T348722
- Clarify isExtensionOutputtingCoreMwDomSpec
- Fix moving format tags out of wikilinks with spaces in target, T409669
- Stop marking extension wrapper as empty
- Remove 'validateXMLNames' from the document loading options
- Remove Env as an option to TokenUtils::tokensToString
- build: Updating api-testing to 1.7.2
- Optionally pass a base to sync-parserTests.js, T413524
- Stop using null as an array offset
- composer.json: Upgrade mediawiki/mediawiki-phan-config to 0.18.0
- composer.json: Add symfony/polyfill-php85
- DOMCompatTest: Remove PHP_VERSION checks against 8.1.20
- .phan/config.php: Set min PHP version to 8.2
- Drop PHP <= 8.0 compat code
- DOMDataUtils: Simplify ::getDataParsoid() and ::getDataMw()
- Token.php: Fix polarity of check to undo incorrect js -> php port
- DataParsoid: Optimize isEmpty by using short-circuits
- DataParsoid: isEmpty is a better method name than isModified
- Implement lazy loading of data-mw and data-parsoid attributes, T409751
Jan 13 - Jan 15 Yes V0.23.0-a11 as part of 1.46.0-wmf.11
[edit ]- Add (unreachable) class declarations to four files in `src/DOM`, T409283
- Swap instructions in prepare vendor patch script
- Strip ids in data-mw when normalizing for rt testing
- Add a regression test for leaking fragment marker, T398969
Jan 6 - Jan 8 Yes V0.23.0-a10 as part of 1.46.0-wmf.10
[edit ]- Fixed typo for compatibility in SelserData.php, T201491
- Drop support for PHP 8.1
- composer.json: Allow psr/log ^3.0.0, T356451
- composer.json: Allow wikimedia/testing-access-wrapper 4.0.0, T412518
- PHPUtils: Do not call ord() with more than one byte string
- Remove useages of curl_close in ScopedCallback's, T413538
- Remove temporary fragment normalization
- ParserTests: Allow shorthand for testing multiple language variants
- build: Drop IP Utils 5, require 6
- Parser test sync
- AddRedLinks: Support coloring wrt. default caption, T392775
- Use DOMCompat to append document fragment, T409608
- Sync parserTests with core
- build: Updating eslint-config-wikimedia to 0.32.3
Deployments from previous years
[edit ]- Parsoid/Deployments/2013
- Parsoid/Deployments/2014
- Parsoid/Deployments/2015
- Parsoid/Deployments/2016
- Parsoid/Deployments/2017
- Parsoid/Deployments/2018
- Parsoid/Deployments/2019
- Parsoid/Deployments/2020
- Parsoid/Deployments/2021
- Parsoid/Deployments/2022
- Parsoid/Deployments/2023
- Parsoid/Deployments/2024
- Parsoid/Deployments/2025
- Parsoid/Deployments/T336101 followup