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

Consider switching from clirr to something else, like japicmp #9

Open
Flowdalic opened this issue Oct 30, 2017 · 3 comments
Open

Consider switching from clirr to something else, like japicmp #9

Flowdalic opened this issue Oct 30, 2017 · 3 comments

Comments

@Flowdalic
Copy link
Contributor

Flowdalic commented Oct 30, 2017

I ♥ clirr-gradle-plugin, especially since it implemented the nice heuristic I asked for, but clirr doesn't seem to be actively developed any more.

How about switching to an alternative? I did some research, and so far, candidates, with recent commit activity, are

On a first look, japicmp looks promising.

I know that https://github.com/melix/japicmp-gradle-plugin exists, but as far as I can tell, it does not follow the nice "convention over configuration" philosophy that clirr-gradle-plugin lives. That is with japicmp-gradle-plugin, I'd have to configure a check for every jar, whereas clirr-gradle-plugin, it is just a matter of applying the plugin.

@aalmiray
Copy link
Owner

Yes, Clirr is pretty much unsupported software. I even had to patch it's BCEL dependency with a fork from Google instead of the official Apache because version 6.0 was not released at the time. It looks like version 6.1 is finally out so I may need to repackage the plugin once more.

AFAIK japicmp works at the source level, just like jdiff does. Clirr works at the bytecode level.
japi-compliance-checker looks to be a standalone binary that targets specific platforms. It wojld be a nightmare to setup on CI.

@Flowdalic
Copy link
Contributor Author

AFAIK japicmp works at the source level, just like jdiff does.

Not sure, it seems to take two jar files as input.

@aalmiray
Copy link
Owner

I see it now, my mistake, I thought japicmp was source based for some reason. It turns out @melix wrote a gradle plugin for it https://github.com/melix/japicmp-gradle-plugin

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

No branches or pull requests

2 participants