binary-compatibility-validator icon indicating copy to clipboard operation
binary-compatibility-validator copied to clipboard

Support to exclude classes / packages by `Regex` pattern

Open mikepenz opened this issue 2 years ago • 12 comments

The pull request introduced a new configuration option ignoredPatterns.

ignoredPatterns takes an array of regex patterns to exclude whole packages and classes based on this pattern. This configuration can be provided alongside the already existing ignoredPackages and ignoredClasses and offers much greater flexibility on ignoring sources from being included in the validation.

Motivation

The current offered APIs require absolute package names and class names, making them very verbose for large projects. Additionally the nonPublicMarkers would be great for these situations, but we cannot attach them to generated sources from plugins, which we have no control over.

Using the regex provides much higher flexibility, and it is possible to for example exclude all packages including /internal/ in their package name.

Or similarly all generated classes by Androids navigation plugin which end in com.company.MyFragmentDirections

mikepenz avatar Feb 24 '23 10:02 mikepenz

Thanks!

There is currently a big rework with help of @aSemy, I'll get back to this PR as soon as the work with the plugin itself is done

qwwdfsad avatar Mar 13 '23 17:03 qwwdfsad

Thank you very much @qwwdfsad for the update. Happy to rebase and resolve conflicts on this after those reworks were done. (in case the PR is still relevant afterwards)

mikepenz avatar Mar 13 '23 17:03 mikepenz

@qwwdfsad can the PR be moved forward?

RingerJK avatar Sep 22 '23 13:09 RingerJK

It probably has to be re-created now given the time since it was created. I was waiting until the big rework happened.

mikepenz avatar Sep 22 '23 13:09 mikepenz