[
https://issues.apache.org/jira/browse/AVRO-3403?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
ASF GitHub Bot updated AVRO-3403:
---------------------------------
Labels: pull-request-available (was: )
> Migrate from JavaCC to ANTLR
> ----------------------------
>
> Key: AVRO-3403
> URL: https://issues.apache.org/jira/browse/AVRO-3403
> Project: Apache Avro
> Issue Type: Improvement
> Components: build, dependencies, java, tools
> Reporter: Oscar Westra van Holthe - Kind
> Assignee: Oscar Westra van Holthe - Kind
> Priority: Major
> Labels: pull-request-available
> Time Spent: 10m
> Remaining Estimate: 0h
>
> Although JavaCC has been updated recently, there are quite some forks and
> development is quite erratic. The best maintained fork also has no presence
> in Maven Central yet. Worse (IMHO), it's Java only. This limits the use of
> the IDL format to Java and the Avro tools.
> As proposed on the mailling list last January, in the thread [Maintaining the
> IDL in the 21st
> century|https://lists.apache.org/thread/7c99hkkl59l78x5kyf7bd80cnyd1do3j],
> this improvement issue is to migrate the code to ANTLR.
> Related changes:
> # Place the ANTLR grammar in a subdirectory in the toplevel {{share}}
> directory, so it can be reused for other languages than Java (note: the
> Grammar may not contain any actions/code).
> # Ensure the IDL parsing API allows extending the IDL syntax to an {{.avsc}}
> equivalent.
> # Add a new {{java/idl}} module with the new parser. Make it a dependency of
> the {{java/compiler}} module and use it instead of the old parser.
> Bonus: this allows us to (also) create a parser that yields a single protocol
> (at first) or schema (future change).
> # Keep the old parser in the {{java/compiler}} module for backwards
> compatibility, mark it as deprecated and document its removal in a future
> version.
--
This message was sent by Atlassian Jira
(v8.20.1#820001)