glassfish icon indicating copy to clipboard operation
glassfish copied to clipboard

Upgrade antlr to version 4.x

Open m0mus opened this issue 7 years ago • 24 comments

m0mus avatar Nov 28 '18 21:11 m0mus

We got a special exemption to allow us to use Antlr 2.x for Eclipse GlassFish 5.1, but we need to upgrade to Antlr 3.x or newer for the subsequent release. Antlr is used by the old EJB CMP support.

bshannon avatar Nov 29 '18 22:11 bshannon

Hello, I can see that this ticket was flagged 'help wanted' last November, let me know if I can help on this. BR

oasuncion avatar Feb 24 '19 14:02 oasuncion

As far as I know, no one is working on this, so yes, we still need help. Thanks!

bshannon avatar Feb 25 '19 20:02 bshannon

Ok, in this case I will have a look. I will try to update to the last antlr available version (4.7.2), identify and update the impacted areas and perform some non-regression testings. Any insight is appreciated (I am new to GlassFish and Antlr). BR

oasuncion avatar Feb 26 '19 09:02 oasuncion

Hi, I did a test, upgrading the antlr dependency to 4.7.2. I could update the grammar files taking into account the new syntax for parser/lexer definitions in Antlr 4, this part is fine. The problem I am facing now is related to the Java code written in these files, intended to be part of the generated code. Changes between Antlr 2.x and 4.x are huge, most of this code doesn't compile anymore and it is often hard for me to see how to properly upgrade it as I am missing the initial intend of the code. It would be better to have this ticket handled by someone with a knowledge of the initial work and of Antlr 4, so he may have a better idea of which part of code is not relevant anymore, which is still relevant, and in this case how to upgrade it.

oasuncion avatar Jun 02 '19 18:06 oasuncion

If only we had such a person!

All the people who did this work initially are gone. We no longer have anyone who has a deep understanding of this code. Someone is going to need to learn enough about this code to understand how to change it.

bshannon avatar Jun 03 '19 23:06 bshannon

Most of the antlr usage is in old cmp code. Do we still want that code? Is there anybody still using it?

smillidge avatar Jun 04 '19 06:06 smillidge

It's still required so that we have a complete implementation of all required and optional Java EE / Jakarta EE APIs.

bshannon avatar Jun 04 '19 16:06 bshannon

This issue has been marked as inactive and old and will be closed in 7 days if there is no further activity. If you want the issue to remain open please add a comment

github-actions[bot] avatar Jun 04 '20 00:06 github-actions[bot]

It's still at 2x: https://github.com/eclipse-ee4j/glassfish/blob/e0a2a1f1fb67178d17b336aca2683706ad56d889/nucleus/parent/pom.xml#L144

pzygielo avatar Jun 09 '20 14:06 pzygielo

We probably want to make sure CMP gets actually pruned/removed instead of just made optional.

arjantijms avatar Jun 09 '20 15:06 arjantijms

This issue has been marked as inactive and old and will be closed in 7 days if there is no further activity. If you want the issue to remain open please add a comment

github-actions[bot] avatar Jun 10 '21 01:06 github-actions[bot]

It's still at 2x: https://github.com/eclipse-ee4j/glassfish/blob/4bb0183eb68f1dea570ad46ebe3e651a2bb6c0de/nucleus/parent/pom.xml#L143

pzygielo avatar Jun 10 '21 06:06 pzygielo

This issue has been marked as inactive and old and will be closed in 7 days if there is no further activity. If you want the issue to remain open please add a comment

github-actions[bot] avatar Aug 23 '22 02:08 github-actions[bot]

It's still at 2x: https://github.com/eclipse-ee4j/glassfish/blob/877da9d05c4f2a0c90b3c243832b528c4ccefc28/nucleus/parent/pom.xml#L142

pzygielo avatar Aug 23 '22 05:08 pzygielo

Following EE 10 we may want to finally prune this?

arjantijms avatar Aug 25 '22 08:08 arjantijms