Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Please move away from ANTLR 3 #105

Closed
FabianWolff opened this issue Aug 7, 2018 · 6 comments · Fixed by cvc5/cvc5#9887
Closed

Please move away from ANTLR 3 #105

FabianWolff opened this issue Aug 7, 2018 · 6 comments · Fixed by cvc5/cvc5#9887
Assignees

Comments

@FabianWolff
Copy link

Some time ago, I reported a bug against ANTLR 3 that involved a licensing issue. I was subsequently informed by @timeraider4u that

Antlr3 does not receive updates any more (last commit/release was in 2015) and all development happens now in antlr4, so I guess there will not be any changes regarding the licenses of these files.

I then had to solve the problem by reimplementing the affected functionality of libantlr3c in order to keep libantlr3c (and therefore CVC4, which depends on it) in the Debian archives, but it was an ugly solution meant only as a provisional solution.

Given that libantlr3c is effectively unmaintained and starting to show serious issues that won't get solved upstream, I would recommend the CVC4 project to move away from libantlr3c in the medium-term.

@4tXJ7f
Copy link
Member

4tXJ7f commented Aug 13, 2018

Thanks a lot for bringing this up. We’ve been considering moving away from ANTLR 3 for a while now and this is yet another good reason to do so. Unfortunately we do not have a timeline yet because moving away from ANTLR 3 is a considerable effort. It is, however, on our list of maintenance tasks and we hope to find the resources to address this soon-ish.

@jamesjer
Copy link

jamesjer commented Apr 2, 2019

I am the Fedora maintainer for CVC4. Fedora just retired the antlr3 package, which leaves cvc4 in an unbuildable state. Has there been any movement on this effort? If not, I may have to retire the cvc4 package as well for now, and reintroduce it sometime in the future when it no longer depends on antlr3.

@mpreiner
Copy link
Member

mpreiner commented Apr 3, 2019

Unfortunately, we currently don't have the bandwidth to migrate all ANTLR3 parsers (4 in total) to either ANTLR4 or to a different solution. We are working on it, but this will be a project for the long-term.

@FabianWolff @jamesjer For the meantime, is it an option for you to use the contrib/get-antlr-3.4 script to in the CVC4 repository to build ANTLR-3.4? This script builds a static ANTLR-3.4 library, which will be linked against CVC4.

@FabianWolff
Copy link
Author

@FabianWolff @jamesjer For the meantime, is it an option for you to use the contrib/get-antlr-3.4 script to in the CVC4 repository to build ANTLR-3.4? This script builds a static ANTLR-3.4 library, which will be linked against CVC4.

Thanks for the suggestion; unfortunately, I don't think so. Debian packages must be able to build offline from source code, so downloading anything during the build is not an option. One could in principle repack the CVC4 source tarball to include the ANTLR sources; this is not necessary at the moment because the libantlr3c package is still available in Debian. However, if it ever does get removed (as is the case, apparently, in Fedora right now), then there will have been a good reason for it (i. e., security/stability/licensing issues or something like that), and silently reintroducing ANTLR "through the back door" thus won't be acceptable in my view. I would imagine that the situation in Fedora is quite similar.

I totally understand, though, that you currently don't have the manpower to migrate to ANTLR 4, especially considering how this is a "boring" maintenance task that does not really contribute anything to your research. Just keep in mind that an unmaintained and deprecated dependency will only cause more problems in the future, so the sooner you migrate, the better (but you probably already know this).

@HanielB HanielB transferred this issue from cvc5/cvc5 Feb 11, 2020
ajreynol added a commit to cvc5/cvc5 that referenced this issue Jul 22, 2023
@aniemetz
Copy link
Member

@FabianWolff @jamesjer cvc5 now does not depend on ANTLR anymore.

@jamesjer
Copy link

Thank you for the heads up. That's great to know. I actually took over maintainership of ANTLR3 and kept it in Fedora all this time specifically for CVC4/CVC5. It will be good to let it go.

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 a pull request may close this issue.

6 participants