Compare commits

...

10 Commits

Author SHA256 Message Date
454736aac6 OBS-URL: https://build.opensuse.org/package/show/Java:packages/spotbugs?expand=0&rev=12 2025-05-01 07:47:47 +00:00
413e41301c Accepting request 1264754 from home:fstrba:maven
Fix javadoc generation with javadoc:aggregate

OBS-URL: https://build.opensuse.org/request/show/1264754
OBS-URL: https://build.opensuse.org/package/show/Java:packages/spotbugs?expand=0&rev=11
2025-03-27 21:45:10 +00:00
1f900d909b - Update to v4.9.3
* Added
    + Introduced UselessSuppressionDetector to report the useless
      annotations instead of NoteSuppressedWarnings (#3348)
  * Fixed
    + Do not report US_USELESS_SUPPRESSION_ON_METHOD on synthetic
      methods (#3351)

OBS-URL: https://build.opensuse.org/package/show/Java:packages/spotbugs?expand=0&rev=10
2025-03-15 21:58:02 +00:00
ce39325746 - Update to v4.9.2
* Added
    + Reporting useless @SuppressFBWarnings annotations (#641)
  * Fixed
    + Fixed html bug descriptions for
      AT_STALE_THREAD_WRITE_OF_PRIMITIVE and
      AT_NONATOMIC_64BIT_PRIMITIVE (#3303)
    + Fixed an HSM_HIDING_METHOD false positive when ECJ generates
      a synthetic method for an enum switch (#3305)
    + Fix AT_UNSAFE_RESOURCE_ACCESS_IN_THREAD false negatives,
      detector depending on method order.
    + Fix THROWS_METHOD_THROWS_CLAUSE_THROWABLE reported in a
      method calling MethodHandle.invokeExact due to its
      polymorphic signature (#3309)
    + Fix AT_STALE_THREAD_WRITE_OF_PRIMITIVE false positive in
      inner class (#3310).
    + Fix AT_STALE_THREAD_WRITE_OF_PRIMITIVE false positive for ECJ
      compiled enum switches (#3316)
    + Fix RC_REF_COMPARISON false positive with Lombok With
      annotation (#3319)
    + Avoid calling File.getCanonicalPath twice to improve
      performance (#3325)
    + Fix MC_OVERRIDABLE_METHOD_CALL_IN_CONSTRUCTOR and
      MC_OVERRIDABLE_METHOD_CALL_IN_CLONE false positive when the
      overridable method is outside the class (#3328).
    + Fix NullPointerException thrown from ThrowingExceptions
      detector (#3337).
  * Removed
    + Removed the TLW_TWO_LOCK_NOTIFY, LI_LAZY_INIT_INSTANCE,
      BRSA_BAD_RESULTSET_ACCESS, BC_NULL_INSTANCEOF,

OBS-URL: https://build.opensuse.org/package/show/Java:packages/spotbugs?expand=0&rev=9
2025-03-01 22:18:28 +00:00
75fd5a9215 - Update to v4.9.1
* Added
    + New detector SharedVariableAtomicityDetector for new bug
      types AT_NONATOMIC_OPERATIONS_ON_SHARED_VARIABLE,
      AT_NONATOMIC_64BIT_PRIMITIVE and
      AT_STALE_THREAD_WRITE_OF_PRIMITIVE (See SEI CERT rules
      VNA00-J, VNA02-J and VNA05-J).
    + New detector FindHiddenMethod for bug type HSM_HIDING_METHOD.
      This bug is reported whenever a subclass method hides the
      static method of super class. (See SEI CERT MET07-J).
  * Fixed
    + Fixed the parsing of generics methods in ThrowingExceptions
      (#3267)
    + Accept the 1st parameter of
      java.util.concurrent.CompletableFuture's completeOnTimeout(),
      getNow() and obtrudeValue() functions as nullable (#1001).
    + Fixed the analysis error when FindReturnRef was checking
      instructions corresponding to a CFG branch that was optimized
      away (#3266)
    + Added execute file permission to files in the distribution
      archive (#3274)
    + Fixed a stack overflow in MultipleInstantiationsOfSingletons
      when a singleton initializer makes recursive calls (#3280)
    + Fixed NPE in FindReturnRef on inner class fields (#3283)
    + Fixed NP_NULL_ON_SOME_PATH_FROM_RETURN_VALUE false positive
      when add edu.umd.cs.findbugs.annotations.Nullable (#3243)

OBS-URL: https://build.opensuse.org/package/show/Java:packages/spotbugs?expand=0&rev=8
2025-02-10 01:50:02 +00:00
5af264c904 Accepting request 1238326 from home:urbic:branches:Java:packages
- Specify build and runtime dependencies on
  mvn(net.sf.saxon:Saxon-HE) < 11 to avoid ambiguity with newer
  versions of Saxon.

OBS-URL: https://build.opensuse.org/request/show/1238326
OBS-URL: https://build.opensuse.org/package/show/Java:packages/spotbugs?expand=0&rev=7
2025-01-17 11:28:04 +00:00
0d3bcb5115 Accepting request 1238225 from home:urbic:branches:Java:packages
- Update to v4.9.0
  * Added
    + Updated the SuppressFBWarnings annotation to support finer
      grained bug suppressions (#3102)
    + SimpleDateFormat, DateTimeFormatter, FastDateFormat string
      check for bad combinations of flag formatting (#637)
    + New detector ResourceInMultipleThreadsDetector and introduced
      new bug type:
      ~ AT_UNSAFE_RESOURCE_ACCESS_IN_THREAD is reported in case of
        unsafe resource access in multiple threads.
  * Fixed
    + Do not consider Records as Singletons (#2981)
    + Keep a maximum of 10000 cached analysis entries for plugin's
      analysis engines (#3025)
    + Only report MC_OVERRIDABLE_METHOD_CALL_IN_READ_OBJECT when
      calling own methods (#2957)
    + Check the actual caught exceptions (instead of their common
      type) when analyzing multi-catch blocks (#2968)
    + System property findbugs.refcomp.reportAll is now being used.
      For some new conditions, it will emit an experimental warning
      (#2988)
    + -version flag prints the version to the standard output
      (#2797)
    + Revert the changes from (#2894) to get HTML stylesheets to
      work again (#2969)
    + Fix FP SING_SINGLETON_GETTER_NOT_SYNCHRONIZED report when the
      synchronization is in a called method (#3045)
    + Let BetterCFGBuilder2.isPEI handle dup2 bytecode used by
      Spring AOT (#3059)
    + Detect failure to close RocksDB's ReadOptions (#3069)
    + Fix FP EI_EXPOSE_REP when there are multiple immutable
      assignments (#3023)
    + Fixed false positive
      NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR for Kotlin,
      handle Kotlin's Intrinsics.checkNotNullParameter() (#3094)
    + Fixed some CWE mappings (#3124)
    + Recognize some classes as immutable, fixing EI_EXPOSE and
      MS_EXPOSE FPs (#3137)
    + Do not report UWF_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR for
      fields initialized in method annotated with TestNG's
      @BeforeClass. (#3152)
    + Fixed detector FindReturnRef not finding references exposed
      from nested and inner classes (#2042)
    + Fix call graph, include non-parametric void methods (#3160)
    + Fix multiple reporting of identical bugs messing up
      statistics (#3185)
    + Added missing comma between line number and confidence when
      describing matching and mismatching bugs for tests (#3187)
    + Fixed method matchers with array types (#3203)
    + Fix SARIF report's message property in Exception to meet the
      standard (#3197)
    + Fixed FI_FINALIZER_NULLS_FIELDS FPs for functions called
      finalize() but not with the correct signature. (#3207)
    + Fixed an error in the detection of bridge methods causing
      analysis crashes (#3208)
    + Fixed detector ThrowingExceptions by removing false positive
      reports, such as synthetic methods (lambdas), methods which
      inherited their exception specifications and methods which
      call throwing methods (#2040)
    + Do not report DP_DO_INSIDE_DO_PRIVILEGED,
      DP_CREATE_CLASSLOADER_INSIDE_DO_PRIVILEGED and
      USC_POTENTIAL_SECURITY_CHECK_BASED_ON_UNTRUSTED_SOURCE in
      code targeting Java 17 and above, since it advises the usage
      of deprecated method (#1515).
    + Fixed a RV_RETURN_VALUE_IGNORED_NO_SIDE_EFFECT false positive
      for a builder delegating to another builder (#3235)
  * Cleanup
    + Cleanup thread issue and regex issue in test-harness (#3130)
    + Remove extra blank lines and remove public from interface
      objects as inherently already public (#3131)
    + Fix order of modifiers on properties/methods and ensure
      correct location in file (#3132, #3177)
    + Return objects directly instead of creating more garbage
      collection by defining them (#3133, #3175)
    + Restrict the constructor of abstract classes visibility to
      protected (#3178)
    + Cleanup double initialization and fix comments referring to
      findbugs instead of spotbugs(#3134)
    + Use diamond operator in constructor calls of Collections
      (#3176)
    + Use Collection.isEmpty() or String.isEmpty() to test for
      emptiness (#3180, #3219)
    + Use method references instead of lambdas where possible
      (#3179)
    + Move default clauses to the end of switches (#3222)
    + Remove unnecessary throws declarations (#3220)
    + Use Boolean.parseBoolean() for string-to-boolean conversion.
      (#3217)
    + Rename shadowing fields (#3221)
    + Combine catch blocks with the same body (#3223)
    + Merge conditions of nested ifs (#3231)
    + Use non deprecated 'getDottedClassName' instead of
      'toDottedClassName'(#3251)
    + Use try with resources where possible (#3253)
  * Changed
    + Bump up Java version to 11

OBS-URL: https://build.opensuse.org/request/show/1238225
OBS-URL: https://build.opensuse.org/package/show/Java:packages/spotbugs?expand=0&rev=6
2025-01-16 11:29:12 +00:00
55d0513832 OBS-URL: https://build.opensuse.org/package/show/Java:packages/spotbugs?expand=0&rev=5 2024-10-25 21:42:10 +00:00
4dc08a92f7 Accepting request 1207769 from home:urbic:branches:Java:packages
- Add runtime dependencies on
  mvn(org.apache.logging.log4j:log4j-{api,core,slf4j-impl}) and
  mvn(net.sf.saxon:Saxon-HE:12)

OBS-URL: https://build.opensuse.org/request/show/1207769
OBS-URL: https://build.opensuse.org/package/show/Java:packages/spotbugs?expand=0&rev=4
2024-10-15 14:48:15 +00:00
f849f308a5 OBS-URL: https://build.opensuse.org/package/show/Java:packages/spotbugs?expand=0&rev=3 2024-09-26 08:34:25 +00:00
8 changed files with 408 additions and 184 deletions

View File

@@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:b170892ccab5e135af348fbb6dcc0bad45079720f588875abe6e53a5ed26a52d
size 4582443

View File

@@ -9,7 +9,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>com.github.spotbugs</groupId>
<artifactId>spotbugs</artifactId>
<version>4.8.6</version>
<version>4.9.3</version>
<packaging>pom</packaging>
<name>SpotBugs</name>
<description>SpotBugs: Because it's easy!</description>
@@ -87,37 +87,37 @@
<dependency>
<groupId>org.ow2.asm</groupId>
<artifactId>asm</artifactId>
<version>9.7</version>
<version>9.7.1</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.ow2.asm</groupId>
<artifactId>asm-analysis</artifactId>
<version>9.7</version>
<version>9.7.1</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.ow2.asm</groupId>
<artifactId>asm-commons</artifactId>
<version>9.7</version>
<version>9.7.1</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.ow2.asm</groupId>
<artifactId>asm-tree</artifactId>
<version>9.7</version>
<version>9.7.1</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.ow2.asm</groupId>
<artifactId>asm-util</artifactId>
<version>9.7</version>
<version>9.7.1</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.apache.bcel</groupId>
<artifactId>bcel</artifactId>
<version>6.9.0</version>
<version>6.10.0</version>
<scope>compile</scope>
</dependency>
<dependency>
@@ -161,31 +161,31 @@
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.14.0</version>
<version>3.17.0</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-text</artifactId>
<version>1.10.0</version>
<version>1.13.0</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>2.0.13</version>
<version>2.0.17</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.github.spotbugs</groupId>
<artifactId>spotbugs-annotations</artifactId>
<version>4.8.6</version>
<version>4.9.3</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.11.0</version>
<version>2.12.1</version>
<scope>compile</scope>
</dependency>
<dependency>
@@ -197,13 +197,13 @@
<dependency>
<groupId>net.sf.saxon</groupId>
<artifactId>Saxon-HE</artifactId>
<version>12.4</version>
<version>12.5</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
<version>2.23.1</version>
<version>2.24.3</version>
<scope>runtime</scope>
</dependency>
</dependencies>

3
spotbugs-4.9.3.tar.gz Normal file
View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:156a21f948a807dcc9f702cd851b7af5f169bb9eee2afc171f3d044feb75a85c
size 4636324

View File

@@ -9,7 +9,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>com.github.spotbugs</groupId>
<artifactId>spotbugs-annotations</artifactId>
<version>4.8.6</version>
<version>4.9.3</version>
<name>SpotBugs Annotations</name>
<description>Annotations the SpotBugs tool supports</description>
<url>https://spotbugs.github.io/</url>

View File

@@ -9,7 +9,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>com.github.spotbugs</groupId>
<artifactId>spotbugs-ant</artifactId>
<version>4.8.6</version>
<version>4.9.3</version>
<name>SpotBugs Ant Task</name>
<description>Ant Task to run SpotBugs</description>
<url>https://spotbugs.github.io/</url>
@@ -86,7 +86,7 @@
<dependency>
<groupId>com.github.spotbugs</groupId>
<artifactId>spotbugs</artifactId>
<version>4.8.6</version>
<version>4.9.3</version>
<scope>runtime</scope>
</dependency>
</dependencies>

View File

@@ -1,3 +1,218 @@
-------------------------------------------------------------------
Thu May 1 07:46:31 UTC 2025 - Fridrich Strba <fstrba@suse.com>
- Explicitely state all relevant build requires
-------------------------------------------------------------------
Thu Mar 27 21:37:22 UTC 2025 - Fridrich Strba <fstrba@suse.com>
- Fix javadoc generation with javadoc:aggregate
-------------------------------------------------------------------
Sat Mar 15 21:48:59 UTC 2025 - Anton Shvetz <shvetz.anton@gmail.com>
- Update to v4.9.3
* Added
+ Introduced UselessSuppressionDetector to report the useless
annotations instead of NoteSuppressedWarnings (#3348)
* Fixed
+ Do not report US_USELESS_SUPPRESSION_ON_METHOD on synthetic
methods (#3351)
-------------------------------------------------------------------
Sat Mar 1 22:14:16 UTC 2025 - Anton Shvetz <shvetz.anton@gmail.com>
- Update to v4.9.2
* Added
+ Reporting useless @SuppressFBWarnings annotations (#641)
* Fixed
+ Fixed html bug descriptions for
AT_STALE_THREAD_WRITE_OF_PRIMITIVE and
AT_NONATOMIC_64BIT_PRIMITIVE (#3303)
+ Fixed an HSM_HIDING_METHOD false positive when ECJ generates
a synthetic method for an enum switch (#3305)
+ Fix AT_UNSAFE_RESOURCE_ACCESS_IN_THREAD false negatives,
detector depending on method order.
+ Fix THROWS_METHOD_THROWS_CLAUSE_THROWABLE reported in a
method calling MethodHandle.invokeExact due to its
polymorphic signature (#3309)
+ Fix AT_STALE_THREAD_WRITE_OF_PRIMITIVE false positive in
inner class (#3310).
+ Fix AT_STALE_THREAD_WRITE_OF_PRIMITIVE false positive for ECJ
compiled enum switches (#3316)
+ Fix RC_REF_COMPARISON false positive with Lombok With
annotation (#3319)
+ Avoid calling File.getCanonicalPath twice to improve
performance (#3325)
+ Fix MC_OVERRIDABLE_METHOD_CALL_IN_CONSTRUCTOR and
MC_OVERRIDABLE_METHOD_CALL_IN_CLONE false positive when the
overridable method is outside the class (#3328).
+ Fix NullPointerException thrown from ThrowingExceptions
detector (#3337).
* Removed
+ Removed the TLW_TWO_LOCK_NOTIFY, LI_LAZY_INIT_INSTANCE,
BRSA_BAD_RESULTSET_ACCESS, BC_NULL_INSTANCEOF,
NP_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR and
RCN_REDUNDANT_CHECKED_NULL_COMPARISON deprecated bug
patterns.
-------------------------------------------------------------------
Mon Feb 10 01:42:47 UTC 2025 - Anton Shvetz <shvetz.anton@gmail.com>
- Update to v4.9.1
* Added
+ New detector SharedVariableAtomicityDetector for new bug
types AT_NONATOMIC_OPERATIONS_ON_SHARED_VARIABLE,
AT_NONATOMIC_64BIT_PRIMITIVE and
AT_STALE_THREAD_WRITE_OF_PRIMITIVE (See SEI CERT rules
VNA00-J, VNA02-J and VNA05-J).
+ New detector FindHiddenMethod for bug type HSM_HIDING_METHOD.
This bug is reported whenever a subclass method hides the
static method of super class. (See SEI CERT MET07-J).
* Fixed
+ Fixed the parsing of generics methods in ThrowingExceptions
(#3267)
+ Accept the 1st parameter of
java.util.concurrent.CompletableFuture's completeOnTimeout(),
getNow() and obtrudeValue() functions as nullable (#1001).
+ Fixed the analysis error when FindReturnRef was checking
instructions corresponding to a CFG branch that was optimized
away (#3266)
+ Added execute file permission to files in the distribution
archive (#3274)
+ Fixed a stack overflow in MultipleInstantiationsOfSingletons
when a singleton initializer makes recursive calls (#3280)
+ Fixed NPE in FindReturnRef on inner class fields (#3283)
+ Fixed NP_NULL_ON_SOME_PATH_FROM_RETURN_VALUE false positive
when add edu.umd.cs.findbugs.annotations.Nullable (#3243)
-------------------------------------------------------------------
Thu Jan 16 19:07:52 UTC 2025 - Anton Shvetz <shvetz.anton@gmail.com>
- Specify build and runtime dependencies on
mvn(net.sf.saxon:Saxon-HE) < 11 to avoid ambiguity with newer
versions of Saxon.
-------------------------------------------------------------------
Thu Jan 16 10:36:16 UTC 2025 - Anton Shvetz <shvetz.anton@gmail.com>
- Update to v4.9.0
* Added
+ Updated the SuppressFBWarnings annotation to support finer
grained bug suppressions (#3102)
+ SimpleDateFormat, DateTimeFormatter, FastDateFormat string
check for bad combinations of flag formatting (#637)
+ New detector ResourceInMultipleThreadsDetector and introduced
new bug type:
~ AT_UNSAFE_RESOURCE_ACCESS_IN_THREAD is reported in case of
unsafe resource access in multiple threads.
* Fixed
+ Do not consider Records as Singletons (#2981)
+ Keep a maximum of 10000 cached analysis entries for plugin's
analysis engines (#3025)
+ Only report MC_OVERRIDABLE_METHOD_CALL_IN_READ_OBJECT when
calling own methods (#2957)
+ Check the actual caught exceptions (instead of their common
type) when analyzing multi-catch blocks (#2968)
+ System property findbugs.refcomp.reportAll is now being used.
For some new conditions, it will emit an experimental warning
(#2988)
+ -version flag prints the version to the standard output
(#2797)
+ Revert the changes from (#2894) to get HTML stylesheets to
work again (#2969)
+ Fix FP SING_SINGLETON_GETTER_NOT_SYNCHRONIZED report when the
synchronization is in a called method (#3045)
+ Let BetterCFGBuilder2.isPEI handle dup2 bytecode used by
Spring AOT (#3059)
+ Detect failure to close RocksDB's ReadOptions (#3069)
+ Fix FP EI_EXPOSE_REP when there are multiple immutable
assignments (#3023)
+ Fixed false positive
NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR for Kotlin,
handle Kotlin's Intrinsics.checkNotNullParameter() (#3094)
+ Fixed some CWE mappings (#3124)
+ Recognize some classes as immutable, fixing EI_EXPOSE and
MS_EXPOSE FPs (#3137)
+ Do not report UWF_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR for
fields initialized in method annotated with TestNG's
@BeforeClass. (#3152)
+ Fixed detector FindReturnRef not finding references exposed
from nested and inner classes (#2042)
+ Fix call graph, include non-parametric void methods (#3160)
+ Fix multiple reporting of identical bugs messing up
statistics (#3185)
+ Added missing comma between line number and confidence when
describing matching and mismatching bugs for tests (#3187)
+ Fixed method matchers with array types (#3203)
+ Fix SARIF report's message property in Exception to meet the
standard (#3197)
+ Fixed FI_FINALIZER_NULLS_FIELDS FPs for functions called
finalize() but not with the correct signature. (#3207)
+ Fixed an error in the detection of bridge methods causing
analysis crashes (#3208)
+ Fixed detector ThrowingExceptions by removing false positive
reports, such as synthetic methods (lambdas), methods which
inherited their exception specifications and methods which
call throwing methods (#2040)
+ Do not report DP_DO_INSIDE_DO_PRIVILEGED,
DP_CREATE_CLASSLOADER_INSIDE_DO_PRIVILEGED and
USC_POTENTIAL_SECURITY_CHECK_BASED_ON_UNTRUSTED_SOURCE in
code targeting Java 17 and above, since it advises the usage
of deprecated method (#1515).
+ Fixed a RV_RETURN_VALUE_IGNORED_NO_SIDE_EFFECT false positive
for a builder delegating to another builder (#3235)
* Cleanup
+ Cleanup thread issue and regex issue in test-harness (#3130)
+ Remove extra blank lines and remove public from interface
objects as inherently already public (#3131)
+ Fix order of modifiers on properties/methods and ensure
correct location in file (#3132, #3177)
+ Return objects directly instead of creating more garbage
collection by defining them (#3133, #3175)
+ Restrict the constructor of abstract classes visibility to
protected (#3178)
+ Cleanup double initialization and fix comments referring to
findbugs instead of spotbugs(#3134)
+ Use diamond operator in constructor calls of Collections
(#3176)
+ Use Collection.isEmpty() or String.isEmpty() to test for
emptiness (#3180, #3219)
+ Use method references instead of lambdas where possible
(#3179)
+ Move default clauses to the end of switches (#3222)
+ Remove unnecessary throws declarations (#3220)
+ Use Boolean.parseBoolean() for string-to-boolean conversion.
(#3217)
+ Rename shadowing fields (#3221)
+ Combine catch blocks with the same body (#3223)
+ Merge conditions of nested ifs (#3231)
+ Use non deprecated 'getDottedClassName' instead of
'toDottedClassName'(#3251)
+ Use try with resources where possible (#3253)
* Changed
+ Bump up Java version to 11
-------------------------------------------------------------------
Fri Oct 25 21:39:05 UTC 2024 - Fridrich Strba <fstrba@suse.com>
- Build against saxon10 which is the default saxon in Tumbleweed
and exists in Leap 15.x. It also works just fine without sucking
in new dependencies including circular dependency between saxon
and xmlresolver.
-------------------------------------------------------------------
Mon Oct 14 05:00:57 UTC 2024 - Anton Shvetz <shvetz.anton@gmail.com>
- Add runtime dependencies on
mvn(org.apache.logging.log4j:log4j-{api,core,slf4j-impl}) and
mvn(net.sf.saxon:Saxon-HE:12)
-------------------------------------------------------------------
Thu Sep 26 08:34:21 UTC 2024 - Fridrich Strba <fstrba@suse.com>
- Runtime dependencies are auto-generated
-------------------------------------------------------------------
Wed Jul 3 12:22:53 UTC 2024 - Anton Shvetz <shvetz.anton@gmail.com>

View File

@@ -106,7 +106,7 @@ Specify a project to be analyzed. The project file you specify should be one
that was created using the GUI interface. It will typically end in the
extension C<.fb> or C<.fbp>.
=item B<-pluginList> <I<jar1>[;I<jar2>...]>:
=item B<-pluginList> I<jar1>[;I<jar2>,…]:
Specify list of plugin Jar files to load.
@@ -359,7 +359,7 @@ Redo analysis in provided file.
=over
=item B<-bugCategories> I<cat1>[,I<cat2>...]
=item B<-bugCategories> I<cat1>[,I<cat2>,…]
Only report bugs in given categories.
@@ -377,23 +377,23 @@ Exclude any bugs that match suppression filter loaded from fbp file.
=over
=item B<-visitors> I<v1>[,I<v2>...]
=item B<-visitors> I<v1>[,I<v2>,…]
Run only named visitors.
=item B<-omitVisitors> I<v1>[,I<v2>...]
=item B<-omitVisitors> I<v1>[,I<v2>,…]
Omit named visitors.
=item B<-chooseVisitors> +I<v1>,-I<v2>,...
=item B<-chooseVisitors> +I<v1>,-I<v2>,
Selectively enable/disable detectors.
=item B<-choosePlugins> +I<p1>,-I<p2>,...
=item B<-choosePlugins> +I<p1>,-I<p2>,
Selectively enable/disable plugins.
=item B<-adjustPriority> I<v1>=(B<raise>|B<lower>)[,...]
=item B<-adjustPriority> I<v1>=(B<raise>|B<lower>)[,]
Raise/lower priority of warnings for given visitor(s).

View File

@@ -1,7 +1,7 @@
#
# spec file for package spotbugs
#
# Copyright (c) 2024 SUSE LLC
# Copyright (c) 2025 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -19,7 +19,7 @@
%global desc SpotBugs is the spiritual successor of FindBugs, carrying on from the point\
where it left off with support of its community.
Name: spotbugs
Version: 4.8.6
Version: 4.9.3
Release: 0
Summary: A tool for static analysis to look for bugs in Java code
License: LGPL-2.1-only
@@ -35,13 +35,16 @@ Patch0: 00-dont-use-manifest-classpath.patch
BuildRequires: ImageMagick
BuildRequires: fdupes
BuildRequires: maven-local
BuildRequires: update-desktop-files
BuildRequires: mvn(com.google.code.findbugs:jsr305)
BuildRequires: mvn(com.google.code.gson:gson)
BuildRequires: mvn(com.google.code.maven-replacer-plugin:replacer)
BuildRequires: mvn(jaxen:jaxen)
BuildRequires: mvn(net.jcip:jcip-annotations)
BuildRequires: mvn(net.sf.saxon:Saxon-HE:12)
BuildRequires: mvn(net.sf.saxon:Saxon-HE) < 11
BuildRequires: mvn(org.apache.ant:ant)
BuildRequires: mvn(org.apache.bcel:bcel)
BuildRequires: mvn(org.apache.commons:commons-lang3)
BuildRequires: mvn(org.apache.commons:commons-text)
BuildRequires: mvn(org.apache.logging.log4j:log4j-api)
BuildRequires: mvn(org.apache.logging.log4j:log4j-core)
@@ -49,9 +52,17 @@ BuildRequires: mvn(org.apache.logging.log4j:log4j-slf4j-impl)
BuildRequires: mvn(org.codehaus.mojo:build-helper-maven-plugin)
BuildRequires: mvn(org.codehaus.mojo:properties-maven-plugin)
BuildRequires: mvn(org.dom4j:dom4j)
BuildRequires: update-desktop-files
BuildRequires: mvn(org.ow2.asm:asm)
BuildRequires: mvn(org.ow2.asm:asm-analysis)
BuildRequires: mvn(org.ow2.asm:asm-commons)
BuildRequires: mvn(org.ow2.asm:asm-tree)
BuildRequires: mvn(org.ow2.asm:asm-util)
BuildRequires: mvn(org.slf4j:slf4j-api)
Requires: javapackages-tools
Requires: mvn(net.sf.saxon:Saxon-HE:12)
Requires: mvn(net.sf.saxon:Saxon-HE) < 11
Requires: mvn(org.apache.logging.log4j:log4j-api)
Requires: mvn(org.apache.logging.log4j:log4j-core)
Requires: mvn(org.apache.logging.log4j:log4j-slf4j-impl)
Requires(post): hicolor-icon-theme
Requires(post): update-desktop-files
Requires(postun): hicolor-icon-theme
@@ -102,173 +113,174 @@ sed -i -e 's#@SPOTBUGS_HOME@#%{_datadir}/%{name}#' %{name}/etc/script.properties
cat >pom.xml <<__POM__
<project
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>
<modelVersion>4.0.0</modelVersion>
<groupId>com.github.%{name}</groupId>
<artifactId>%{name}-parent</artifactId>
<version>%{version}</version>
<packaging>pom</packaging>
<modules>
<module>%{name}</module>
<module>%{name}-annotations</module>
<module>%{name}-ant</module>
</modules>
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>
<modelVersion>4.0.0</modelVersion>
<groupId>com.github.%{name}</groupId>
<artifactId>%{name}-parent</artifactId>
<version>%{version}</version>
<packaging>pom</packaging>
<modules>
<module>%{name}</module>
<module>%{name}-annotations</module>
<module>%{name}-ant</module>
</modules>
</project>
__POM__
%pom_add_plugin org.apache.maven.plugins:maven-jar-plugin %{name} \
'<configuration>
<archive>
<manifestEntries>
<Automatic-Module-Name>com.github.spotbugs.spotbugs</Automatic-Module-Name>
<Main-Class>edu.umd.cs.findbugs.LaunchAppropriateUI</Main-Class>
<Bundle-Version>%{version}</Bundle-Version>
</manifestEntries>
</archive>
<archive>
<manifestEntries>
<Automatic-Module-Name>com.github.spotbugs.spotbugs</Automatic-Module-Name>
<Main-Class>edu.umd.cs.findbugs.LaunchAppropriateUI</Main-Class>
<Bundle-Version>%{version}</Bundle-Version>
</manifestEntries>
</archive>
</configuration>'
%pom_add_plugin org.codehaus.mojo:build-helper-maven-plugin %{name} \
'<executions>
<execution>
<id>add-source</id>
<phase>generate-sources</phase>
<goals>
<goal>add-source</goal>
</goals>
<configuration>
<sources>
<source>src/gui/main</source>
</sources>
</configuration>
</execution>
<execution>
<id>add-resource</id>
<phase>generate-sources</phase>
<goals>
<goal>add-resource</goal>
</goals>
<configuration>
<resources>
<resource>
<directory>src/main/java</directory>
<targetPath/>
<includes>
<include>**/*.properties</include>
<include>**/*.db</include>
</includes>
</resource>
<resource>
<directory>src/gui/main</directory>
<targetPath/>
<includes>
<include>**/*.png</include>
<include>**/*.html</include>
</includes>
</resource>
<resource>
<directory>src/xsl</directory>
<targetPath/>
<includes>
<include>*.xsl</include>
</includes>
</resource>
<resource>
<directory>etc</directory>
<targetPath/>
<includes>
<include>*.xml</include>
<include>*.xsd</include>
<include>*.json</include>
<include>*.txt</include>
</includes>
<excludes>
<exclude>checkstyle.xml</exclude>
</excludes>
</resource>
</resources>
</configuration>
</execution>
<execution>
<id>add-source</id>
<phase>generate-sources</phase>
<goals>
<goal>add-source</goal>
</goals>
<configuration>
<sources>
<source>src/gui/main</source>
</sources>
</configuration>
</execution>
<execution>
<id>add-resource</id>
<phase>generate-sources</phase>
<goals>
<goal>add-resource</goal>
</goals>
<configuration>
<resources>
<resource>
<directory>src/main/java</directory>
<targetPath/>
<includes>
<include>**/*.properties</include>
<include>**/*.db</include>
</includes>
</resource>
<resource>
<directory>src/gui/main</directory>
<targetPath/>
<includes>
<include>**/*.png</include>
<include>**/*.html</include>
</includes>
</resource>
<resource>
<directory>src/xsl</directory>
<targetPath/>
<includes>
<include>*.xsl</include>
</includes>
</resource>
<resource>
<directory>etc</directory>
<targetPath/>
<includes>
<include>*.xml</include>
<include>*.xsd</include>
<include>*.json</include>
<include>*.txt</include>
</includes>
<excludes>
<exclude>checkstyle.xml</exclude>
</excludes>
</resource>
</resources>
</configuration>
</execution>
</executions>'
%pom_add_plugin org.codehaus.mojo:properties-maven-plugin %{name} \
'<executions>
<execution>
<phase>initialize</phase>
<goals><goal>read-project-properties</goal></goals>
<configuration>
<files>
<file>etc/script.properties</file>
</files>
</configuration>
</execution>
<execution>
<phase>initialize</phase>
<goals><goal>read-project-properties</goal></goals>
<configuration>
<files>
<file>etc/script.properties</file>
</files>
</configuration>
</execution>
</executions>'
%pom_add_plugin com.google.code.maven-replacer-plugin:replacer %{name} \
'<executions>
<execution>
<phase>prepare-package</phase>
<goals><goal>replace</goal></goals>
<configuration>
<basedir>${basedir}</basedir>
<includes>src/scripts/standard/*</includes>
<regex>false</regex>
<replacements>
<replacement>
<token>@GET_FBHOME@</token>
<value>${script.get.fbhome}</value>
</replacement>
<replacement>
<token>@SET_DEFAULT_JAVA@</token>
<value>${script.set.default.java}</value>
</replacement>
<replacement>
<token>@WRAP_JAVA@</token>
<value>${script.wrap.java}</value>
</replacement>
<replacement>
<token>@DEFINE_ESCAPE_ARG@</token>
<value>${script.define.escape_arg}</value>
</replacement>
</replacements>
</configuration>
</execution>
<execution>
<phase>prepare-package</phase>
<goals><goal>replace</goal></goals>
<configuration>
<basedir>${basedir}</basedir>
<includes>src/scripts/standard/*</includes>
<regex>false</regex>
<replacements>
<replacement>
<token>@GET_FBHOME@</token>
<value>${script.get.fbhome}</value>
</replacement>
<replacement>
<token>@SET_DEFAULT_JAVA@</token>
<value>${script.set.default.java}</value>
</replacement>
<replacement>
<token>@WRAP_JAVA@</token>
<value>${script.wrap.java}</value>
</replacement>
<replacement>
<token>@DEFINE_ESCAPE_ARG@</token>
<value>${script.define.escape_arg}</value>
</replacement>
</replacements>
</configuration>
</execution>
</executions>'
%pom_add_plugin org.apache.maven.plugins:maven-jar-plugin %{name}-annotations \
'<configuration>
<archive>
<manifestEntries>
<Automatic-Module-Name>com.github.spotbugs.annotations</Automatic-Module-Name>
<Bundle-ManifestVersion>2</Bundle-ManifestVersion>
<Bundle-Name>%{name}-annotations</Bundle-Name>
<Bundle-RequiredExecutionEnvironment>J2SE-1.5</Bundle-RequiredExecutionEnvironment>
<Bundle-SymbolicName>%{name}-annotations</Bundle-SymbolicName>
<Bundle-Version>%{version}</Bundle-Version>
<Export-Package>edu.umd.cs.findbugs.annotations</Export-Package>
</manifestEntries>
</archive>
<archive>
<manifestEntries>
<Automatic-Module-Name>com.github.spotbugs.annotations</Automatic-Module-Name>
<Bundle-ManifestVersion>2</Bundle-ManifestVersion>
<Bundle-Name>%{name}-annotations</Bundle-Name>
<Bundle-RequiredExecutionEnvironment>J2SE-1.5</Bundle-RequiredExecutionEnvironment>
<Bundle-SymbolicName>%{name}-annotations</Bundle-SymbolicName>
<Bundle-Version>%{version}</Bundle-Version>
<Export-Package>edu.umd.cs.findbugs.annotations</Export-Package>
</manifestEntries>
</archive>
</configuration>'
%pom_add_plugin org.apache.maven.plugins:maven-jar-plugin %{name}-ant \
'<configuration>
<archive>
<manifestEntries>
<Automatic-Module-Name>com.github.spotbugs.ant</Automatic-Module-Name>
</manifestEntries>
</archive>
<archive>
<manifestEntries>
<Automatic-Module-Name>com.github.spotbugs.ant</Automatic-Module-Name>
</manifestEntries>
</archive>
</configuration>'
%build
%{mvn_build} -f -- \
-Dproject.build.outputTimestamp=$(date -u -d @${SOURCE_DATE_EPOCH:-$(date +%%s)} +%%Y-%%m-%%dT%%H:%%M:%%SZ)
-Dproject.build.outputTimestamp=$(date -u -d @${SOURCE_DATE_EPOCH:-$(date +%%s)} +%%Y-%%m-%%dT%%H:%%M:%%SZ) \
-Dmaven.compiler.{source,target}=9 -DlegacyMode=true -Dverbose=true
pod2man --release='%{name} %{version}' --section=1 --center='User Commands' --quotes=none %{SOURCE5} %{name}.1
pod2man --release='%{name} %{version}' --section=1 --center='User Commands' --quotes=none -u %{SOURCE5} %{name}.1
for s in 16 22 32 44 48 64 128 150 200; do
convert -resize $s %{name}/src/doc/%{name}.png %{name}-$s.png
convert -resize $s %{name}/src/doc/%{name}.png %{name}-$s.png
done
%install
@@ -296,21 +308,18 @@ install -dm0755 %{buildroot}%{_datadir}/%{name}
ln -s %{_javadir}/%{name} %{buildroot}%{_datadir}/%{name}/lib
ln -s $(xmvn-resolve \
org.apache.bcel:bcel \
org.apache.commons:commons-{lang3,text} \
org.dom4j:dom4j \
com.google.code.gson:gson \
org.apache.httpcomponents.core5:httpcore5{,-h2} \
org.apache.httpcomponents.client5:httpclient5 \
jaxen:jaxen \
org.ow2.asm:asm{,-{commons,util,analysis,tree}} \
net.jcip:jcip-annotations \
com.google.code.findbugs:jsr305 \
org.apache.logging.log4j:log4j-{api,core,slf4j-impl} \
org.slf4j:slf4j-api \
org.xmlresolver:xmlresolver{,::data:} \
net.sf.saxon:Saxon-HE:12 \
) %{buildroot}%{_javadir}/%{name}/
org.apache.bcel:bcel \
org.apache.commons:commons-{lang3,text} \
org.dom4j:dom4j \
com.google.code.gson:gson \
jaxen:jaxen \
org.ow2.asm:asm{,-{commons,util,analysis,tree}} \
net.jcip:jcip-annotations \
com.google.code.findbugs:jsr305 \
org.apache.logging.log4j:log4j-{api,core,slf4j-impl} \
org.slf4j:slf4j-api \
net.sf.saxon:Saxon-HE \
) %{buildroot}%{_javadir}/%{name}/
# Scripts
install -dm0755 %{buildroot}%{_bindir} %{buildroot}%{_datadir}/%{name}/bin
@@ -319,8 +328,8 @@ ln -s %{_datadir}/%{name}/bin/{%{name},fb} %{buildroot}%{_bindir}
# Icons and desktop file
for s in 16 22 32 44 48 64 128 150 200; do
install -dm0755 %{buildroot}%{_datadir}/icons/hicolor/${s}x${s}/apps
install -Dm0644 %{name}-$s.png %{buildroot}%{_datadir}/icons/hicolor/${s}x${s}/apps/%{name}.png
install -dm0755 %{buildroot}%{_datadir}/icons/hicolor/${s}x${s}/apps
install -Dm0644 %{name}-$s.png %{buildroot}%{_datadir}/icons/hicolor/${s}x${s}/apps/%{name}.png
done
install -dm0755 %{buildroot}%{_datadir}/applications