Releases: tunnelvisionlabs/antlr4cs
v4.5.3
v4.5-alpha003
ANTLR 4.5 C# Target Preview Release
This release is available through NuGet, with complete installation instructions described in the Readme.md.
Changes since 4.5-alpha002
- Other Changes
- Support .NET 4.6
- Fix build warnings in some generated documentation XML comments
- Fall back to IKVM to remove the requirement that Java be installed to use ANTLR
- Commits since 4.5-alpha002
Acknowledgements
Thank you goes to all of the following users, who contributed feedback, bug reports, code submissions, testing, and reviews which helped in this release. In alphabetical order by username. This list does not include people who contacted us through other channels, but your feedback is no less valuable so we thank you as well.
v4.5-alpha002
ANTLR 4.5 C# Target Preview Release
This release is available through NuGet, with complete installation instructions described in the Readme.md.
Changes since 4.4.1-alpha001
Some non-breaking changes included in this release are not yet described in these release notes.
- This code is now based on commit fc5b7c5, which is equivalent to the 4.5-opt release.
- Breaking changes
- The assembly strong name key and policy changed to allow library developers to more easily use ANTLR across an array of runtime environments.
- Changed the signature of the
AmbiguityInfo
constructor. IEdgeMap<T>.ToMap()
now returns aReadOnlyDictionary<int, T>
for all runtimes.DFAState.EdgeMap
andDFAState.ContextEdgeMap
are nowReadOnlyDictionary<int, DFAState>
for all runtimes.ParserRuleContext.GetTokens
now returnsITerminalNode[]
in all runtimes (previously .NET 4.5+ did not).- Note that
IReadOnlyList<ITerminalNode> x = context.GetTokens(Type);
will still work, becauseITerminalNode[]
implementsIReadOnlyList<ITerminalNode>
in .NET 4.5.
- Note that
ParserRuleContext.GetRuleContexts<T>()
now returnsT[]
in all runtimes (previously .NET 4.5+ did not).- The signature of generated context accessors was changed to
ContextType[]
in all runtimes (previously .NET 4.5+ returnedIReadOnlyList<ContextType>
) - The
Func<...>
delegates for runtimes prior to .NET 3.5 were moved from namespaceAntlr4.Runtime.Sharpen
toSystem
. - The
HashSet<T>
class for runtimes prior to .NET 3.5 were moved fromAntlr4.Runtime.Sharpen
toSystem.Collections.Generic
.
- Other Changes
- Commits since 4.4.1-alpha001
v4.4.1-alpha001
ANTLR 4.4.1 C# Target Preview Release
This release is available through NuGet, with complete installation instructions described in the Readme.md.
Changes since 4.3.0
Some non-breaking changes included in this release are not yet described in these release notes.
- This code is now based on commit 407abf7, which is a pre-release version of the "optimized" fork ANTLR 4.4.1.
- Breaking changes
- Added the
IRecognizer.Vocabulary
property - Changed the signature of
ParserATNSimulator.CreateDFAState
- Changed the signature of the
DFAState
constructor - Remove
ParserATNSimulator.ResolveToMinAlt
- Added the
- Other Changes
- Marked the parser generator NuGet packages as development dependencies (#62)
- Fix several bugs in the
adaptivePredict
prediction algorithm - Dramatically improved performance on highly parallel machines
- Commits since 4.3.0
Known issues (regressions)
- The
abstract
grammar option does not produce abstract classes. This affects bothoptions { abstract = true; }
and the-Dabstract=true
command line option.
v4.3.0
ANTLR 4.3 C# Target Release
This release is available through NuGet, with complete installation instructions described in the Readme.md.
Changes since 4.2.2-alpha001
- This code is now based on the 4.3-opt release of ANTLR 4.
- Breaking changes
- Several methods have been changed to properties. For details, see sharwell/antlr4@1930a7b.
- Sharpen helper classes moved from
Sharpen
namespace toAntlr4.Runtime.Sharpen
, and several of the the classes are now markedinternal
.
- Other Changes
- Commits since 4.2.2-alpha001
v4.2.2-alpha001
ANTLR 4.2.2 C# Target Preview Release
This release is available through NuGet, with complete installation instructions described in the Readme.md.
Changes since 4.2.1-alpha001
- This code is now based on the 4.2.2-opt release of ANTLR 4.
Users updating from earlier than 4.2.0-alpha001
If you are updating from a version of the C# target prior to 4.2.0-alpha001, make sure to read the release notes for 4.2.0-alpha001 as well, as several changes were made that affect the usage of this target.
v4.2.1-alpha001
ANTLR 4.2.1 C# Target Preview Release
This release is available through NuGet, with complete installation instructions described in the Readme.md.
Changes since 4.2.1-alpha001
- This code is now based on the 4.2.1-opt release of ANTLR 4.
Users updating from earlier than 4.2.0-alpha001
If you are updating from a version of the C# target prior to 4.2.0-alpha001, make sure to read the release notes for 4.2.0-alpha001 as well, as several changes were made that affect the usage of this target.
v4.2.0-alpha001
ANTLR 4.2 C# Target Preview Release
This release is available through NuGet, as described in the Readme.md.
Changes since 4.1.0-alpha003
- This code is now based on the 4.2-opt release of ANTLR 4.
- Runtime/Semantics
- Improved support for the
HIDDEN
andEOF
constants in the grammar. It is no longer necessary to declare these in an@members{}
block in order to use them. - By default, the DFA will not be used for full-context parsing. This decision is due to substantial performance improvements such that the memory overhead of using the DFA for full-context parsing is no longer an obvious win. The old behavior can be enabled by setting
parser.Interpreter.enable_global_context_dfa = true
. - The lexer semantics now match the reference release of ANTLR 4, so #28 is no longer a problem.
- Improved support for the
- Build
- Improved detection of Java for the build process.
- Improved installation instructions.