weedow-searchy
weedow-searchy copied to clipboard
Bump antlr4.version from 4.9.3 to 4.10
Bumps antlr4.version
from 4.9.3 to 4.10.
Updates antlr4-runtime
from 4.9.3 to 4.10
Release notes
Sourced from antlr4-runtime's releases.
4.10 Major feature, code clean up, and bug fix release
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
and it is the latest stable release with tags for the various releases; e.g., see release tag 4.9.3. We now do development work in branchdev
between releases and all pull requests should be derived from that branch. Thedev
branch is merged back intomaster
to cut a release and the release state is tagged (e.g., with4.10-rc.1
or4.10
.) Visually our process looks roughly like this:Targets such as Go that pull directly from the repository can use the default
master
branch but can also pull from the activedev
branch:$ 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. See file https://github.com/antlr/antlr4/raw/master/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 .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 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 antlr/antlr4#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
... (truncated)
Commits
c7567ba
[maven-release-plugin] prepare release 4.10d11a10e
tweak doce56dff6
Merge branch 'dev' of github.com:antlr/antlr4 into dev0d4f6c9
Merge branch 'master' of github.com:antlr/antlr43e182e9
update script to have warningade6181
[C++] Update version to 4.10 (#3647)728c7cb
Merge pull request #3646 from jcking/cpp-update-version74be2b6
[C++] Update version to 4.104b90953
change c++ version file for script1684238
[C++] Fix bugs in ParserATNSimulator and PredictionContextMergeCache (#3644)- Additional commits viewable in compare view
Updates antlr4-maven-plugin
from 4.9.3 to 4.10
Release notes
Sourced from antlr4-maven-plugin's releases.
4.10 Major feature, code clean up, and bug fix release
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
and it is the latest stable release with tags for the various releases; e.g., see release tag 4.9.3. We now do development work in branchdev
between releases and all pull requests should be derived from that branch. Thedev
branch is merged back intomaster
to cut a release and the release state is tagged (e.g., with4.10-rc.1
or4.10
.) Visually our process looks roughly like this:Targets such as Go that pull directly from the repository can use the default
master
branch but can also pull from the activedev
branch:$ 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. See file https://github.com/antlr/antlr4/raw/master/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 .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 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 antlr/antlr4#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
... (truncated)
Commits
c7567ba
[maven-release-plugin] prepare release 4.10d11a10e
tweak doce56dff6
Merge branch 'dev' of github.com:antlr/antlr4 into dev0d4f6c9
Merge branch 'master' of github.com:antlr/antlr43e182e9
update script to have warningade6181
[C++] Update version to 4.10 (#3647)728c7cb
Merge pull request #3646 from jcking/cpp-update-version74be2b6
[C++] Update version to 4.104b90953
change c++ version file for script1684238
[C++] Fix bugs in ParserATNSimulator and PredictionContextMergeCache (#3644)- Additional commits viewable in compare view
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase
.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
-
@dependabot rebase
will rebase this PR -
@dependabot recreate
will recreate this PR, overwriting any edits that have been made to it -
@dependabot merge
will merge this PR after your CI passes on it -
@dependabot squash and merge
will squash and merge this PR after your CI passes on it -
@dependabot cancel merge
will cancel a previously requested merge and block automerging -
@dependabot reopen
will reopen this PR if it is closed -
@dependabot close
will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually -
@dependabot ignore this major version
will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) -
@dependabot ignore this minor version
will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) -
@dependabot ignore this dependency
will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)