siom79 / japicmp

Comparison of two versions of a jar archive
https://siom79.github.io/japicmp
Apache License 2.0
708 stars 107 forks source link

have some sort of "warn" level #374

Open hgschmie opened 8 months ago

hgschmie commented 8 months ago

We are shipping new features annotated with specific annotations (@Alpha and @Beta). I added those as excludes, so adding a new feature does not count e.g. against semantic versioning (I can ship a new feature annotated as @Beta and still only increase patch level).

It would be nice to have those reported as "warn" (IAW reported but not breaking the build). While we are fine with shipping patches with alpha and beta-quality features, getting a heads up that when we turn the beta off, this might break compatibility (especially backwards compatibility) would be a good thing.

Is there a way to define some excludes as "warn but not fail". We have other includes where we don't want warning or excluding at all. I can define includes and excludes but there does not seem to be a way to define a "third" category.

siom79 commented 7 months ago

Currently there is no such feature.

But I think it would be not that hard to implement. If the exclude-Tag would be extended by an attribute that indicates only "warning", the IncompatibleErrorOutput class would have to be extended around this line to check if the corresponding element was excluded with warning only.