Skip to content

Releases: mike-lischke/antlr4ng

New Point Release

21 Nov 09:19
v3.0.9
97ac8bd
Compare
Choose a tag to compare
  • Fixed addition bug in OrderedHashSet.
  • Bug fixes in code which is rarely used (and therefore had no tests)

New point release

16 Nov 15:41
v3.0.8
0d1b951
Compare
Choose a tag to compare
  • Switched from Jest to vitest for unit tests. This increases test speed by around 30% (from ~9s to ~6s).
  • Fixed a few issues too.
  • HashMap can now be created without a parameter for the comparator (it uses the DefaultEqualityComparator then).
  • Exported more types that were forgotten (like RuntimeMetaData).

New point release

29 Sep 08:38
v3.0.6
f80c832
Compare
Choose a tag to compare

Small HashSet/HashMap improvements.

v3.0.5

15 Sep 10:50
v3.0.5
e1984c4
Compare
Choose a tag to compare

What's Changed

  • Refactored local error classes in ParseTreePatternMatcher
  • Fixed bug where ParseTreeVisitor used ParserRuleContext instead of ParseTree.
  • More obvious mentioning of ES6 in this readme.
  • Added a number of APIs that are not necessary in the runtime, but needed by the ANTLR tool.
  • Fixed bug #71 ParseRuleContext in empty input has undefined stop token
  • Fixed bug #72 Unexpected behaviour when token text has zero length
  • Extracted these release notes into an own file.

Full Changelog: v3.0.4...v3.0.5

New point release

17 Mar 11:42
v3.0.4
08335cc
Compare
Choose a tag to compare
  • Fixed visitor example in this readme file and added build instructions.
  • Added back all debug output in the simulators and the prediction context. Useful for finding low level problems.
  • Fixed bug #47 Antlr4ng fails to parse codeql/examples/alias.qll
  • Fixed bug #46 ParserRulecontext.parent() incorrectly typed

New point release

03 Mar 12:01
v3.0.1
c0d3f09
Compare
Choose a tag to compare
  • Had to make Lexer.modeStack public again and allow reading and writing the current lexer mode.
  • Also fixed a number of spelling errors.

New point release

03 Mar 12:00
c0d3f09
Compare
Choose a tag to compare
  • Fix bug #26 getRuleContext is incompatible with generated code (2.0.5)
  • Fixed ProfilingATNSimulator code.
  • Made Token constants explicitly to number, to avoid TSC narrowing them.

New major release

02 Mar 20:42
v3.0.0
64d32c3
Compare
Choose a tag to compare

This release completes the conversion of the Java (and JavaScript) ANTRL4 runtime to TypeScript. It's a significant improvement over the existing TS (and JS) runtimes, as it includes now all relevant parts from the Java runtime and has been optimized for performance. It's now twice as fast for cold runs and 20% faster with a warm parser/lexer.

New major release CLI

02 Mar 20:41
v2.0.0-cli
77d0d47
Compare
Choose a tag to compare

This is the next major release of the code generator, after an overhaul of the antlr4ng runtime. It introduces a number of API changes, but no changes to the original working mechanism. The other targets (C++, Java, etc.) are not affected by this release. All changes in this release are to support the new antlr4ng major release 3.0.0:

  • Renamed class members (_type -> type, _channel -> channel, _mode -> mode, _parseListeners -> parseListeners).
  • Specialized getText methods for the token stream, to avoid frequent parameter checking in method overloading.
  • Merged the class RuleContext into ParserRuleContext. It's not used anywhere else, so why keeping it around?
  • ParserRuleContext.exception has been removed and it is no longer set in generated code (only relevant for error conditions, where a proper exception is passed to error listeners.
  • More non-null assertions and null-safety checks have been added (mostly relevant for local rule variables and return values).

v2.0.11

26 Feb 08:29
v2.0.11
ab4462f
Compare
Choose a tag to compare
  • Fixed bug #30 ReferenceError: Super constructor may only be called once
  • The entire runtime test library from the Java runtime has now been ported to TypeScript and is used from now on to check the correctness of this runtime.
  • The bit set class used bigint to store the values, which is a problem with bundlers like webpack that have no support for bigint. For this reason that type has been replaced (PR #40 feat: replace bigint and BigUint64Array).
  • The bundle is no longer minified and hence larger than before. Bundling a minfied bundle with other bundlers (like terser) in dependent projects might cause trouble. Additionally, minifying a bundle has no benefit in execution time, it's just a size difference (related bugs: #31, #34, #38).