Skip to content

Latest commit

 

History

History
1583 lines (923 loc) · 82 KB

File metadata and controls

1583 lines (923 loc) · 82 KB

v1.39.1

2026-04-23

Added

Fixed

Changed

Removed

v1.38.1

2026-04-05

Added

Fixed

  • nowrap is now a valid but obsolete attribute for <td> and <th> tags

Changed

v1.37.1

2026-03-31

Added

  • The preset configuration for Moegirlpedia is updated to include Extension:Math

Removed

v1.37.0

2026-03-26

Added

Changed

  • The executable getParserConfig now executes JavaScript modules fetched from the specified MediaWiki site in a sandboxed environment using the permission model

v1.36.0

2026-03-02

Added

Changed

  • Improved performance for template parsing with many anonymous parameters

v1.35.2

2026-02-23

Fixed

  • The lonely-http rule should ignore http://, RFC, PMID or ISBN following word characters

v1.35.1

2026-02-08

Added

Fixed

v1.35.0

2026-01-22

Fixed

  • The executable getParserConfig now checks whether language conversion is disabled for a MediaWiki site

Removed

  • Support for Node.js < 20.19.0

v1.34.0

2026-01-13

Added

Changed

v1.33.0

2026-01-01

Added

Fixed

v1.32.0

2025-12-05

Added

Fixed

Changed

Removed

v1.31.0

2025-11-13

Added

Fixed

v1.30.0

2025-11-06

Added

Fixed

v1.29.2

2025-10-30

Added

Fixed

  • Parsing empty <translate></translate> tag pairs

v1.29.1

2025-10-28

Added

Fixed

Changed

v1.29.0

2025-10-23

Added

Fixed

Changed

v1.28.1

2025-10-16

Added

v1.28.0

2025-09-30

Added

Fixed

Changed

v1.27.0

2025-09-20

Added

Fixed

  • The id attribute of a section header starting with underscores (_)
  • AttributeToken.prototype.lint should report evil attribute values such as javascript:

Changed

  • The rule severity can now be specified as a string: 'off', 'warning' or 'error', which are equivalent to 0, 1 and 2, respectively

v1.26.0

2025-09-14

Added

Fixed

v1.25.1

2025-08-27

Added

  • Parser.configPaths that is used to specify additional paths to look for parser configuration files

v1.25.0

2025-08-19

Added

  • Descriptions for the quick fixes are now localized

Changed

v1.24.1

2025-08-14

Added

Fixed

  • Now <translate> extension tags in HTML comments or <includeonly> tags are not parsed
  • The bold-header rule now ignores bold apostrophes or tags inside extension tags
  • No HeadingToken should be parsed inside a <poem> tag
  • Quick fixes for the url-encoding rule should ignore special characters including !<>[]{|}
  • <tvar> extension tags inside the URL of an external link is now correctly parsed

Changed

v1.23.0

2025-08-01

Added

Fixed

  • Updated tag attributes for the <ref> extension tag

v1.22.1

2025-07-25

Added

Fixed

Changed

  • The preset configuration for Moegirlpedia is updated to support the latest version of Extension:MoeImgTag

v1.22.0

2025-07-22

Added

Fixed

  • Parser.normalizeTitle now correctly handles titles with nested transclusions
  • Conversion rules can have upper-case letters in their variant names

Changed

  • The preset configurations are updated
  • For Moegirlpedia, <img> tags are now parsed as extension tags (Extension:MoeImgTag) instead of HTML tags
  • Lowered severity of invalid gallery image parameters and duplicate categories
  • Lowered severity of unmatched HTML tags
  • Lowered severity of plain-text apostrophes next to bold/italic apostrophes
  • Lowered severity of unclosed apostrophes in section headers
  • Lowered severity of fostered table content
  • Lowered severity of double square brackets or curly braces
  • Lowered severity of lonely http:// or https://

v1.21.3

2025-07-14

Fixed

  • HTML conversion of <poem> containing <nowiki> or leading :
  • HTML conversion of <h1> to <h6> without and id attribute
  • HeadingToken as the first token of a <poem> tag does not need to be on a new line
  • Sanitization of AttributeToken
  • Use the legacy rgba() function instead of #rrggbbaa in LanguageService.prototype.provideColorPresentations for colors with an alpha channel
  • NowikiToken.prototype.cloneNode should copy the name attribute if it exists

Changed

v1.21.2

2025-06-12

