java-sdk/spotbugs-exclusions.xml

61 lines
2.6 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<FindBugsFilter
xmlns="https://github.com/spotbugs/filter/3.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="https://github.com/spotbugs/filter/3.0.0 https://raw.githubusercontent.com/spotbugs/spotbugs/3.1.0/spotbugs/etc/findbugsfilter.xsd">
<!-- I'm reasonably confident that the singleton pattern isn't exposing internal representation -->
<And>
<Class name="dev.openfeature.sdk.OpenFeatureAPI"/>
<Bug pattern="MS_EXPOSE_REP"/>
</And>
<!-- evaluation context and hooks are mutable if mutable impl is used -->
<And>
<Class name="dev.openfeature.sdk.OpenFeatureClient"/>
<Bug pattern="EI_EXPOSE_REP"/>
</And>
<And>
<Class name="dev.openfeature.sdk.OpenFeatureClient"/>
<Bug pattern="EI_EXPOSE_REP2"/>
</And>
<And>
<Class name="dev.openfeature.sdk.OpenFeatureAPI"/>
<Bug pattern="EI_EXPOSE_REP"/>
</And>
<And>
<Class name="dev.openfeature.sdk.OpenFeatureAPI"/>
<Bug pattern="EI_EXPOSE_REP2"/>
</And>
<And>
Added in spotbugs 4.8.0 - EventProvider shares a name with something from the standard lib (confusing), but change would be breaking
<Class name="dev.openfeature.sdk.EventProvider"/>
<Bug pattern="PI_DO_NOT_REUSE_PUBLIC_IDENTIFIERS_CLASS_NAMES"/>
</And>
<And>
Added in spotbugs 4.8.0 - Metadata shares a name with something from the standard lib (confusing), but change would be breaking
<Class name="dev.openfeature.sdk.Metadata"/>
<Bug pattern="PI_DO_NOT_REUSE_PUBLIC_IDENTIFIERS_CLASS_NAMES"/>
</And>
<And>
Added in spotbugs 4.8.0 - Reason shares a name with something from the standard lib (confusing), but change would be breaking
<Class name="dev.openfeature.sdk.Reason"/>
<Bug pattern="PI_DO_NOT_REUSE_PUBLIC_IDENTIFIERS_CLASS_NAMES"/>
</And>
<And>
Added in spotbugs 4.8.0 - FlagValueType.STRING shares a name with something from the standard lib (confusing), but change would be breaking
<Class name="dev.openfeature.sdk.FlagValueType"/>
<Bug pattern="PI_DO_NOT_REUSE_PUBLIC_IDENTIFIERS_FIELD_NAMES"/>
</And>
<!-- Test class that should be excluded -->
<Match>
<Class name="dev.openfeature.sdk.DoSomethingProvider"/>
</Match>
<!-- All bugs in test classes, except for JUnit-specific bugs -->
<Match>
<Class name="~.*\.*Test" />
<Not>
<Bug code="IJU" />
</Not>
</Match>
</FindBugsFilter>