Swiftpack.co - Swift Packages by antlr

Swiftpack.co is a collection of thousands of indexed Swift packages. Search packages.

Packages published by antlr

antlr/antlr4 v4.11.1
ANTLR (ANother Tool for Language Recognition) is a powerful parser generator for reading, processing, executing, or translating structured text or binary files.
⭐️ 16,366
🕓 1 year ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
4.13.1
33 weeks ago
## Pull requests grouped by target ### csharp target * [[CSharp] Fix for #4386 -- change signatures for ReportAttemptingFullContext() and ReportContextSensitivity() to be identical to all other targets](https://github.com/antlr/antlr4/pull/4399) (target:csharp, type:cleanup) ### go target * [Move GetText(), SetText(), and String() from CommonToken to BaseToken](https://github.com/antlr/antlr4/pull/4397) (target:go, type:cleanup) * [Restore "Obtained from string" source name.](https://github.com/antlr/antlr4/pull/4396) (target:go, type:cleanup) * [fix: Fix very minor code issues spotted by goreportcard.com](https://github.com/antlr/antlr4/pull/4276) (target:go, type:cleanup) ### java target * [Java: suppress `this-escape` warning introduced in JDK 21.](https://github.com/antlr/antlr4/pull/4394) (actions, target:java) ### javascript target * [Adds default targets for babel configuration](https://github.com/antlr/antlr4/pull/4323) (target:javascript) * [fix dependabot warnings](https://github.com/antlr/antlr4/pull/4272) (target:javascript, type:cleanup) ### swift target * [[SWIFT] Add Antlr4Dynamic product](https://github.com/antlr/antlr4/pull/4363) (target:swift) * [Cleanup duplicate SwiftTarget code](https://github.com/antlr/antlr4/pull/4339) (target:swift, type:cleanup) ### dart target * [[Dart] Fix for #4320--export additional types](https://github.com/antlr/antlr4/pull/4340) (type:bug, target:dart) ## Contributors * 2 items: [Ken Domino](https://github.com/kaby76) (kaby76) * 2 items: [Jerry Berg](https://github.com/googleberg) (googleberg) * 2 items: [ericvergnaud](https://github.com/ericvergnaud) * 1 items: [Yichen Yan](https://github.com/oraluben) (oraluben) * 1 items: [Grzegorz Spryszyński](https://github.com/GrzegorzSpryszynski-TomTom) (GrzegorzSpryszynski-TomTom) * 1 items: [tison](https://github.com/tisonkun) (tisonkun) * 1 items: [Nacho Cordón](https://github.com/ncordon) (ncordon) * 1 items: [Hervé Boutemy](https://github.com/hboutemy) (hboutemy) * 1 items: [Jim Idle](https://github.com/jimidle) (jimidle)
4.13.0
48 weeks ago
This is primarily change to the Go target itself and its release location, which has moved to https://github.com/antlr4-go/antlr. The code still lives and this repository, but for release purposes we've created a new organization and repository so that Go users can pull versions down according to the repository and label rules ## Issues fixed * [antlr4 jar doubled in size in 4.9.3](https://github.com/antlr/antlr4/issues/4226) (unicode, comp:performance) * [Go: exponentially bad/absymal performance as of ...](https://github.com/antlr/antlr4/issues/3934) (type:bug, target:go) * [Go runtime panic](https://github.com/antlr/antlr4/issues/3929) (type:bug, target:go) ## Improvements, features * [Update LexerATNSimulator.cs with virtual Consume](https://github.com/antlr/antlr4/pull/4197) (type:improvement, target:csharp) * [Feature/fixembedding](https://github.com/antlr/antlr4/pull/4176) (type:improvement, target:go, comp:performance) * [Provide Javascript port of TokenStreamRewriter](https://github.com/antlr/antlr4/pull/3560) (type:feature, target:javascript, target:typescript) ## Pull requests grouped by target ### csharp target * [Update LexerATNSimulator.cs with virtual Consume](https://github.com/antlr/antlr4/pull/4197) (type:improvement, target:csharp) ### cpp target * [Optimize the concurrent performance of Cpp target by more than 10 times](https://github.com/antlr/antlr4/pull/4237) (target:cpp, comp:performance, threading) * [Issue #4185: Too many artifacts fail to upload](https://github.com/antlr/antlr4/pull/4186) (comp:build, target:cpp, comp:testing) * [Limit use of Posix threads to Unix](https://github.com/antlr/antlr4/pull/4140) (target:cpp, threading) * [cmake: Fix output dir for Visual Studio generator](https://github.com/antlr/antlr4/pull/4121) (comp:build, target:cpp) * [Cpp: Remove code duplication](https://github.com/antlr/antlr4/pull/3995) (target:cpp, type:cleanup) ### go target * [Feature/newrepo - Transition Go code to new runtime repo](https://github.com/antlr/antlr4/pull/4275) (target:go) * [Feature/docsNew release documentation and release notes for Go](https://github.com/antlr/antlr4/pull/4273) (comp:doc, target:go) * [Change closureCheckingStopState from recursive to iterative](https://github.com/antlr/antlr4/pull/4256) (target:go) * [Export generated data structures](https://github.com/antlr/antlr4/pull/4255) (target:go) * [fix: Allow CommonTokenStream to reset properly](https://github.com/antlr/antlr4/pull/4245) (target:go) * [feat: Adds actual usable @ actions to the go templates](https://github.com/antlr/antlr4/pull/4238) (target:go) * [Feat: Clean up go input streams to be a little more efficient](https://github.com/antlr/antlr4/pull/4233) (target:go) * [Add support to Golang codegen for booleans](https://github.com/antlr/antlr4/pull/4231) (target:go) * [Clean up go runtime testrig](https://github.com/antlr/antlr4/pull/4225) (target:go, comp:testing) * [feat: More reasonable wins in performance](https://github.com/antlr/antlr4/pull/4224) (target:go) * [Feature/memory](https://github.com/antlr/antlr4/pull/4223) (target:go, comp:performance) * [More performance improvements](https://github.com/antlr/antlr4/pull/4210) (target:go, comp:performance) * [Improve PredictionContext performance, fix bugs](https://github.com/antlr/antlr4/pull/4196) (target:go) * [Don't Panic! 50% plus performance improvement](https://github.com/antlr/antlr4/pull/4192) (target:go, comp:performance) * [Fix the prediction cache and the comparison algorithms from the legacy code](https://github.com/antlr/antlr4/pull/4187) (target:go) * [Improve runtime performance of the Go runtime test suite](https://github.com/antlr/antlr4/pull/4181) (target:go, comp:performance) * [Fix #3967 Merge of Prediction Context arrays was broken](https://github.com/antlr/antlr4/pull/4180) (target:go) * [Feature/fixembedding](https://github.com/antlr/antlr4/pull/4176) (type:improvement, target:go, comp:performance) * [Feature/docclean Greatly improve the godoc comments in the runtime](https://github.com/antlr/antlr4/pull/4169) (comp:doc, target:go) * [Feature/gotestfix](https://github.com/antlr/antlr4/pull/4168) (target:go) * [Feature/gotestfix Fixes Go runtime test suite](https://github.com/antlr/antlr4/pull/4163) (target:go, comp:testing, type:cleanup) * [Feature/fix 4150 - prevent invalid codegen in Go](https://github.com/antlr/antlr4/pull/4161) (type:bug, target:go) * [Remove redundant source code from go runtime](https://github.com/antlr/antlr4/pull/4155) (target:go, type:cleanup) * [fix: Some code that should have been destined for /v4 was instead put…](https://github.com/antlr/antlr4/pull/4154) (target:go, type:cleanup) ### javascript target * [[JavaScript] Exporting syntaxErrorsCount](https://github.com/antlr/antlr4/pull/4261) (target:javascript) * [[Javascript] Added support for commonjs in nodejs package](https://github.com/antlr/antlr4/pull/4217) (target:javascript) * [do not modify String.prototype in js package](https://github.com/antlr/antlr4/pull/4200) (target:javascript) * [Provide Javascript port of TokenStreamRewriter](https://github.com/antlr/antlr4/pull/3560) (type:feature, target:javascript, target:typescript) ### python3 target * [Minor typo](https://github.com/antlr/antlr4/pull/4271) (target:python3) * [Remove redundant __name__ check in multiple files](https://github.com/antlr/antlr4/pull/4222) (target:python3) * [[Python3] Move the metadata into `PEP 621`-compliant `pyproject.toml`.](https://github.com/antlr/antlr4/pull/4153) (comp:build, target:python3) ## Contributors * 23 items: [Jim Idle](https://github.com/jimidle) (jimidle) * 4 items: [ericvergnaud](https://github.com/ericvergnaud) * 2 items: [HS](https://github.com/hs-apotell) (hs-apotell) * 2 items: [Josua Frank](https://github.com/Sharknoon) (Sharknoon) * 2 items: [Robert Adam](https://github.com/Krzmbrzl) (Krzmbrzl) * 1 items: [Rodrigo Antonio Godinho da Silva](https://github.com/killerall) (killerall) * 1 items: [Tao Wang](https://github.com/wangtao9) (wangtao9) * 1 items: [Michael de Hoog](https://github.com/mdehoog) (mdehoog) * 1 items: [Ivan Kochurkin](https://github.com/KvanTTT) (KvanTTT) * 1 items: [Mikołaj Podbielski](https://github.com/mikolajpod) (mikolajpod) * 1 items: [Ahmad Tameem](https://github.com/Tameem97) (Tameem97) * 1 items: [Adrian Jutrowski](https://github.com/Tarjei400) (Tarjei400) * 1 items: [Jon Harris](https://github.com/jharris4) (jharris4) * 1 items: [Alberto Simões](https://github.com/cxambs) (cxambs) * 1 items: [KOLANICH](https://github.com/KOLANICH) (KOLANICH) * 1 items: [hieunguyen2211](https://github.com/hieunguyen2211) * 1 items: [Leonardo Sarmiento](https://github.com/Leo1690) (Leo1690) * 1 items: [Prashant-Jagtap](https://github.com/Prashant-Jagtap) * 1 items: [kirides](https://github.com/kirides) * 1 items: [Terence Parr](https://github.com/parrt) (parrt) * 1 items: [Eiríkur Fannar Torfason](https://github.com/eirikur-grid) (eirikur-grid)
4.12.0
1 year ago
The 4.12.0 release is primarily about the new TypeScript target created by @ericvergnaud. There are also a number of fixes to the various targets, as you can see from the descriptions below. ## Issues fixed * [github actions now fail for python2 and ubuntu clang and ubuntu swift](https://github.com/antlr/antlr4/issues/3988) (comp:runtime, comp:build, comp:testing) * [js mergeArrays output differs from java](https://github.com/antlr/antlr4/issues/3965) (atn-analysis, target:javascript) * [C++ target fails Performance/DropLoopEntryBranchInLRRule_4.txt](https://github.com/antlr/antlr4/issues/3959) (atn-analysis, type:bug, target:cpp) * [Wrong grammarFileName in generated code](https://github.com/antlr/antlr4/issues/3937) (code-gen, type:bug) * [C++ crashes on new test ParserExec/ListLabelsOnRuleRefStartOfAlt.txt](https://github.com/antlr/antlr4/issues/3845) (atn-analysis, type:bug, target:cpp) * [[JavaScript runtime] Bad field name, bad comments](https://github.com/antlr/antlr4/issues/3710) (type:bug) ## Improvements, features * [Fully qualify std::move invocations to fix -Wunqualified-std-cast-call](https://github.com/antlr/antlr4/pull/4101) (type:improvement, target:cpp) * [Extract FileUtils updates by @ericvergnaud](https://github.com/antlr/antlr4/pull/4030) (type:improvement, cross-platform-issue, comp:testing) * [Extract unit test updates by @ericvergnaud needed for TypeScript](https://github.com/antlr/antlr4/pull/4029) (type:improvement, comp:testing) * [[Go target] Fix for #3926: Add accessors for tree navigation to interfaces in generated parser](https://github.com/antlr/antlr4/pull/3927) (trees-contexts, code-gen, type:improvement, target:go) * [GitHub Workflows security hardening](https://github.com/antlr/antlr4/pull/3847) (actions, type:improvement, comp:testing) ## Pull requests grouped by target ### csharp target * [Generate identical atn simulation output across targets to compare parsing functionality](https://github.com/antlr/antlr4/pull/3957) (atn-analysis, target:java, target:javascript, target:python2, target:python3, target:csharp, comp:doc, target:cpp, target:go, comp:testing) ### cpp target * [Fully qualify std::move invocations to fix -Wunqualified-std-cast-call](https://github.com/antlr/antlr4/pull/4101) (type:improvement, target:cpp) * [Cpp: cmake improvements](https://github.com/antlr/antlr4/pull/3996) (comp:build, target:cpp) * [Gcc version fix](https://github.com/antlr/antlr4/pull/3979) (comp:build, target:cpp, comp:testing) * [Fix cpp equals bug #3959](https://github.com/antlr/antlr4/pull/3978) (atn-analysis, type:bug, target:cpp) * [Fix 3845 nullptr cpp](https://github.com/antlr/antlr4/pull/3958) (atn-analysis, type:bug, target:cpp) * [Generate identical atn simulation output across targets to compare parsing functionality](https://github.com/antlr/antlr4/pull/3957) (atn-analysis, target:java, target:javascript, target:python2, target:python3, target:csharp, comp:doc, target:cpp, target:go, comp:testing) * [Updating the files in the Xcode project for ANTLR4 Cpp runtime.](https://github.com/antlr/antlr4/pull/3945) (target:cpp) * [Fixing reserve word NULL for cpp targets](https://github.com/antlr/antlr4/pull/3889) (grammars, target:cpp, type:cleanup) * [[C++] Fix the compiler errors reported by GCC 7](https://github.com/antlr/antlr4/pull/3885) (target:cpp) ### go target * [Generate identical atn simulation output across targets to compare parsing functionality](https://github.com/antlr/antlr4/pull/3957) (atn-analysis, target:java, target:javascript, target:python2, target:python3, target:csharp, comp:doc, target:cpp, target:go, comp:testing) * [Remove unnecessary getter](https://github.com/antlr/antlr4/pull/3947) (target:go, type:cleanup) * [[Go target] Fix for #3926: Add accessors for tree navigation to interfaces in generated parser](https://github.com/antlr/antlr4/pull/3927) (trees-contexts, code-gen, type:improvement, target:go) * [fix: #3758 Extrememly poor performance on poorly written grammars](https://github.com/antlr/antlr4/pull/3880) (target:go, comp:performance) * [fix: Restore missing changes to v4 of go runtime](https://github.com/antlr/antlr4/pull/3871) (target:go, type:cleanup) * [[Go] Add Iterative tree walker in go](https://github.com/antlr/antlr4/pull/3740) (trees-contexts, target:go) ### java target * [Generate identical atn simulation output across targets to compare parsing functionality](https://github.com/antlr/antlr4/pull/3957) (atn-analysis, target:java, target:javascript, target:python2, target:python3, target:csharp, comp:doc, target:cpp, target:go, comp:testing) ### javascript target * [Js support encoding in file stream + packaging issues](https://github.com/antlr/antlr4/pull/4112) (target:javascript) * [Fix js webpack issue](https://github.com/antlr/antlr4/pull/4104) (target:javascript) * [Javascript fix missing export](https://github.com/antlr/antlr4/pull/4076) (target:javascript) * [Fix issue 3965](https://github.com/antlr/antlr4/pull/3972) (atn-analysis, target:javascript) * [Generate identical atn simulation output across targets to compare parsing functionality](https://github.com/antlr/antlr4/pull/3957) (atn-analysis, target:java, target:javascript, target:python2, target:python3, target:csharp, comp:doc, target:cpp, target:go, comp:testing) ### python2 target * [Python LexerNoViableAltException is created with messages (#4095)](https://github.com/antlr/antlr4/pull/4097) (target:python2, target:python3) * [Generate identical atn simulation output across targets to compare parsing functionality](https://github.com/antlr/antlr4/pull/3957) (atn-analysis, target:java, target:javascript, target:python2, target:python3, target:csharp, comp:doc, target:cpp, target:go, comp:testing) ### python3 target * [Python LexerNoViableAltException is created with messages (#4095)](https://github.com/antlr/antlr4/pull/4097) (target:python2, target:python3) * [Generate identical atn simulation output across targets to compare parsing functionality](https://github.com/antlr/antlr4/pull/3957) (atn-analysis, target:java, target:javascript, target:python2, target:python3, target:csharp, comp:doc, target:cpp, target:go, comp:testing) ### swift target * [Small tweaks to Swift.stg to allow throwing operations in actions](https://github.com/antlr/antlr4/pull/4043) (actions, target:swift, type:cleanup) * [Fix two Swift profiling bugs](https://github.com/antlr/antlr4/pull/3954) (atn-analysis, target:swift) * [Don’t specify a default type for the exported Swift package library](https://github.com/antlr/antlr4/pull/3953) (comp:build, target:swift) * [Package.swift: provide an option to link against ANTLR 4 statically](https://github.com/antlr/antlr4/pull/3906) (comp:build, target:swift) * [Bring back the Package.swift in the project's root](https://github.com/antlr/antlr4/pull/3869) (actions, comp:build, target:swift) ### php target * [php composer install](https://github.com/antlr/antlr4/pull/3980) (comp:build, comp:testing, target:php) * [Fix PHP test template and improve docs about debugging](https://github.com/antlr/antlr4/pull/3975) (atn-analysis, comp:doc, target:php) * [Add ATN tracing support for PHP target](https://github.com/antlr/antlr4/pull/3974) (target:php) ### dart target ## Contributors * 14 items: [Terence Parr](https://github.com/parrt) (parrt) * 12 items: [ericvergnaud](https://github.com/ericvergnaud) * 2 items: [Ken Domino](https://github.com/kaby76) (kaby76) * 2 items: [Marcos Passos](https://github.com/marcospassos) (marcospassos) * 2 items: [Jeremiah Boyle](https://github.com/j3r3miah) (j3r3miah) * 2 items: [Nikolay Edigaryev](https://github.com/edigaryev) (edigaryev) * 2 items: [Jim Idle](https://github.com/jimidle) (jimidle) * 1 items: [Daniel Snider](https://github.com/danielsnider) (danielsnider) * 1 items: [Jordan Rupprecht](https://github.com/rupprecht) (rupprecht) * 1 items: [Sofyan-SU](https://github.com/Sofyan-SU) * 1 items: [Mykola (Nickolas) Pokhylets](https://github.com/nickolas-pohilets) (nickolas-pohilets) * 1 items: [Robert Adam](https://github.com/Krzmbrzl) (Krzmbrzl) * 1 items: [HS](https://github.com/hs-apotell) (hs-apotell) * 1 items: [Chris Kolbu](https://github.com/nesevis) (nesevis) * 1 items: [Tony Arnold](https://github.com/tonyarnold) (tonyarnold) * 1 items: [Brad B](https://github.com/BradB132) (BradB132) * 1 items: [Eric Mutta](https://github.com/ericmutta) (ericmutta) * 1 items: [acetousk](https://github.com/acetousk) * 1 items: [Chris](https://github.com/chris-miner) (chris-miner) * 1 items: [@TT](https://github.com/1sand0s) (1sand0s) * 1 items: [FireWolf](https://github.com/0xFireWolf) (0xFireWolf) * 1 items: [Gunnlaugur Thor Briem](https://github.com/gthb) (gthb) * 1 items: [Alex](https://github.com/sashashura) (sashashura) * 1 items: [Hervé Boutemy](https://github.com/hboutemy) (hboutemy) * 1 items: [Rishabh Arya](https://github.com/rishabh-arya95) (rishabh-arya95)
4.11.1 (just fixes 4.11.0 release issue)
1 year ago
Just fixes 4.11.0 release issue. I forgot to change runtime tool version so it didn't say SNAPSHOT.
4.11.0
1 year ago
4.11.0 consist primarily: * a major rebuild of the Go target by [Jim Idle](https://github.com/jimidle). Please see [Go target doc](https://github.com/antlr/antlr4/blob/master/doc/go-target.md) for more information, as it now requires the go module stuff. * huge internal refractoring of testing and various target speed improvements by [Ivan Kochurkin](https://github.com/KvanTTT) * Getting all targets to run on all operating systems using github actions by [HS](https://github.com/hs-apotell). The details by type and target follow. ## Issues fixed * [Disable failing CI tests in master](https://github.com/antlr/antlr4/issues/3823) (comp:build, comp:testing) * [Create accessor for Go-based IntervalSet.intervals](https://github.com/antlr/antlr4/issues/3801) (target:go) * [Grammar Name Conflict Golang with SPARQL issue](https://github.com/antlr/antlr4/issues/3758) (target:go, type:cleanup) * [Dependency declaration error in ANTLR 4.10.1](https://github.com/antlr/antlr4/issues/3733) (comp:build) * [Drop old version of Visual Studio C++ (2013, 2015, 2017)](https://github.com/antlr/antlr4/issues/3723) (comp:build, target:cpp) * [Circular grammar inclusion causes stack overflow in the tool.](https://github.com/antlr/antlr4/issues/2296) (comp:tool, type:bug) * [Cpp, Go, JavaScript, Python2/3: Template rendering error.](https://github.com/antlr/antlr4/issues/2016) (code-gen, comp:runtime, target:java, target:javascript, target:python2, target:python3, target:go) ## Improvements, features * [Augment error message during testing to include full cause of problem.](https://github.com/antlr/antlr4/pull/3843) (type:improvement, comp:testing) * [Include swift & tool verification in CI workflow](https://github.com/antlr/antlr4/pull/3797) (type:improvement, comp:build, cross-platform-issue, target:swift) * [Issue #3783: CI Check Builds](https://github.com/antlr/antlr4/pull/3792) (type:improvement, comp:build, cross-platform-issue, comp:testing) * [Parallel lock free testing, remove potential deadlocks, cache static data, go to descriptor via test](https://github.com/antlr/antlr4/pull/3752) (comp:runtime, type:improvement, comp:testing) * [update getting-started doc](https://github.com/antlr/antlr4/pull/3748) (type:improvement, comp:doc) * [Getting Started has error](https://github.com/antlr/antlr4/issues/3744) (type:improvement, comp:doc) * [new nuget directory for building ANTLR4 C++ runtime as 3 Nuget packages](https://github.com/antlr/antlr4/pull/3741) (type:improvement, comp:build, target:cpp) * [Add interp tool like TestRig](https://github.com/antlr/antlr4/pull/3727) (comp:tool, type:feature) * [Issue 3720: Java 2 Security issue](https://github.com/antlr/antlr4/pull/3721) (type:improvement, target:java) * [Cpp: Disable warnings for external project](https://github.com/antlr/antlr4/pull/3707) (type:bug, type:improvement, target:cpp) * [Fix Docker README for arm OS user](https://github.com/antlr/antlr4/pull/3689) (type:improvement, comp:doc) ## Pull requests grouped by target ### csharp target * [Runtime tests fixes (C++, Python, PHP, C#)](https://github.com/antlr/antlr4/pull/3725) (target:python2, target:python3, target:csharp, target:cpp, comp:testing, target:php) * [Constant folding for Python and other runtimes](https://github.com/antlr/antlr4/pull/3701) (code-gen, target:java, target:javascript, target:python2, target:python3, target:csharp, target:swift, target:cpp, target:go, target:dart, comp:performance, target:php) ### cpp target * [Fix 2016 round 2](https://github.com/antlr/antlr4/pull/3841) (type:bug, target:java, target:javascript, target:python2, target:python3, target:swift, target:cpp, target:go) * [Cpp: Link to threads library](https://github.com/antlr/antlr4/pull/3794) (comp:build, target:cpp) * [[C++] Remove libuuid dependency ](https://github.com/antlr/antlr4/pull/3787) (comp:build, target:cpp, type:cleanup) * [Fix CMake syntax for variable expansion](https://github.com/antlr/antlr4/pull/3777) (comp:build, cross-platform-issue, target:cpp) * [Don't make class SementicContext::Empty final.](https://github.com/antlr/antlr4/pull/3776) (cross-platform-issue, target:cpp) * [new nuget directory for building ANTLR4 C++ runtime as 3 Nuget packages](https://github.com/antlr/antlr4/pull/3741) (type:improvement, comp:build, target:cpp) * [Runtime tests fixes (C++, Python, PHP, C#)](https://github.com/antlr/antlr4/pull/3725) (target:python2, target:python3, target:csharp, target:cpp, comp:testing, target:php) * [Cpp: Disable warnings for external project](https://github.com/antlr/antlr4/pull/3707) (type:bug, type:improvement, target:cpp) * [FindANTLR: Fix version RegEx](https://github.com/antlr/antlr4/pull/3706) (type:bug, comp:build, target:cpp) * [Constant folding for Python and other runtimes](https://github.com/antlr/antlr4/pull/3701) (code-gen, target:java, target:javascript, target:python2, target:python3, target:csharp, target:swift, target:cpp, target:go, target:dart, comp:performance, target:php) * [Improve ExternalProject cmake file](https://github.com/antlr/antlr4/pull/3697) (actions, comp:build, target:cpp) * [Windows specific fixes](https://github.com/antlr/antlr4/pull/3678) (comp:build, cross-platform-issue, target:cpp) ### go target * [feat: Add a deprecation message to the existing v1 module](https://github.com/antlr/antlr4/pull/3855) (target:go, type:cleanup) * [Feature/gomod4110](https://github.com/antlr/antlr4/pull/3852) (target:go, type:cleanup) * [Optimize go tests runner and renable CircleCI go tests](https://github.com/antlr/antlr4/pull/3850) (comp:build, target:go, comp:testing) * [fix: #2016 Fix Go template list reference, go runtime and got test te…](https://github.com/antlr/antlr4/pull/3848) (target:go, type:cleanup) * [Fix 2016 round 2](https://github.com/antlr/antlr4/pull/3841) (type:bug, target:java, target:javascript, target:python2, target:python3, target:swift, target:cpp, target:go) * [doc: Start improving docs for #1374](https://github.com/antlr/antlr4/pull/3835) (comp:doc, target:go, type:cleanup) * [fix: #2016 - Generate correct iGo code for lists in a grammar, such a…](https://github.com/antlr/antlr4/pull/3834) (grammars, target:go) * [fix: #2826 Go template is incorrect for dynamic scopes](https://github.com/antlr/antlr4/pull/3832) (type:bug, target:go) * [fix: #3758 Allow for string being a keyword and fix go template to us…](https://github.com/antlr/antlr4/pull/3831) (target:go, type:cleanup) * [feat: Reduce initial memory allocations for collections](https://github.com/antlr/antlr4/pull/3830) (parsers, target:go) * [Feature/newhash](https://github.com/antlr/antlr4/pull/3829) (target:go, comp:performance) * [fix: Fixes for https://github.com/antlr/antlr4/issues/3718](https://github.com/antlr/antlr4/pull/3818) (type:bug, target:go, type:cleanup) * [Add Go accessor for IntervalSet.intervals](https://github.com/antlr/antlr4/pull/3800) (target:go) * [Ensure that only the tokens needed are fetched](https://github.com/antlr/antlr4/pull/3722) (target:java, target:go, comp:performance) * [Constant folding for Python and other runtimes](https://github.com/antlr/antlr4/pull/3701) (code-gen, target:java, target:javascript, target:python2, target:python3, target:csharp, target:swift, target:cpp, target:go, target:dart, comp:performance, target:php) ### java target * [Fix 2016 round 2](https://github.com/antlr/antlr4/pull/3841) (type:bug, target:java, target:javascript, target:python2, target:python3, target:swift, target:cpp, target:go) * [Add `@SuppressWarnings("CheckReturnValue")` to prevent error_prone lib errors.](https://github.com/antlr/antlr4/pull/3807) (target:java) * [Fixing bug identified by https://github.com/antlr/antlr4/discussions/…](https://github.com/antlr/antlr4/pull/3726) (target:java, type:cleanup) * [Ensure that only the tokens needed are fetched](https://github.com/antlr/antlr4/pull/3722) (target:java, target:go, comp:performance) * [Issue 3720: Java 2 Security issue](https://github.com/antlr/antlr4/pull/3721) (type:improvement, target:java) * [Constant folding for Python and other runtimes](https://github.com/antlr/antlr4/pull/3701) (code-gen, target:java, target:javascript, target:python2, target:python3, target:csharp, target:swift, target:cpp, target:go, target:dart, comp:performance, target:php) * [Fix OSGi imports](https://github.com/antlr/antlr4/pull/3675) (comp:build, target:java) ### javascript target * [Fix 2016 round 2](https://github.com/antlr/antlr4/pull/3841) (type:bug, target:java, target:javascript, target:python2, target:python3, target:swift, target:cpp, target:go) * [add license prefix](https://github.com/antlr/antlr4/pull/3793) (target:javascript) * [Constant folding for Python and other runtimes](https://github.com/antlr/antlr4/pull/3701) (code-gen, target:java, target:javascript, target:python2, target:python3, target:csharp, target:swift, target:cpp, target:go, target:dart, comp:performance, target:php) ### python2 target * [Fix 2016 round 2](https://github.com/antlr/antlr4/pull/3841) (type:bug, target:java, target:javascript, target:python2, target:python3, target:swift, target:cpp, target:go) * [[py2] Fix SyntaxError due to F string](https://github.com/antlr/antlr4/pull/3813) (type:bug, target:python2) * [[Python 3] use build and twine to publish source and wheel](https://github.com/antlr/antlr4/pull/3806) (comp:build, target:python2, target:python3) * [Fix #3508: Document the $parser attribute and its use in target-agnostic grammars.](https://github.com/antlr/antlr4/pull/3802) (target:python2, target:python3, comp:doc) * [Runtime tests fixes (C++, Python, PHP, C#)](https://github.com/antlr/antlr4/pull/3725) (target:python2, target:python3, target:csharp, target:cpp, comp:testing, target:php) * [Constant folding for Python and other runtimes](https://github.com/antlr/antlr4/pull/3701) (code-gen, target:java, target:javascript, target:python2, target:python3, target:csharp, target:swift, target:cpp, target:go, target:dart, comp:performance, target:php) * [Restore support for py3.5 by removing f-string in setup.py](https://github.com/antlr/antlr4/pull/3662) (target:python2) ### python3 target * [Fix 2016 round 2](https://github.com/antlr/antlr4/pull/3841) (type:bug, target:java, target:javascript, target:python2, target:python3, target:swift, target:cpp, target:go) * [[Python 3] use build and twine to publish source and wheel](https://github.com/antlr/antlr4/pull/3806) (comp:build, target:python2, target:python3) * [Fix #3508: Document the $parser attribute and its use in target-agnostic grammars.](https://github.com/antlr/antlr4/pull/3802) (target:python2, target:python3, comp:doc) * [Runtime tests fixes (C++, Python, PHP, C#)](https://github.com/antlr/antlr4/pull/3725) (target:python2, target:python3, target:csharp, target:cpp, comp:testing, target:php) * [Constant folding for Python and other runtimes](https://github.com/antlr/antlr4/pull/3701) (code-gen, target:java, target:javascript, target:python2, target:python3, target:csharp, target:swift, target:cpp, target:go, target:dart, comp:performance, target:php) ### swift target * [Fix 2016 round 2](https://github.com/antlr/antlr4/pull/3841) (type:bug, target:java, target:javascript, target:python2, target:python3, target:swift, target:cpp, target:go) * [Include swift & tool verification in CI workflow](https://github.com/antlr/antlr4/pull/3797) (type:improvement, comp:build, cross-platform-issue, target:swift) * [Swift runtime tests run on Windows!](https://github.com/antlr/antlr4/pull/3767) (comp:build, target:swift, comp:testing) * [[Swift] let the Swift Package Manager choose between static or dynamic linking ](https://github.com/antlr/antlr4/pull/3743) (comp:build, target:swift) * [Constant folding for Python and other runtimes](https://github.com/antlr/antlr4/pull/3701) (code-gen, target:java, target:javascript, target:python2, target:python3, target:csharp, target:swift, target:cpp, target:go, target:dart, comp:performance, target:php) * [Update Swift Package to support static library](https://github.com/antlr/antlr4/pull/3669) (comp:build, target:swift) ### php target * [Runtime tests fixes (C++, Python, PHP, C#)](https://github.com/antlr/antlr4/pull/3725) (target:python2, target:python3, target:csharp, target:cpp, comp:testing, target:php) * [Constant folding for Python and other runtimes](https://github.com/antlr/antlr4/pull/3701) (code-gen, target:java, target:javascript, target:python2, target:python3, target:csharp, target:swift, target:cpp, target:go, target:dart, comp:performance, target:php) ### dart target * [Constant folding for Python and other runtimes](https://github.com/antlr/antlr4/pull/3701) (code-gen, target:java, target:javascript, target:python2, target:python3, target:csharp, target:swift, target:cpp, target:go, target:dart, comp:performance, target:php) ## Contributors * 11 items: [Jim Idle](https://github.com/jimidle) (jimidle) * 10 items: [Terence Parr](https://github.com/parrt) (parrt) * 10 items: [Ivan Kochurkin](https://github.com/KvanTTT) (KvanTTT) * 6 items: [HS](https://github.com/hs-apotell) (hs-apotell) * 4 items: [Robert Adam](https://github.com/Krzmbrzl) (Krzmbrzl) * 2 items: [James Taylor](https://github.com/JamesRTaylor) (JamesRTaylor) * 2 items: [Nicksxs](https://github.com/Nicksxs) (Nicksxs) * 1 items: [Tim McCormack](https://github.com/timmc) (timmc) * 1 items: [Travis Thieman](https://github.com/thieman) (thieman) * 1 items: [Qijia Liu](https://github.com/eagleoflqj) (eagleoflqj) * 1 items: [Ross Patterson](https://github.com/RossPatterson) (RossPatterson) * 1 items: [ericvergnaud](https://github.com/ericvergnaud) * 1 items: [Bryan Tan](https://github.com/Technius) (Technius) * 1 items: [Henner Zeller](https://github.com/hzeller) (hzeller) * 1 items: [GCer-Hidenori](https://github.com/GCer-Hidenori) * 1 items: [Eduardo Hernández Valdez ](https://github.com/saucesaft) (saucesaft) * 1 items: [100mango](https://github.com/100mango) * 1 items: [Mark Symons](https://github.com/msymons) (msymons) * 1 items: [Francis ANDRE](https://github.com/zosrothko) (zosrothko) * 1 items: [Guillaume](https://github.com/Candide7) (Candide7) * 1 items: [Tristan Swadell](https://github.com/TristonianJones) (TristonianJones) * 1 items: [Will Dazey](https://github.com/dazey3) (dazey3) * 1 items: [uji](https://github.com/uji) (uji) * 1 items: [Robert Varga](https://github.com/rovarga) (rovarga) * 1 items: [Hell_Ghost](https://github.com/HellGhost) (HellGhost) * 1 items: [Alex Mykyta](https://github.com/amykyta3) (amykyta3) * 1 items: [Nikolay Ognyanov](https://github.com/nikolayo) (nikolayo) * 1 items: [Andrew Pashkin](https://github.com/AndreiPashkin) (AndreiPashkin)
4.10.1
2 years ago
Tiny update to fix build issue where java requirement for runtime was 11 not 1.8. ## What's Changed * [C++] Remove reference to antlrcpp:s2ws (#3656) by @jcking in https://github.com/antlr/antlr4/pull/3657 * Update publishing instruction for Dart by @lingyv-li in https://github.com/antlr/antlr4/pull/3655 * Prep 4.10.1 by @parrt in https://github.com/antlr/antlr4/pull/3660 **Full Changelog**: https://github.com/antlr/antlr4/compare/v4.10.0...4.10.1
4.10 Major feature, code clean up, and bug fix release
2 years ago
# ANTLR version 4.10 This is a very major release with a number of important changes. There have been many valuable contributions, but I welcome @KvanTTT and @jcking as recent "official" major ANTLR contributors. :) **WARNING**: *Generated 4.10 lexers and parsers are incompatible with code generated by previous versions of ANTLR. You must regenerate all of your code from grammars to use the new runtime. This is true of all targets (except probably javascript).* ## Repo branching structure We have changed the branching structure of the repository. The default branch for this repo remains [`master`](https://github.com/antlr/antlr4/tree/master) and it is the latest stable release with tags for the various releases; e.g., see release tag [4.9.3](https://github.com/antlr/antlr4/tree/4.9.3). We now do development work in branch [`dev`](https://github.com/antlr/antlr4/tree/dev) between releases and all pull requests should be derived from that branch. The `dev` branch is merged back into `master` to cut a release and the release state is tagged (e.g., with `4.10-rc.1` or `4.10`.) Visually our process looks roughly like this: <img src="https://github.com/antlr/antlr4/raw/master/doc/images/new-antlr-branches.png" width="500"> Targets such as Go that pull directly from the repository can use the default `master` branch but can also pull from the active `dev` branch: ```bash $ go get github.com/antlr/antlr4/runtime/Go/antlr@dev ``` ## Developers certificate of origin In order to bring ANTLR more in line with current standard standards for contribution processes, as of 4.10, ANTLR uses the [Linux Foundation's Developer Certificate of Origin, DCO, version 1.1](https://developercertificate.org/). See file [https://github.com/antlr/antlr4/raw/master/developer-cert-of-origin.txt ](developer-cert-of-origin.txt ). It is simpler than the original contributors license agreement, which required programmers to sign the `contributors.txt` file, which has now moved to file [historical-contributors-agreement.txt ](https://github.com/antlr/antlr4/raw/master/historical-contributors-agreement.txt). Each commit in pull requests must have a "signature", which is simple as using `-s` (not `-S`) on the git commit command: ``` $ git commit -s -m 'This is my commit message' ``` Github's pull request process enforces the sig and gives instructions on how to fix any commits that lack the sig. See [https://github.com/apps/dco](https://github.com/apps/dco) for more info. ## 4.10-generated parsers incompatible with previous runtimes ANTLR not only generates recursive-descent parsers; it generates a state machine called an augmented transition network (ATN) in serialized form as a bunch of integers stored in the generated parser and lexer files. This serialization format was changed for 4.10 to remove a size limit on the supported ATNs. See https://github.com/antlr/antlr4/pull/3591. The key point here is that we changed the version number stored inside the serialization format and so, in order to use this new version of ANTLR, you must regenerate all of your lexers and parsers using the 4.10 tool and then use the new runtime. Parsers generated with 4.10 or not compatible with previous versions of the runtime. ## Increasing minimum java version Going forward, we are using Java 11 for the source code and the compiled .class files for the ANTLR tool. The Java runtime target, however, and the associated runtime tests use Java 8 (bumping up from Java 7). ## JavaScript target The JS target has been substantially reworked. ## Miscellaneous improvements * Lexer rules can use the `caseInsensitive` option now. * Improved error messages * We rebuilt the runtime testing rig and made continuous integration improvements; part of this was done to support more recent versions of Java * We cleaned up the maven pom and brought it up to date (still has errors if somebody can make a suggestion.) # Changes report The following report is generated by `scripts/github_release_notes.py`. ## Issues fixed * [C++ runtime: Version identifier macro ?](https://github.com/antlr/antlr4/issues/3631) (target:cpp, type:cleanup) * [Generating XPath lexer/parser](https://github.com/antlr/antlr4/issues/3600) (actions, type:bug) * [do we need this C++ ATN serialization?](https://github.com/antlr/antlr4/issues/3592) (target:cpp, type:cleanup) * [Incorrect type of token with number 0xFFFF because of incorrect ATN serialization](https://github.com/antlr/antlr4/issues/3555) (atn-analysis, type:bug) * [Clean up ATN serialization: rm UUID and shifting by value of 2](https://github.com/antlr/antlr4/issues/3515) (atn-analysis, type:cleanup) * [The parseFile method of the InterpreterDataReader class is missing code: "line = br.readLine();"](https://github.com/antlr/antlr4/issues/3375) (type:bug, target:java) * [antlr.runtime.standard 4.9.3 invalid strong name.](https://github.com/antlr/antlr4/issues/3360) (type:bug, comp:build, target:csharp) * [Serialized ATN data element 810567 element 11 out of range 0..65535](https://github.com/antlr/antlr4/issues/3338) (atn-analysis, type:cleanup) * [Go target, unable to check when custom error strategy is in recovery mode](https://github.com/antlr/antlr4/issues/3259) (target:go) * [Escape issue for characeters](https://github.com/antlr/antlr4/issues/2885) (grammars, type:bug) * [antlr4 java.lang.NullPointerException Antlr 4 4.8](https://github.com/antlr/antlr4/issues/2788) (grammars, comp:tool, type:bug) * [UnsupportedOperationException while generating code for large grammars.](https://github.com/antlr/antlr4/issues/2732) (atn-analysis, type:cleanup) * [Add a more understandable message than "Serialized ATN data element .... element ... out of range 0..65535"](https://github.com/antlr/antlr4/issues/1863) (atn-analysis, type:cleanup) * [avoid java.lang.StackOverflowError](https://github.com/antlr/antlr4/issues/1105) (lexers, error-handling) * [Getting this error: Exception in thread "main" java.lang.UnsupportedOperationException: Serialized ATN data element out of range](https://github.com/antlr/antlr4/issues/840) (atn-analysis, type:cleanup) ## Improvements, features * [Updated getting started with Cpp documentation.](https://github.com/antlr/antlr4/pull/3628) (type:improvement, comp:doc) * [Escape bad words during grammar generation](https://github.com/antlr/antlr4/pull/3451) (code-gen, type:improvement) * [Implement caseInsensitive option](https://github.com/antlr/antlr4/pull/3399) (lexers, options, type:improvement) * [Some tool bugfixes](https://github.com/antlr/antlr4/pull/3349) (error-handling, comp:tool, type:improvement, type:cleanup) ## Pull requests grouped by target ### csharp target * [use ints not chars for C#](https://github.com/antlr/antlr4/pull/3567) (code-gen, atn-analysis, target:csharp) * [C# and Go runtime tests fixes on non-Windows OS](https://github.com/antlr/antlr4/pull/3386) (comp:runtime, target:csharp, target:go, comp:testing) * [C#, JavaScript, Go runtime tests performance improvements](https://github.com/antlr/antlr4/pull/3365) (target:javascript, target:csharp, target:go, comp:performance) ### cpp target * [[C++] Remove more dynamic_cast usage](https://github.com/antlr/antlr4/pull/3635) (target:cpp) * [[C++] Introduce version macros](https://github.com/antlr/antlr4/pull/3634) (target:cpp, type:cleanup) * [[C++] Free ATNConfig lookup set in readonly ATNConfigSet](https://github.com/antlr/antlr4/pull/3630) (target:cpp, type:cleanup) * [[C++] Implement configurable PredictionContextMergeCache](https://github.com/antlr/antlr4/pull/3627) (atn-analysis, target:cpp, type:cleanup) * [Allow to switch off building C++ tests, needed if used as sub-project](https://github.com/antlr/antlr4/pull/3624) (comp:build, target:cpp) * [[C++] Minor improvements to PredictionContext](https://github.com/antlr/antlr4/pull/3616) (target:cpp, type:cleanup) * [[C++] Cleanup DFA, DFAState, LexerAction, and yet more performance improvements](https://github.com/antlr/antlr4/pull/3615) (target:cpp, comp:performance, type:cleanup) * [[C++] Avoid copying statically generated serialized ATNs](https://github.com/antlr/antlr4/pull/3613) (target:cpp, comp:performance) * [[C++] Add T::is for type hierarchy checks and remove some dynamic_cast](https://github.com/antlr/antlr4/pull/3612) (target:cpp, type:cleanup) * [[C++] Devirtualize hand rolled RTTI for performance](https://github.com/antlr/antlr4/pull/3609) (target:cpp, comp:performance) * [[C++] Refactor PredictionContext and yet more performance improvements](https://github.com/antlr/antlr4/pull/3608) (target:cpp, comp:performance) * [[C++] Fix bugs in SemanticContext](https://github.com/antlr/antlr4/pull/3595) (target:cpp, comp:performance) * [[C++] Refactor and optimize SemanticContext](https://github.com/antlr/antlr4/pull/3594) (atn-analysis, target:cpp, type:cleanup) * [[C++] Add ANTLR4CPP_PUBLIC attributes to various symbols](https://github.com/antlr/antlr4/pull/3588) (target:cpp, type:cleanup) * [Update editorconfig for c++](https://github.com/antlr/antlr4/pull/3586) (target:cpp) * [[C++] Avoid using dynamic_cast where possible by using hand rolled RTTI](https://github.com/antlr/antlr4/pull/3584) (actions, target:cpp, type:cleanup) * [[C++] Fix generated Lexer static data constructor](https://github.com/antlr/antlr4/pull/3576) (target:cpp, type:cleanup) * [[C++] Force generated static data type name to titlecase](https://github.com/antlr/antlr4/pull/3572) (target:cpp, type:cleanup) * [[C++] Remove unused LexerATNSimulator::match_calls](https://github.com/antlr/antlr4/pull/3570) (target:cpp, type:cleanup) * [[C++] Switch to camel case for generated static data variable names](https://github.com/antlr/antlr4/pull/3565) (target:cpp, type:cleanup) * [[C++] Remove duplicate includes and remove unused includes](https://github.com/antlr/antlr4/pull/3563) (target:cpp, type:cleanup) * [[C++] Lazily deserialize ATN in generated code](https://github.com/antlr/antlr4/pull/3562) (target:cpp, type:cleanup) * [[C++] Cleanup ATNDeserializer and remove related deprecated methods from ATNSimulator](https://github.com/antlr/antlr4/pull/3545) (target:cpp, type:cleanup) * [[C++] Improve multithreaded performance, fix TSAN error, and fix profiling ATN simulator setup](https://github.com/antlr/antlr4/pull/3544) (target:cpp) * [[C++] Remove now unused antlrcpp::Guid](https://github.com/antlr/antlr4/pull/3531) (target:cpp) * [[C++] Fix const correctness in ATN and DFA](https://github.com/antlr/antlr4/pull/3530) (target:cpp) * [[C++] Fix missing virtual destructors](https://github.com/antlr/antlr4/pull/3523) (target:cpp, type:cleanup) * [[C++] Optimize LL1Analyzer](https://github.com/antlr/antlr4/pull/3522) (target:cpp) * [[C++] Update cmake README.md to C++17](https://github.com/antlr/antlr4/pull/3499) (comp:build, target:cpp) * [[C++] Fix Windows min/max macro collision](https://github.com/antlr/antlr4/pull/3491) (target:cpp) * [[C++] Optimizations and cleanups and const correctness, oh my](https://github.com/antlr/antlr4/pull/3478) (target:cpp, type:cleanup) * [cpp/cmake: Fix library install directories](https://github.com/antlr/antlr4/pull/3447) (target:cpp) * [[C++] Improve MurmurHash performance for Clang](https://github.com/antlr/antlr4/pull/3431) (target:cpp, comp:performance) * [[C++] Fix bugs in UnbufferedCharStream](https://github.com/antlr/antlr4/pull/3420) (target:cpp) * [[C++] Improve whitespace escaping](https://github.com/antlr/antlr4/pull/3413) (target:cpp, type:cleanup) * [[C++] Clean up antlr4::misc::Interval and antlr4::dfa](https://github.com/antlr/antlr4/pull/3409) (target:cpp) * [Fixed C++ runtime demo](https://github.com/antlr/antlr4/pull/3402) (target:cpp) * [[C++] Optimize ATN deserialization](https://github.com/antlr/antlr4/pull/3401) (target:cpp, comp:performance) * [[C++] Cleanup EMPTY_VOCABULARY uses and remove SingleWriteMultipleRea…](https://github.com/antlr/antlr4/pull/3400) (target:cpp) * [[C++] Implement standalone Unicode encoding and decoding handling](https://github.com/antlr/antlr4/pull/3398) (target:cpp) * [[C++] Switch to std::any and deprecate antlrcpp::Any](https://github.com/antlr/antlr4/pull/3395) (target:cpp) * [[C++] Fix ambiguous ANTLRInputStream constructor overload](https://github.com/antlr/antlr4/pull/3394) (target:cpp) * [[C++] Partially undo commit a8d828016e54adfc403326d8e56d93e7c75c27fc](https://github.com/antlr/antlr4/pull/3393) (target:cpp) * [[C++] Modernize Vocabulary using std::string_view](https://github.com/antlr/antlr4/pull/3378) (target:cpp) * [[C++] Switch from NOEXCEPT to noexcept](https://github.com/antlr/antlr4/pull/3377) (target:cpp) * [Fix reported memory leak](https://github.com/antlr/antlr4/pull/3374) (target:cpp) * [Add .clang-format file to ensure consistent style of C++](https://github.com/antlr/antlr4/pull/3337) (target:cpp) * [[C++] Bump minimum required version to C++17](https://github.com/antlr/antlr4/pull/3335) (target:cpp) * [[C++] Upstream various performance, build, and best practice fixes](https://github.com/antlr/antlr4/pull/3327) (target:cpp) * [[C++] Cleanup ATNDeserializer interface](https://github.com/antlr/antlr4/pull/3326) (target:cpp) * [Fix TSAN warnings related to dfa::DFA::s0](https://github.com/antlr/antlr4/pull/3311) (target:cpp) * [Corrected/clarified the Linux C++ runtime compilation instructions](https://github.com/antlr/antlr4/pull/3207) (comp:build, comp:doc, target:cpp) ### go target * [[Go] Fix symbol collision in generated lexers and parsers](https://github.com/antlr/antlr4/pull/3603) (type:bug, target:go) * [[Go] Do not export Array2DHashSet which is an implementation detail](https://github.com/antlr/antlr4/pull/3597) (target:go, type:cleanup) * [[Go] Cleanup and fix ATN deserialization verification](https://github.com/antlr/antlr4/pull/3574) (target:go, type:cleanup) * [Don't decode utf16 in ATN deserialization for Go; it's just a bunch of uint16](https://github.com/antlr/antlr4/pull/3573) (atn-analysis, target:go) * [[Go] Port locking algorithm from C++ to Go](https://github.com/antlr/antlr4/pull/3571) (target:go, threading) * [perf: Add default implementation for Visit in ParseTreeVisitor. ](https://github.com/antlr/antlr4/pull/3569) (trees-contexts, target:go) * [[Go] Fix for issue 3557 -- get "go test" working again](https://github.com/antlr/antlr4/pull/3558) (target:go, type:cleanup) * [make InErrorRecoveryMode public for go](https://github.com/antlr/antlr4/pull/3539) (target:go) * [Fix bail error strategy nil interface panic](https://github.com/antlr/antlr4/pull/3537) (trees-contexts, type:bug, target:go) * [[Go] Fix (*BitSet).equals](https://github.com/antlr/antlr4/pull/3455) (target:go) * [[Go] Fix BitSet OR operation](https://github.com/antlr/antlr4/pull/3427) (target:go) * [[Go] Make BaseGoTest::initializeRuntime static](https://github.com/antlr/antlr4/pull/3422) (target:go, comp:testing) * [[Go] Improve BitSet implementation](https://github.com/antlr/antlr4/pull/3421) (target:go) * [C# and Go runtime tests fixes on non-Windows OS](https://github.com/antlr/antlr4/pull/3386) (comp:runtime, target:csharp, target:go, comp:testing) * [C#, JavaScript, Go runtime tests performance improvements](https://github.com/antlr/antlr4/pull/3365) (target:javascript, target:csharp, target:go, comp:performance) * [Get rid of reflection in Go.stg](https://github.com/antlr/antlr4/pull/3353) (target:go) * [Use atomic instead of a shared mutex for DFA.s0](https://github.com/antlr/antlr4/pull/3313) (target:go) ### java target * [[Java] Preserve serialized ATN version 3 compatibility](https://github.com/antlr/antlr4/pull/3583) (atn-analysis, target:java) * [Fix .interp file parsing test for the Java runtime.](https://github.com/antlr/antlr4/pull/3520) (target:java) * [Remove unused variable from generated code](https://github.com/antlr/antlr4/pull/3459) (target:java) * [Update javadoc to 8 and 11](https://github.com/antlr/antlr4/pull/3454) (comp:build, target:java, comp:doc) * [use src 11 for tool, but 8 for plugin/runtime](https://github.com/antlr/antlr4/pull/3450) (comp:build, target:java) * [[Java] Fix remaining complaints from ErrorProne static analysis](https://github.com/antlr/antlr4/pull/3383) (target:java, type:cleanup) ### javascript target * [add license prefix](https://github.com/antlr/antlr4/pull/3637) (target:javascript, type:cleanup) * [Refactor js runtime](https://github.com/antlr/antlr4/pull/3619) (target:javascript) * [JavaScript: Change string to int array for serialized ATN](https://github.com/antlr/antlr4/pull/3568) (code-gen, atn-analysis, target:javascript, type:cleanup) * [[JavaScript] Migrate from jest to jasmine](https://github.com/antlr/antlr4/pull/3501) (target:javascript) * [Add browser fs fallback](https://github.com/antlr/antlr4/pull/3414) (target:javascript) * [C#, JavaScript, Go runtime tests performance improvements](https://github.com/antlr/antlr4/pull/3365) (target:javascript, target:csharp, target:go, comp:performance) ### python2 target * [Convert Python2/3 to use int arrays not strings for ATN encodings](https://github.com/antlr/antlr4/pull/3561) (atn-analysis, target:python2, target:python3) ### python3 target * [Convert Python2/3 to use int arrays not strings for ATN encodings](https://github.com/antlr/antlr4/pull/3561) (atn-analysis, target:python2, target:python3) * [[Python3] rename pygrun, add entry_point](https://github.com/antlr/antlr4/pull/3379) (comp:build, target:python3) * [Python local import fixes](https://github.com/antlr/antlr4/pull/3232) (comp:build, target:python3) ### swift target * [[Swift] An interval ought to be a value](https://github.com/antlr/antlr4/pull/3623) (target:swift, type:cleanup) * [[Swift] reduce Optionals in APIs](https://github.com/antlr/antlr4/pull/3621) (target:swift, type:cleanup) * [[Swift] more improved optional handling](https://github.com/antlr/antlr4/pull/3605) (target:swift, type:cleanup) * [[Swift] use stdlib (single pass)](https://github.com/antlr/antlr4/pull/3602) (target:swift) * [[Docs] Update Swift Docs](https://github.com/antlr/antlr4/pull/3458) (comp:doc, target:swift) * [Use release build config instead of debug for Swift runtime tests (improve performance more than 50%)](https://github.com/antlr/antlr4/pull/3425) (target:swift, comp:testing, comp:performance) * [Update Swift template to silence warnings about unmodified class reference](https://github.com/antlr/antlr4/pull/3387) (target:swift) * [Update Swift runtime doc](https://github.com/antlr/antlr4/pull/3358) (comp:doc, target:swift) * [Use `AnyObject` instead of `class`.](https://github.com/antlr/antlr4/pull/3351) (target:swift) * [[Swift] Use proper constants](https://github.com/antlr/antlr4/pull/3304) (target:swift) * [[Swift] Use for in loops](https://github.com/antlr/antlr4/pull/3303) (target:swift, type:cleanup) * [[Swift] improvements to equality functions](https://github.com/antlr/antlr4/pull/3302) (target:swift, type:cleanup) * [Add Support For Swift Package Manager](https://github.com/antlr/antlr4/pull/3132) (comp:build, target:swift) ### php target * [Fix code style and typing to support PHP 8](https://github.com/antlr/antlr4/pull/3582) (target:php, type:cleanup) * [Fix PHP codegen to support int ATN serialization](https://github.com/antlr/antlr4/pull/3579) (atn-analysis, target:php, type:cleanup) ### dart target * [Dart int atn](https://github.com/antlr/antlr4/pull/3578) (atn-analysis, target:dart, type:cleanup) * [Fix Dart linter errors under strict mode](https://github.com/antlr/antlr4/pull/3376) (target:dart, type:cleanup) * [Remove `late` modifier for Dart generated context classes](https://github.com/antlr/antlr4/pull/3286) (target:dart) ## Contributors * 62 items: [Justin King](https://github.com/jcking) (jcking) * 31 items: [Terence Parr](https://github.com/parrt) (parrt) * 16 items: [Ivan Kochurkin](https://github.com/KvanTTT) (KvanTTT) * 7 items: [Dante Broggi](https://github.com/Dante-Broggi) (Dante-Broggi) * 4 items: [ericvergnaud](https://github.com/ericvergnaud) * 3 items: [Henner Zeller](https://github.com/hzeller) (hzeller) * 2 items: [Marcos Passos](https://github.com/marcospassos) (marcospassos) * 2 items: [100mango](https://github.com/100mango) * 2 items: [Tinker](https://github.com/Tinker1024) (Tinker1024) * 1 items: [chris-miner](https://github.com/chris-miner) * 1 items: [chen quan](https://github.com/chenquan) (chenquan) * 1 items: [Ken Domino](https://github.com/kaby76) (kaby76) * 1 items: [Matt Willer](https://github.com/mattwiller) (mattwiller) * 1 items: [Biswapriyo Nath](https://github.com/Biswa96) (Biswa96) * 1 items: [Alexandr](https://github.com/Alex-Andrv) (Alex-Andrv) * 1 items: [Oleksandr Martyshchenko](https://github.com/Ketler13) (Ketler13) * 1 items: [Mike Lischke](https://github.com/mike-lischke) (mike-lischke) * 1 items: [Eneko Alonso](https://github.com/eneko) (eneko) * 1 items: [Nicholas Bollweg](https://github.com/bollwyvl) (bollwyvl) * 1 items: [Gerhard Barteling](https://github.com/Barteling) (Barteling) * 1 items: [hlstwizard](https://github.com/hlstwizard) * 1 items: [Yoshimasa Niwa](https://github.com/niw) (niw) * 1 items: [frog酋长](https://github.com/ccrfrog) (ccrfrog) * 1 items: [Isaac](https://github.com/idraper) (idraper) * 1 items: [Roman Gafurov](https://github.com/seth2810) (seth2810) * 1 items: [Benjamin Spiegel](https://github.com/SkittlePox) (SkittlePox) * 1 items: [Abe149](https://github.com/Abe149) * 1 items: [Karl Heinz Marbaise](https://github.com/khmarbaise) (khmarbaise) * 1 items: [Roger Far](https://github.com/rogerfar) (rogerfar) * 1 items: [yonatanLehman](https://github.com/yonatanLehman) * 1 items: [Miguel Alejandro Muñoz Gil](https://github.com/mimuogi) (mimuogi) * 1 items: [Harry Chan](https://github.com/re-thc) (re-thc) * 1 items: [Jérôme BAROTIN](https://github.com/jbarotin) (jbarotin) * 1 items: [Wolfgang Fahl](https://github.com/WolfgangFahl) (WolfgangFahl) * 1 items: [Andrea Giovacchini](https://github.com/agiovacchini) (agiovacchini) **Full Changelog**: https://github.com/antlr/antlr4/compare/4.9.3...4.10
4.9.3 bug fix release
2 years ago
## Issues fixed * [Swift Target Crashes with Multi-Threading](https://github.com/antlr/antlr4/issues/3271) () * [JavaScript Runtime bug](https://github.com/antlr/antlr4/issues/3270) () * [Go target, cannot use superClass for the lexer grammar!](https://github.com/antlr/antlr4/issues/3254) (type:bug, target:go) * [Python runtime is inconsistent with Java](https://github.com/antlr/antlr4/issues/3236) (target:python2) * [FunctionDef source extract using getText()](https://github.com/antlr/antlr4/issues/3216) (target:javascript) * [Provide .NET Framework target in the csharp nuget package](https://github.com/antlr/antlr4/issues/3212) (target:csharp) * [Go target for Antlr tool, type ",int8" => "int8"](https://github.com/antlr/antlr4/issues/3204) (target:go) * [Flutter/Dart web support](https://github.com/antlr/antlr4/issues/3190) (target:dart) * [Allow Antlr Javascript runtime to be loaded into Kindle Touch](https://github.com/antlr/antlr4/issues/3183) (target:javascript) * [Fix Go test suite](https://github.com/antlr/antlr4/issues/3175) (comp:build, target:go) * [Weird error](https://github.com/antlr/antlr4/issues/2498) (error-handling, comp:tool) ## Improvements, features * [[C++] Use faster alternative to dynamic_cast when not testing inherit…](https://github.com/antlr/antlr4/pull/3318) (type:improvement, target:cpp) * [Stackoverflow after upgrading from 4.6 to 4.7](https://github.com/antlr/antlr4/issues/1943) (error-handling, type:improvement) ## Pull requests grouped by target ### csharp target ### cpp target * [[C++] Use faster alternative to dynamic_cast when not testing inherit…](https://github.com/antlr/antlr4/pull/3318) (type:improvement, target:cpp) * [[C++] Refactor Guid to use std::array instead of std::vector](https://github.com/antlr/antlr4/pull/3316) (target:cpp) * [Fix some thread sanitizer warnings in C++ runtime](https://github.com/antlr/antlr4/pull/3309) (target:cpp) * [Change utfcpp git url to use https](https://github.com/antlr/antlr4/pull/3192) (target:cpp) * [Add explanation about lifetime of parse tree to cpp-target.md#memory-management](https://github.com/antlr/antlr4/pull/3169) (target:cpp) * [Patch utfcpp build](https://github.com/antlr/antlr4/pull/3164) (comp:build, target:cpp) * [Revert "Cpp target: No building tests/samples for external utfcpp"](https://github.com/antlr/antlr4/pull/3149) (type:bug, target:cpp) * [Fix typo in ExternalAntlr4Cpp.cmake](https://github.com/antlr/antlr4/pull/3146) (target:cpp) * [[C++] Performance improvement in finally](https://github.com/antlr/antlr4/pull/3144) (target:cpp) ### go target * [Fix for Issue 3319](https://github.com/antlr/antlr4/pull/3322) (type:bug, target:go) * [[Go] Fix null pointer dereference](https://github.com/antlr/antlr4/pull/3284) (target:go) * [fix: use 32bit murmur3 same with java, implement array2dhashset which…](https://github.com/antlr/antlr4/pull/3243) (target:go) * [Fix tests for go runtime](https://github.com/antlr/antlr4/pull/3185) (target:go, comp:testing) * [Runtime(Go): Add LICENSE to module](https://github.com/antlr/antlr4/pull/3177) (target:go) * [Add `go.mod` to go runtime module](https://github.com/antlr/antlr4/pull/3176) (comp:build, target:go) * [Making compatibility with actions and predicates in Go better](https://github.com/antlr/antlr4/pull/3174) (actions, target:go) ### java target * [Upgrade com.ibm.icu:icu4j to latest (69.1) to avoid potential vulnerabilities it brings](https://github.com/antlr/antlr4/pull/3261) (target:java, unicode) ### python2 target * [make Python2 runtime keep consistent with Java](https://github.com/antlr/antlr4/pull/3252) (target:python2) ### swift target * [fix compiler error](https://github.com/antlr/antlr4/pull/3315) (target:swift) * [[Swift] Changes to Mutex-es to guard the staticly shared [DFA]](https://github.com/antlr/antlr4/pull/3276) (target:swift) * [Swift InterpreterDataReader and deserialize fixes](https://github.com/antlr/antlr4/pull/3098) (target:swift) * [Silence Swift compiler warnings in Swift runtime](https://github.com/antlr/antlr4/pull/3026) (target:swift) * [Fix Swift runtime ANTLRInputStream that can’t read Unicode scalars](https://github.com/antlr/antlr4/pull/3025) (target:swift) ### php target ### dart target * [[Dart] Workaround for windows build issue](https://github.com/antlr/antlr4/pull/3253) (target:dart) * [[Dart] Support Dart multiple platforms.](https://github.com/antlr/antlr4/pull/3250) (target:dart) * [[Dart] Add case changing char stream example](https://github.com/antlr/antlr4/pull/3246) (target:dart) * [[Dart] Fix crash when parsing high index options](https://github.com/antlr/antlr4/pull/3245) (target:dart) * [Configure dart debug flags through environment declaration](https://github.com/antlr/antlr4/pull/3128) (target:dart) * [Export recognizer class for dart target](https://github.com/antlr/antlr4/pull/3119) (target:dart) * [Enable dart non nullable by default (NNBD)](https://github.com/antlr/antlr4/pull/3116) (comp:runtime, target:dart) ## Contributors * 9 items: [ericvergnaud](https://github.com/ericvergnaud) * 4 items: [Justin King](https://github.com/jcking) (jcking) * 4 items: [Larry Li](https://github.com/lingyv-li) (lingyv-li) * 3 items: [Ken Domino](https://github.com/kaby76) (kaby76) * 3 items: [Vladimir-Chan](https://github.com/Vladimir-Chan) * 3 items: [Joaquín León](https://github.com/Joakker) (Joakker) * 2 items: [Terence Parr](https://github.com/parrt) (parrt) * 2 items: [Ivan Kochurkin](https://github.com/KvanTTT) (KvanTTT) * 2 items: [Johan Appelgren](https://github.com/appel1) (appel1) * 2 items: [skef](https://github.com/skef) * 2 items: [Yoshimasa Niwa](https://github.com/niw) (niw) * 1 items: [Steven Kalt](https://github.com/SKalt) (SKalt) * 1 items: [Martin van Wingerden](https://github.com/martinvw) (martinvw) * 1 items: [Rishuv Mehta](https://github.com/rmehta33) (rmehta33) * 1 items: [Viveksharma48b](https://github.com/Gravity-I-Pull-You-Down) (Gravity-I-Pull-You-Down) * 1 items: [XenoAmess](https://github.com/XenoAmess) (XenoAmess) * 1 items: [Yi-Hong Lin](https://github.com/ansiemens) (ansiemens) * 1 items: [Jeffsky](https://github.com/jjeffcaii) (jjeffcaii) * 1 items: [Rachid Lamouri](https://github.com/rachidlamouri) (rachidlamouri) * 1 items: [ksyx](https://github.com/ksyx) * 1 items: [renzhentaxi](https://github.com/renzhentaxi) * 1 items: [Yuxin Liu (Claire)](https://github.com/Yuxin45) (Yuxin45) * 1 items: [Marc Auberer](https://github.com/marcauberer) (marcauberer) * 1 items: [Julian Bissekkou](https://github.com/JulianBissekkou) (JulianBissekkou) * 1 items: [Milan Aleksić](https://github.com/milanaleksic) (milanaleksic) * 1 items: [Nathanael Demacon](https://github.com/quantumsheep) (quantumsheep) * 1 items: [Mitar](https://github.com/mitar) (mitar) * 1 items: [Sergii Kliuchnyk](https://github.com/redexp) (redexp) * 1 items: [Michal Harakal](https://github.com/michalharakal) (michalharakal) * 1 items: [Alexander Bigerl](https://github.com/bigerl) (bigerl) * 1 items: [Josua Jäger](https://github.com/JaggerJo) (JaggerJo) * 1 items: [Mike Lischke](https://github.com/mike-lischke) (mike-lischke) * 1 items: [b1f6c1c4](https://github.com/b1f6c1c4) * 1 items: [Damian Andrei](https://github.com/xTachyon) (xTachyon) * 1 items: [Minjoo Sur](https://github.com/minjoosur) (minjoosur) * 1 items: [Ricardo Canastro](https://github.com/canastro) (canastro) * 1 items: [Renan](https://github.com/renancaraujo) (renancaraujo) * 1 items: [A. Hooper](https://github.com/ahooper) (ahooper) * 1 items: [IdkGoodName](https://github.com/IdkGoodName) (IdkGoodName) * 1 items: [Niels Basjes](https://github.com/nielsbasjes) (nielsbasjes)
4.9.2 bug fix release
3 years ago
## Issues fixed * [CSharp and Java produce different results for identical input, identical tokens](https://github.com/antlr/antlr4/issues/3112) (target:csharp, type:bug) ## Improvements, features Moved away from travis-ci.com. ## Pull requests grouped by target ### csharp target * [fix a typo in the csharp-target doc](https://github.com/antlr/antlr4/pull/3089) (target:csharp) * [Issue 2693](https://github.com/antlr/antlr4/pull/3057) (comp:build, target:csharp) * [Fix for https://github.com/antlr/antlr4/issues/3049](https://github.com/antlr/antlr4/pull/3050) (comp:build, target:csharp) * [add script](https://github.com/antlr/antlr4/pull/3048) (comp:build, target:csharp) * [Update ll1 analyzer](https://github.com/antlr/antlr4/pull/3046) (target:csharp, target:javascript, target:python2, target:python3, type:bug) ### cpp target * [Fixed ANTLRInputStream and ANTLRFileStream](https://github.com/antlr/antlr4/pull/3113) (target:cpp) * [Cpp target: allow building runtime with newer C++ standards](https://github.com/antlr/antlr4/pull/3071) (comp:build, target:cpp) ### javascript target * [fix javascript import in example code](https://github.com/antlr/antlr4/pull/3100) (target:javascript) * [Fix javascript intervals](https://github.com/antlr/antlr4/pull/3083) (target:javascript) * [Update ll1 analyzer](https://github.com/antlr/antlr4/pull/3046) (target:csharp, target:javascript, target:python2, target:python3, type:bug) ### python2 target * [Update ll1 analyzer](https://github.com/antlr/antlr4/pull/3046) (target:csharp, target:javascript, target:python2, target:python3, type:bug) ### python3 target * [Fix TextIO compatibility with Python 3.6+ in LexerFile](https://github.com/antlr/antlr4/pull/3067) (target:python3) * [Fix 3052](https://github.com/antlr/antlr4/pull/3053) (target:python3, type:bug) * [Update ll1 analyzer](https://github.com/antlr/antlr4/pull/3046) (target:csharp, target:javascript, target:python2, target:python3, type:bug) ### swift target * [work around Swift crash where reading hashValue on SemanticContext.AN…](https://github.com/antlr/antlr4/pull/3047) (actions, target:swift) * [Fix swift warnings](https://github.com/antlr/antlr4/pull/3043) (target:swift) ## Contributors * 12 items: [ericvergnaud](https://github.com/ericvergnaud) * 3 items: [Ken Domino](https://github.com/kaby76) (kaby76) * 1 items: [Mike Lischke](https://github.com/mike-lischke) (mike-lischke) * 1 items: [不是油条](https://github.com/hackeris) (hackeris) * 1 items: [Karl Heinz Marbaise](https://github.com/khmarbaise) (khmarbaise) * 1 items: [Xingyu Xie](https://github.com/namasikanam) (namasikanam) * 1 items: [Felix N](https://github.com/felixn) (felixn) * 1 items: [Taras Sotnikov](https://github.com/tsotnikov) (tsotnikov) * 1 items: [Ivan Kochurkin](https://github.com/KvanTTT) (KvanTTT) * 1 items: [Kko](https://github.com/l215884529) (l215884529)
4.9.1 bug fix release
3 years ago
## Issues fixed * [Invalid C# code being generated](https://github.com/antlr/antlr4/issues/3000) (code-gen) * [netstandard 2.0 build](https://github.com/antlr/antlr4/issues/2984) (comp:build, target:csharp) ## Pull requests grouped by target ### csharp target * [Fix typo](https://github.com/antlr/antlr4/pull/3005) (target:csharp) * [ensure 1 statement per line to help debug](https://github.com/antlr/antlr4/pull/3003) (target:csharp) * [C# runtime upgrade](https://github.com/antlr/antlr4/pull/2987) (comp:build, target:csharp) ### cpp target * [travis: upgrade c++ build to focal & llvm 10](https://github.com/antlr/antlr4/pull/2983) (comp:build, target:cpp) ### go target ### java target ### javascript target * [upgrade ini](https://github.com/antlr/antlr4/pull/3004) (target:javascript) * [Potential fix to #2980](https://github.com/antlr/antlr4/pull/2997) (target:javascript) * [rollback partially incorrect fix for #2902](https://github.com/antlr/antlr4/pull/2996) (target:javascript) * [Fixed exception clauses in JS template.](https://github.com/antlr/antlr4/pull/2995) (target:javascript) * [:ambulance: fix bad import](https://github.com/antlr/antlr4/pull/2985) (target:javascript) ### python2 target * [Fix incorrect python token string templates](https://github.com/antlr/antlr4/pull/2978) (target:python2, target:python3) * [add optional encoding for string input in python 2](https://github.com/antlr/antlr4/pull/2747) (target:python2) ### python3 target * [Improve python3 performance by adding __slots__](https://github.com/antlr/antlr4/pull/3017) (target:python3) * [Fix incorrect python token string templates](https://github.com/antlr/antlr4/pull/2978) (target:python2, target:python3) * [Py3 Runtime: distribute the tests](https://github.com/antlr/antlr4/pull/2971) (target:python3) ## Contributors * 8 items: [ericvergnaud](https://github.com/ericvergnaud) * 2 items: [Ivan Kochurkin](https://github.com/KvanTTT) (KvanTTT) * 1 items: [Alex Mykyta](https://github.com/amykyta3) (amykyta3) * 1 items: [Ozzah](https://github.com/Ozzah) * 1 items: [Tabari Alexander](https://github.com/tehbone) (tehbone) * 1 items: [David Phillips](https://github.com/electrum) (electrum) * 1 items: [maxence-lefebvre](https://github.com/maxence-lefebvre) * 1 items: [Jim Baltikauskas](https://github.com/JBaltika) (JBaltika) * 1 items: [Felix N](https://github.com/felixn) (felixn) * 1 items: [Michael R. Crusoe](https://github.com/mr-c) (mr-c)

Swiftpack is being maintained by Petr Pavlik | @ptrpavlik | @swiftpackco | API | Analytics