Added

  • TranscludeToken.function
  • Some time-related variables are now expanded, e.g., CURRENTMONTH and LOCALMONTH
  • Parser.now property that specifies the current time for parsing

Fixed

  • An issue with one-line definition lists (;:) when ; is followed by whitespace
  • An occasional issue with multi-level indentation in a one-line definition list (;;dt::dd)

Changed

  • TranscludeToken.prototype.print now highlights the modifiers (e.g., subst:) as magic words
  • AttributeToken.prototype.toHtml now drops empty id attributes
  • Lowered severity of unnecessary URL encoding in internal links

v1.21.1

2025-06-07

Added

Fixed

  • Interaction between one-line definition lists (;:) and void HTML tags

v1.21.0

2025-05-29

Added

  • Token.prototype.lint called on the root node now returns an optional output property, which is a string after all auto-fixes are applied
  • TranscludeToken.module

v1.20.3

2025-05-12

Fixed

  • Wrong message keys in simplified Chinese localization

Changed

  • Lowered severity of useless fragments
  • AstText.prototype.lint now ignores the group attribute of a <ref> or <references> tag
  • Lowered severity of lonely language conversion brackets
  • Lowered severity of an unexpected template argument

v1.20.2

2025-05-09

Changed

  • Lowered severity of a duplicated image caption consisting of a template or a magic word

v1.20.1

2025-04-26

Fixed

Changed

  • Lowered severity of a lonely apostrophe followed by a closing bold/italic mark
  • Lowered severity of a lonely bracket surrounding an internal or external link
  • AstText.prototype.lint now ignores the name attribute of a <ref> tag
  • Lowered severity of lonely RFC, PMID or ISBN
  • Lowered severity from RedirectTargetToken.prototype.lint
  • Lowered severity of multiline comments inside <gallery>
  • Lowered severity of disallowed HTML tags

v1.20.0

2025-04-16

Added

Fixed

  • External links starting with // in <imagemap> are valid
  • Internal links with empty alt text in <imagemap> are valid
  • The executable getParserConfig for MediaWiki sites not hosted by Wikimedia
  • More potential stack overflow issues
  • Do not suggest more than 6 consecutive = when fixing unbalanced = in a section header
  • A unicode number before a URL protocol prevents it from being parsed as an external link

v1.19.0

2025-04-07

Added

Fixed

v1.18.4

2025-04-03

Added

Fixed

  • More cases where potential memory leak may occur
  • Expansion of #switch
  • TableToken.prototype.lint now handles arguments and a set of magic words recursively
  • Stack overflow in TableToken.prototype.getLayout
  • Issue with AstText.prototype.lint when the text contains certain unicode characters

Changed

v1.18.3

2025-03-24

Added

  • AstElement.prototype.escape method that escapes = and | characters for building a template parameter

Fixed

  • Stack overflow when there are too many tokens in a page
  • TableToken.prototype.lint should not report appropriate HTML tags (<tr>, <td>, <th> and <caption>) as fostered-content

Changed

v1.18.2

2025-03-15

Added

Fixed

  • Only function hooks are allowed to take parameters
  • Localized parser functions with a full-width colon instead of a half-width colon :

Changed

v1.18.1

2025-03-13

Added

v1.18.0

2025-03-11

Added

Fixed

  • Unhandled promise rejection in LanguageService if Stylelint is unavailable
  • Manual upright parameters (e.g., upright=$1) of images are not treated as upright parameters
  • The magic words #section, #section-x and #section-h are recognized as aliases of #lst, #lstx and #lsth, respectively

Changed

  • The behavior switch __DISAMBIG__ now has the name DISAMBIGUATION, and the behavior switch __EXPECTED_UNCONNECTED_PAGE__ now has the name EXPECTEDUNCONNECTEDPAGE

v1.17.1

2025-03-08

Added

Fixed

Changed

v1.16.6

2025-02-26

Fixed

  • Potential memory leak when parsing a page with a large number of transclusions

Changed

  • A LanguageService instance can provide both signature help and other services

v1.16.5

2025-02-25

Added

Fixed

v1.16.4

2025-02-21

Added

Fixed

Changed

v1.16.3

2025-02-16

Added

Fixed

Changed

v1.16.1

2025-02-10

Added

Fixed

  • "sideEffects": false is now added to package.json to facilitate tree-shaking
  • {{名字空间}} and {{命名空間}} are now correctly recognized as {{NAMESPACE}}

v1.15.1

