Skip to content

Update dependency org.antlr:antlr4 to v4.10.1 - #3

Open
renovate[bot] wants to merge 1 commit into
mainfrom
renovate/org.antlr-antlr4-4.x
Open

Update dependency org.antlr:antlr4 to v4.10.1#3
renovate[bot] wants to merge 1 commit into
mainfrom
renovate/org.antlr-antlr4-4.x

Conversation

@renovate

@renovate renovate Bot commented Jan 7, 2022

Copy link
Copy Markdown
Contributor

Mend Renovate

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
org.antlr:antlr4 (source) 4.9.2 -> 4.10.1 age adoption passing confidence

Release Notes

antlr/antlr4

v4.10.1

Compare Source

Tiny update to fix build issue where java requirement for runtime was 11 not 1.8.

What's Changed

Full Changelog: antlr/antlr4@v4.10.0...4.10.1

v4.10

Compare Source

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 branch 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:

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:

$ 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 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

Improvements, features

Pull requests grouped by target

csharp target
cpp target
go target
java target
javascript target
python2 target
python3 target
swift target
php target
dart target

Contributors

Full Changelog: antlr/antlr4@4.9.3...4.10

v4.9.3

Compare Source

Issues fixed

Improvements, features

Pull requests grouped by target

csharp target
cpp target
go target
java target
python2 target
swift target
php target
dart target

Contributors


Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, click this checkbox.

This PR has been generated by Mend Renovate. View repository job log here.

@renovate
renovate Bot force-pushed the renovate/org.antlr-antlr4-4.x branch from 790f828 to ce4b43a Compare April 24, 2022 20:43
@renovate renovate Bot changed the title Update dependency org.antlr:antlr4 to v4.9.3 Update dependency org.antlr:antlr4 to v4.10.1 Apr 24, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant