Skip to content

Releases: Ygg01/Linguini

v0.8.1

01 Feb 19:05
21b6765
Compare
Choose a tag to compare
  • Add AddResourceOverriding(Resource res).

Full Changelog: v0.8.0...v0.8.1

Release v0.8.0

23 Jan 22:47
251f15e
Compare
Choose a tag to compare

What's Changed

  • Remove net5 or greater by @Ygg01 in #45
  • Move to NUnit 4.0.1 by @Ygg01 in #48
  • Fix issue with Windows test not being fully run by @Ygg01 in #51
  • [Breaking change] Refactor to use consistent naming by @Ygg01 in #42
  • Remove unnecessary ContainsKey() calls and split dictionaries by @ElectroJr in #43
  • [Breaking change] Make FluentBundle abstract and do some API refactoring by @Ygg01 in #50
    • To fully resolve the issue reported by @ElectroJr a common base for bundle is added FluentBundle.
    • Extract read-only methods to IReadBundle
    • Adds FrozenBundle as a read-only version of FluentBundle
  • [Major change] Refactor Ast* API
    • Adds builder for most Ast* types (AstMessage, AstTerm and Junk). E.g.
      SelectExpressionBuilder(new VariableReference("x"))
         .AddVariant("one", new PatternBuilder("select 1"))
         .AddVariant("other", new PatternBuilder("select other"))
         .SetDefault(1)
         .Build();
    • Adds Equals to most Linguini.Syntax.Ast types.
    • All serializers now have a Read method implementation.

New Contributors

Full Changelog: v0.7.0...v0.8.0

Release v0.6.1

23 Oct 21:15
Compare
Choose a tag to compare

What's changed

Minor Windows line bug fixed.

  • Fixes errors when reading an empty line on Windows (reported by @JosefNemec)
  • Minor Github fixes.

Release v0.6.0

13 Sep 14:55
Compare
Choose a tag to compare

What's Changed

Fixes error with line numbers miscount and moves the project to Net6.0 because current version of dotnet causes problems with the pipelines. Because some downstream are on Net 4.7.6, this might break if left as a minor version update.

  • Fixes errors when reading line numbers due to interaction with ZeroCopy Parser (thanks to @PJB3005)
  • Moves project to minimal dotnet version to 6

Release v0.5.0

11 Jun 19:23
Compare
Choose a tag to compare

What's Changed

Improves parsing performance by eliminating bounds check on ReadOnlySpan<char> for char @RoosterDragon

Breaking changes:

  • ZeroCopyUtil
    • TryReadCharSpan replaced with TryReadChar.
    • Methods IsIdentifier/IsNumberStart/IsAsciiDigit/IsAsciiUppercase/IsAsciiHexdigit/IsAsciiAlphabetic
      take char rather than ReadOnlySpan<char>.
    • EqualSpans method removed
  • ZeroCopyReader
    • method signature ReadOnlySpan<char> PeekCharSpan(int offset = 0) changed to char? PeekChar(int offset = 0)
    • method SeekEol added.
    • added methods TryPeekChar, TryPeekCharAt, CurrentChar, and IndexOfAnyChar.
  • ParserError
    • factory method for ExpectedTokens arguments changed
  • LinguiniParser
    • changed to use the new ZeroCopyUtil internally.

Non-breaking changes:

  • Fluent.Bundle private bundle method is separated into AddEntry and AddEntryOverriding.

Full Changelog: v0.4.0...v0.5.0

Release v0.4.0

07 Feb 10:42
Compare
Choose a tag to compare

What's Changed

Breaking changes:

  • Changes default on LinguiniBundle.SetIsolating from true to false
  • Removes enum InsertBehavior in favor of three separate functions (TryAddFunction, AddFunctionOverriding, AddFunctionUnchecked)
  • Removes previously obsolete methods.

API Changes:

  • Adds method GetAttrMessage(string msgWithAttr, params (string, IFluentType)[] args) for ease of use.

Full Changelog: v0.3.2...v0.4.0

v0.3.2

19 Nov 14:13
038a3c3
Compare
Choose a tag to compare

What's Changed

  • Adds LinguiniBundle.HasAttrMessage method
  • Obsoletes LinguiniBundle.TryGetAttrMsg for LinguiniBundle.TryGetAttrMessage
  • Obsoletes LinguiniBundle.TryGetMsg for LinguiniBundle.TryGetMessage

Full Changelog: https://github.com/Ygg01/Linguini/edit/master/changelog.md (v0.3.2)

Version: 0.3.1

19 Sep 23:06
Compare
Choose a tag to compare
  • Fixed error in Linguini.Bundle that prevented term and scope arguments from coexisting. @adcdefg30