2025-01-30

Fixed

  • &lt; and &gt; in external links

Changed

  • Full HTML entity decoding via entities

Removed

  • Interwiki prefixes are no longer available from the preset configuration files

v1.15.0

2025-01-15

Fixed

  • Case-insensitive variables without a parameter, e.g., #language, and case-sensitive parser functions requiring a parameter, e.g., DEFAULTSORT

Changed

  • The schema for parser configurations is changed, including changes for the parserFunction and doubleUnderscore properties and a new variable property

v1.14.1

2025-01-11

Added

  • Named parameters are recognized for the #tag parser function

v1.14.0

2024-12-13

Added

  • More auto-fix and suggestions for linting errors

Removed

  • Removed category of linting errors: duplicated <ref> name

v1.13.9

2024-12-06

Added

Changed

  • The preset configurations are updated

v1.13.7

2024-12-01

Fixed

  • Token.prototype.lint should ignore <ref> tags with identical names but in different groups

v1.13.6

2024-11-29

Added

  • New category of linting errors: duplicated <ref> name

v1.13.4

2024-11-17

Fixed

v1.13.3

2024-11-14

Fixed

v1.13.2

2024-11-04

Fixed

  • Parse and report extension tags inside <inputbox>/<dynamicpagelist>
  • Parse transclusion inside <references>
  • {{\n=a=\n}} is now parsed as Template:=a= instead of <p>{{</p><h1>a</h1><p>}}</p>

v1.13.1

2024-11-01

Fixed

  • Case-insensitive <nowiki> inside a <pre> tag
  • HTML comments inside a <inputbox> tag

Changed

v1.13.0

2024-10-24

Added

  • New pseudo selectors :valid and :scope
  • Pseudo selector :has() now supports relative selectors
  • Parser.parse now accepts an array of token types as the third argument to specify the maximum stage of parsing

Fixed

  • Token.prototype.expand now supports file names containing as a substitute for : in a Windows file system
  • Order of HTML/URL decoding in Title parsing

Changed

v1.12.7

2024-08-24

Fixed

v1.12.6

2024-08-17

Fixed

v1.12.5

2024-08-16

Added

Fixed

v1.12.4

2024-08-07

Added

Fixed

Changed

v1.12.3

2024-08-04

Fixed

v1.12.2

2024-07-29

Added

Fixed

Changed

v1.11.1

2024-07-10

Fixed

v1.11.0

2024-07-08

Added

Fixed

Changed

  • ListBaseToken.prototype.toHtml now returns an empty string
  • ListBaseToken.prototype.getRange now modifies the AST and returns a plain token with the type list-range

Removed

  • Token.prototype.redoQuotes method, which does not work as expected

v1.10.0

2024-06-26

Added

Fixed

Changed

Removed

  • RedirectTargetToken.prototype.text method overriding
  • rbspan attribute of a <rt> tag

v1.9.3

2024-06-18

Added

Fixed

Changed

v1.9.2

2024-06-10

Fixed

v1.9.1

2024-06-09

Fixed

Changed

  • Token.prototype.normalizeTitle is now a private method
  • Parser.getConfig is now available for public use

Removed

  • Pseudo selectors :nth-child, :nth-last-child, :nth-of-type and :nth-last-of-type no longer support comma-delimited arguments

v1.9.0

2024-05-26

Added

Changed

  • Improved performance for table parsing inside a template

v1.8.0

2024-05-20

Added

Fixed

Changed

v1.7.1

2024-05-13

Added

  • Parse redirect pages

Fixed

  • Allow an external image as ext-link-text
  • Ignore duplicated parameters containing extension tags in TranscludeToken.prototype.lint
  • Self-closing tags <noinclude/> and <includeonly/> are now valid

Changed

  • For redirects with a fragment, the fragment is now ignored by Title.title

v1.6.2

2024-03-17

Added

Fixed

  • Mimic the structure of CSS combinators
  • Fully escape < and > when printing tag attributes
  • Recognize invalid Title patterns
  • Image size parameter with a suffix of pxpx is now also valid
  • Fix conflicts between image parameters and external links
  • Fix free external links led by a Unicode character

Changed

  • Error messages are gradually translated into English

v1.6.1

2024-03-13

Added

  • Linting errors can now be disabled using inline comments

Fixed

  • Allow the image parameter page in PDF file links
  • Disallow empty strings as the manual-upright image parameter
  • Use parseInt() for the rowspan and colspan properties of TdToken

