-
-
Notifications
You must be signed in to change notification settings - Fork 1.4k
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
nonPublicPartOfAPI
for MyTokenizer
reported by revapi
#4613
Comments
Makes sense - if I would prefer if a lot more of jackson-databind was private. Making so many methods protected has consequences. It requires that a lot of other code needs to be public or protected. In this case, it could be viewed as breaking binary compatibility but I think the MyTokenizer should be made private or left as package private and the API methods that take MyTokenizer inputs could be changed to have StringTokenizer as the param type instead. MyTokenizer extends StringTokenizer. |
Ok. Here's my perspective: I think these kinds of items are almost waste of time. I see rather modest benefits from possible changes; moderate chance of regression; and a high chance of bike shedding. As a result I have no interest in changes for 2.x BUT if others are more interested in making changes, am perfectly fine with changes to upcoming 3.0 (branch EDIT: changed my mind, see below. |
Ok. So, change of But I decided I'll change |
I'm using revapi, to check I respect semantic versioning in my project.
But it also checks some code smell about API.
When building my project, it report something wrong with jackson (which is one of my dependencies)
Report :
nonPublicPartOfAPI
is described here.I copy/paste the
exampleUseChainInNewApi
here because this is the most important part to understand the issue :Solution ?
I think
MyTokenizer
should be protected instead of package ?(issue found with 2.15.3 and also tested with 2.17.1)
The text was updated successfully, but these errors were encountered: