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

library version inconsistency notice. #1398

Open
kaifeng-h opened this issue Mar 2, 2020 · 0 comments
Open

library version inconsistency notice. #1398

kaifeng-h opened this issue Mar 2, 2020 · 0 comments

Comments

@kaifeng-h
Copy link

Hi. I have implemented a tool to detect library version inconsistencies. Your project have 2 inconsistent libraries.

Take com.thinkaurelius.titan:titan-core for example, this library is declared as version 1.0.1-SNAPSHOT in titan-lucene, 0.9.0-SNAPSHOT in titan-rexster and etc... Such version inconsistencies may cause unnecessary maintenance effort in the long run. For example, if two modules become inter-dependent, library version conflict may happen. It has already become a common issue and hinders development progress. Thus a version harmonization is necessary.

Provided we applied a version harmonization, I calculated the cost it may have to harmonize to all upper versions including an up-to-date one. The cost refers to POM config changes and API invocation changes. Take com.thinkaurelius.titan:titan-core for example, if we harmonize all the library versions into 1.0.1-SNAPSHOT. The concern is, how much should the project code adapt to the newer library version. We list an effort table to quantify the harmonization cost.

The effort table shows the overall harmonization cost on APIs. It seems your project have no API invokes on this library, which could be safely upgrade to 1.0.1-SNAPSHOT

Index Module NA(NAC) NDA(NDAC) NMA(NMAC)
1 titan-lucene 0(0) 0(0) 0(0)
2 titan-hbase-parent/titan-hbase 0(0) 0(0) 0(0)
3 titan-cassandra 0(0) 0(0) 0(0)
4 .. .. .. ..

Also we provided another table to show the potential files that may be affected due to library API change, which could help to spot the concerned API usage and rerun the test cases.

If you are interested, you can have a more complete and detailed report in the attached PDF file.
thinkaurelius__fdse__titan_2020-02-20.pdf

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

1 participant