Changed

  • The start position of a linting error associated with a TrToken is now one character ahead

v1.5.7

2024-03-12

Fixed

Changed

v1.5.6

2024-03-07

Fixed

  • Parsing a TdToken after another TdToken with a multiline HtmlToken in it
  • ExtLinkToken when the link text starts with a token with higher precedence

Changed

  • Title.fragment no longer decodes the deprecated MediaWiki-style fragment encoding

v1.5.5

2024-03-06

Fixed

Changed

Removed

v1.5.4

2024-03-05

Fixed

  • Ignore most invalid Wikitext syntax nested in a PreToken when linting

v1.5.3

2024-03-03

Added

Fixed

  • DdToken is now correctly parsed when QuoteToken is present in the same line
  • Improved ImageParameterToken validation for different file extensions
  • Ignore incomplete Wikitext syntax in before and after attributes of a <choose> extension tag when linting

v1.5.1

2024-02-29

Added

  • New property rules of the interface Parser

Fixed

Changed

  • filter in the style attribute is no longer reported as an error

Removed

  • Token type aliases have been malfunctioning since v1.4.3, and are now removed

v1.5.0

2024-02-22

Added

  • Auto-fix and suggestions for selected linting errors

Removed

  • AstElement.prototype.echo method

v1.4.5

2024-02-12

Added

  • New property rule of the interface LintError

v1.4.4

2024-02-04

Added

Fixed

  • Inconsistent output from AttributesToken.prototype.print

Changed

  • HtmlToken.prototype.print and ImageParameterToken.prototype.print do not differentiate invalid tokens any more
  • HtmlToken.prototype.text now treats void tags as self-closing tags

v1.4.3

2024-01-31

Added

Fixed

  • Missing type declarations for ExtLinkToken.firstChild and ConverterToken.firstChild are added

v1.4.2

2024-01-29

Fixed

v1.4.1

2024-01-27

Added

Fixed

Changed

  • Reported duplicated categories do not need to be child nodes of the same parent node
  • Better recognition of bracket pair ([]) that actually breaks the ExtLinkToken

v1.4.0

2024-01-23

Added

Fixed

  • Type declarations

v1.3.9

2024-01-22

Added

Fixed

  • Parser.isInterwiki now returns null if no interwiki prefix is found from the configuration
  • Title starting with multiple colons is invalid

v1.3.8

2024-01-21

Changed

v1.3.7

2024-01-19

Fixed

Changed

  • Double pipes in TdToken will now report an 'error' instead of a 'warning'

v1.3.6

2024-01-17

Changed

v1.3.4

2024-01-16

Fixed

v1.3.3

2024-01-15

Fixed

  • A case-sensitive parser function requires a colon after the function name
  • External links like [[//xyz]]
  • Invalid closing void HTML tag except </br>

v1.3.2

2024-01-15

Added

  • Reporting unclosed IncludeToken
  • Reporting lonely <onlyinclude>, <noinclude> and <includeonly>
  • Reporting errors such as <pre> inside PreToken

v1.3.1

2024-01-14

Fixed

  • Parsing an illegal template name, e.g., {{#if:{{<}}}}

v1.3.0

2024-01-11

Changed

  • Ingoring 'http' in tag attribute values when linting

Removed

v1.2.0

2024-01-04

Fixed

  • Allowing < and > in the fragment of an internal link

Changed

Removed

  • Pseudo selectors :read-only and :read-write

v1.1.6

2024-01-03

Fixed

v1.1.5

2023-12-19

Fixed

v1.1.4

2023-12-18

Added

Fixed

Changed

  • Inserting a child node is now forbidden

v1.1.3

2023-12-16

Fixed

Changed

v1.1.2

2023-12-13

Changed

Removed

  • HeadingToken.name property

v1.1.1

2023-12-11

Changed

v1.1.0

2023-12-11

Added

  • New properties and methods for Title objects: extension, toSubjectPage, toTalkPage, isTalkPage, toBasePage, toRootPage

Fixed

  • Wrapping the text after the last </onlyinclude> in a NoincludeToken
  • Replacing remaining spaces in Title.title property with underscores
  • AstRange now maintains its content after insertNode, deleteContents, extractContents and cloneContents methods

Changed

  • startContainer and endContainer properties of AstRange must be siblings now

Removed

  • AstRange.prototype.intersectsNode method

v1.0.3

2023-12-05

First TypeScript version