Skip to content

Releases: CXuesong/MwParserFromScratch

v0.3.0-int.6

23 Oct 10:02
Compare
Choose a tag to compare
v0.3.0-int.6 Pre-release
Pre-release
  • Fixed CloneCore implementation for various Node classes. (#18 by @FaFre)
  • TemplateArgumentCollection.SetValue now accepts string as argument name.
  • Added Wikitext constructor overload shorthands that accept string (as PlainText) or InlineNode instances.
  • Dropped explicit support for .NET Framework. We are planning to drop support for lower .NET Standard version in the future in order to adopt new C# language features.

v0.3.0-int.4

28 Apr 16:02
Compare
Choose a tag to compare
v0.3.0-int.4 Pre-release
Pre-release
  • Bug fix: NullReferenceException when calling Node.ToPlainText on HtmlTags with empty content. (#15)

v0.3.0-int.3

27 Apr 15:54
Compare
Choose a tag to compare
v0.3.0-int.3 Pre-release
Pre-release
  • Add support for embedded image expression parsing. AST node type: WikiImageLink. (#13)

v0.3.0-int.2

25 Apr 16:03
Compare
Choose a tag to compare
v0.3.0-int.2 Pre-release
Pre-release
  • Refactored Node.ToPlainText to receive an optional delegate for customizing how a Node should be converted into plain text. (#15)
    • Removed NodePlainTextOptions to this end.
  • The following parser tags are not shown in ToPlainText output
    • math
    • ref
    • templatedata
    • templatestyles
    • To change this default behavior, refer to #15.

v0.3.0-int.1

25 Apr 13:51
Compare
Choose a tag to compare
v0.3.0-int.1 Pre-release
Pre-release
  • Force to end all the unbalanced HTML tags at the end of WIKITEXT. (#14)
    • The old behavior is to leave tags as unparsed PLAIN_TEXT. The old behavior can cause performance issue when parsing unbalanced tags, such as #3.
  • Take care of unbalanced <li> tag parsing. (#14)
  • Unbalanced tags will have TagStyle set to TagStyle.NotClosed.

0.2.1

07 Apr 12:40
Compare
Choose a tag to compare
  • Fixed #12. Now parser handles tags with uppercase letters properly.
  • Prepare for the wikitext table expression support
    • Added TagAttributeCollection, which in the future will be used in TagNode as well as in TableContentNode
    • Converted InlineContainer abstract class to IInlineContainer interface
    • Added preliminary Table class.
    • The table parsing support is still yet to be implemented.

0.2.0

16 May 08:12
Compare
Choose a tag to compare
  • (#6) Implemented a rudimentary closing mark inference feature.
  • (#7) Migrated IWikitextSpanInfo from offset-based to line/column-based.
    • Renamed IWikitextSpanInfo to IWikitextLineInfo.
  • Requires LIST_ITEM starts at the beginning of the line.
    • the * item in {{Template|* item}} will be parsed as plain-text rather than unordered list.
  • WikitextParser is now thread-safe.
    • As long as you do not call Parse when changing the content of WikitextParserOptions.

The attached "debug" package is built in DEBUG mode, and may provide some extra runtime assertions (Debug.Assert).

0.1.4

13 May 10:30
Compare
Choose a tag to compare
  • Fixed missing LineInfo of PlainText in Paragraph, especially when a \n is in the paragraph content.

0.1.3

12 May 16:56
Compare
Choose a tag to compare
  • Now WikitextParser.Parse() supports CancellationToken.
  • Fxied NullReferenceException when WikitextParser is instantiated with IWikitextParserLogger.

0.1.2

12 May 09:33
Compare
Choose a tag to compare
  • Use MagicTemplateNames to take the place of VariableNames in WikitextParserOptions.
    • You can specifiy whether a variable or parser function is case-sensitive.
  • Improved debugger view of NodeCollection.
  • Fixed the bug of presence of multiple LineInfoAnnotation in parsed Node instances.
  • Fixed the bug of ParentNode == null for HTML tag content Wikitext node.