SpotBugs is FindBugs' successor. A tool for static analysis to look for bugs in Java code.

Overview

SpotBugs

Build Status Documentation Status Coverage Status Maven Central Javadocs

SpotBugs is the spiritual successor of FindBugs, carrying on from the point where it left off with support of its community.

SpotBugs is licensed under the GNU LESSER GENERAL PUBLIC LICENSE.

More information at the official website. A lot of things can still be found at the old FindBugs website.

Build

SpotBugs is built using Gradle. The recommended way to obtain it is to simply run the gradlew (or gradlew.bat) wrapper, which will automatically download and run the correct version as needed (using the settings in gradle/wrapper/gradle-wrapper.properties).

To see a list of build options, run gradle tasks (or gradlew tasks). The build task will perform a full build and test.

To build the SpotBugs plugin for Eclipse, you'll need to create the file eclipsePlugin/local.properties, containing a property eclipseRoot.dir that points to an Eclipse installation's root directory (see .travis.yml for an example), then run the build. To prepare Eclipse environment only, run ./gradlew eclipse. See also detailed steps.

Using SpotBugs

SpotBugs can be used standalone and through several integrations, including:

Questions?

You can contact us using our general purpose mailing list.

Comments
  • Release SpotBugs 3.1.0

    Release SpotBugs 3.1.0

    Finally SpotBugs is ready to be released. However this might be unstable because we changed build process drastically and this is the first release from new community without enough automated test.

    So it would be better to release release candidate version first, to ask major users to have a try. This is my opinion, could you tell me yours?

    TODO

    • [x] Ask Sonatype to let us deploy artifacts to Maven central
    • [x] Update build.gradle to enable uploadArchives goal
    • [x] Prepare changelog for 3.1.0 (#117)
    • [x] create and check instructions to use spotbugs with existing maven and gradle plugins
    • [x] Close all issues which belongs to 3.1.0 milestone
    • [x] Release 3.1.0-rc4 to Maven central
    • [x] Release 3.1.0-rc4 to Eclipse plugin update site
    • [x] Announce 3.1.0-rc4 release to [email protected]
    • [x] Test released RC version with several users
      • [x] fb-contrib
      • [x] find-sec-bugs
      • [x] findbugs-slf4j
      • [x] Findbugs Gradle plugin
      • [x] [Findbugs Maven plugin](com.github.hazendaz.spotbugs:spotbugs-maven-plugin , see #8 )
      • [x] Test update of FindBugs plugin installed on Eclipse Neon to SpotBugs plugin (see #209 )
      • [x] Test installation of SpotBugs plugin into Eclipse Oxygen via https://spotbugs.github.io/eclipse-candidate/ update site
      • [x] Test command line scripts execution
      • [x] TBU
    • [x] Release more release candidate versions if necessary
    • [x] Release 3.1.0 to Maven central
    • [x] Release 3.1.0 to Eclipse plugin update site
    help wanted question 
    opened by KengoTODA 48
  • try with resources with Java 11 triggers RCN warnings

    try with resources with Java 11 triggers RCN warnings

    Tested with spotBugs 3.1.7. The issue doesn't happen with Java 10.

    Example:

    RCN | Nullcheck of fc at line 629 of value previously dereferenced in org.apache.kafka.common.utils.Utils.readFileAsString(String, Charset)

    public static String readFileAsString(String path, Charset charset) throws IOException {
      try (FileChannel fc = FileChannel.open(Paths.get(path))) {
        MappedByteBuffer bb = fc.map(FileChannel.MapMode.READ_ONLY, 0, fc.size()); // line 629
        return StandardCharsets.UTF_8.decode(bb).toString();
      }
    }
    
    bug false positive Java-11 
    opened by ijuma 33
  • Gradle-daemon: Trying to add already registered factory fills stdout

    Gradle-daemon: Trying to add already registered factory fills stdout

    When using gradle daemon i constantly get a lot of output for subsequent runs after the first run. Is daemon caching clashing with spotbugs logging? Seems to happens when adding spotbugs plugins I have findsecbugs plugin and one i have written myself

    Trying to add already registered factory: IwSlf4jLoggers, Plugin:uk.co.ideaworks.spotbugs.spotbugs-plugin Trying to add already registered factory: PredictableRandomDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: ServletEndpointDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: CookieReadDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: CookieFlagsDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: PathTraversalDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: CommandInjectionDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: WeakFilenameUtilsMethodDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: WeakTrustManagerDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: JaxWsEndpointDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: JaxRsEndpointDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: TapestryEndpointDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: WicketEndpointDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: WeakMessageDigestDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: WeakTLSDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: CustomMessageDigestDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: FileUploadFilenameDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: ReDosDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: XxeDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: TransformerFactoryDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: XmlStreamReaderDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: XPathInjectionDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: Struts1EndpointDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: Struts2EndpointDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: SpringMvcEndpointDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: SpringCsrfProtectionDisabledDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: SpringCsrfUnrestrictedRequestMappingDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: CustomInjectionDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: SqlInjectionDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: AndroidSqlInjectionDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: BadHexadecimalConversionDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: HazelcastSymmetricEncryptionDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: NullCipherDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: UnencryptedSocketDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: UnencryptedServerSocketDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: DesUsageDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: TDesUsageDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: RsaNoPaddingDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: ConstantPasswordDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: GoogleApiKeyDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: HardcodePasswordInMapDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: IntuitiveHardcodePasswordDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: HardcodedPasswordEqualsDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: HashUnsafeEqualsDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: KotlinHardcodedPasswordEqualsDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: StrutsValidatorFormDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: XSSRequestWrapperDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: InsufficientKeySizeBlowfishDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: InsufficientKeySizeRsaDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: UnvalidatedRedirectDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: XssJspDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: XssServletDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: JspIncludeDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: JspSpringEvalDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: JstlOutDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: XslTransformJspDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: StdXmlTransformDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: XmlDecoderDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: StaticIvDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: CipherWithNoIntegrityDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: EsapiEncryptorDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: ScriptInjectionDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: OgnlInjectionDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: SpelViewDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: HttpResponseSplittingDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: CrlfLogInjectionDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: ExternalConfigurationControlDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: ExternalFileAccessDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: BroadcastDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: WorldWritableDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: GeolocationDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: WebViewJavascriptEnabledDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: WebViewJavascriptInterfaceDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: ObjectDeserializationDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: UnsafeJacksonDeserializationDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: DeserializationGadgetDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: TrustBoundaryViolationAttributeDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: TrustBoundaryViolationValueDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: PlayUnvalidatedRedirectDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: SslDisablerDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: ScalaSensitiveDataExposureDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: SSRFDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: XssMvcApiDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: XssTwirlDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: VelocityDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: FreemarkerDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: LdapInjectionDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: AnonymousLdapDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: LdapEntryPoisoningDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: PermissiveCORSDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: PersistentCookieDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: UrlRewritingDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: InsecureSmtpSslDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: AwsQueryInjectionDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: BeanInjectionDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: FileDisclosureDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: FormatStringManipulationDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: HttpParameterPollutionDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: SmtpHeaderInjectionDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: SpringUnvalidatedRedirectDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: PotentialValueDetector, Plugin:com.h3xstream.findsecbugs Trying to add already registered factory: ErrorMessageExposureDetector, Plugin:com.h3xstream.findsecbugs


    Gradle 5.0

    Build time: 2018-11-26 11:48:43 UTC Revision: 7fc6e5abf2fc5fe0824aec8a0f5462664dbcd987

    Kotlin DSL: 1.0.4 Kotlin: 1.3.10 Groovy: 2.5.4 Ant: Apache Ant(TM) version 1.9.13 compiled on July 10 2018 JVM: 1.8.0_191 (Oracle Corporation 25.191-b12) OS: Linux 4.15.0-39-generic amd64

    Spotbugs Version: 3.1.8/3.1.9 Spotbugs Gradle Plugin Version: 1.6.5

    need info 
    opened by dellgreen 25
  • Compatibility with (and update for) existing FindBugs Eclipse plugin

    Compatibility with (and update for) existing FindBugs Eclipse plugin

    I just stumbled over the fact that the edu.umd.cs.findbugs.plugin.eclipse.findbugsPlugins extension point got renamed to com.github.spotbugs.plugin.eclipse (interestingly, while leaving the <findbugsPlugin> element name unchanged).

    I hence wonder what compatibility guarantees towards existing FindBugs plugins are given by SpotBugs? Maybe we can use this issue to discuss/document this.

    opened by sewe 24
  • False positive for THROWS_METHOD_THROWS_CLAUSE_THROWABLE

    False positive for THROWS_METHOD_THROWS_CLAUSE_THROWABLE

    Hi,

    Updating to 4.7.0 ( https://github.com/alexpdp7/zqxjkcrud/pull/315 ) is causing the following warning for me:

    [ERROR] Medium: Method lists Throwable in its throws clause. [net.pdp7.zqxjkcrud.dao.CatalogRepository] At CatalogRepository.java:[line 23] THROWS_METHOD_THROWS_CLAUSE_THROWABLE
    

    But the line it's pointing to doesn't make sense?

    https://github.com/alexpdp7/zqxjkcrud/blob/c247e3be1daf02dce1340eee436889b7c2fd1786/src/main/java/net/pdp7/zqxjkcrud/dao/CatalogRepository.java#L23

    Cheers,

    Álex

    bug 
    opened by alexpdp7 23
  • Release 4.5.2 to address CVE-2021-44228

    Release 4.5.2 to address CVE-2021-44228

    We should release 4.5.2 version to quickly address CVE-2021-44228. The PR #1865 is prerequisite.

    Note: there is no known exploit using spotbugs possible yet, but since we ship and use log4j in affected version, and there are web services that run spotbugs as a part of the build pipeline, an attacker could manage to craft a pull request that contains the Java code that would somehow manage the bad pattern be part of the message logged by spotbugs.

    documentation 3rd party bug 
    opened by iloveeclipse 23
  • Regression in 3.1.3: false alarm for

    Regression in 3.1.3: false alarm for "Parameter must be non-null but is marked as nullable"

    For this code:

    import com.google.common.base.Preconditions;
    import javax.annotation.Nullable;
    
    public enum TestClass {
      TEST("one", "two", null);
    
      public final String one;
      public final String two;
      @Nullable public final String three;
    
      private TestClass(String one, String two, @Nullable Object three) {
        this.one = Preconditions.checkNotNull(one);
        this.two = Preconditions.checkNotNull(two);
        this.three = three == null ? null : three.toString();
      }
    }
    

    SpotBugs 3.1.3 outputs this warning:

    Parameter must be non-null but is marked as nullable
    
    In class TestClass
    In method new TestClass(String, int, String, String, Object)
    Parameter one
    At TestClass.java:[lines 11-15]
    one must be non-null but is marked as nullable
    

    SpotBugs 3.1.2 does not show this warning. The code is compiled for Java 8.

    This has to be a bug, because if I remove either parameter two or three, the warning about parameter one goes away.

    bug need info 
    opened by PhilippWendler 23
  • WrappedRuntimeException: Premature end of file.

    WrappedRuntimeException: Premature end of file.

    Hi,

    I'm trying to migrate my project (Android Quality Verifier) from using FindBugs to SpotBugs. But since I changed to SpotBugs I can't run it because of this exception:

    Execution failed for task ':app:androidSpotbugs'. javax.xml.transform.TransformerException: javax.xml.transform.TransformerException: com.sun.org.apache.xml.internal.utils.WrappedRuntimeException: Premature end of file.

    The problem is in the XSL template I use for show errors in HTML, but I tried to use one of your examples of XSL and it gives the same error.

    My project uses the ant task version.

    need info 
    opened by Andrer757 23
  • Spotbugs 3.1.6 fails on JDK 11

    Spotbugs 3.1.6 fails on JDK 11

    I have a multi-JDK build configured. https://github.com/eclipse/ebr/blob/master/.travis.yml

    Spotbugs 3.1.5 runs fine on OpenJDK 8 and 10 but fails on 11 https://travis-ci.org/eclipse/ebr/jobs/405750075

    11:00:05:251 [INFO] --- spotbugs-maven-plugin:3.1.5:spotbugs (spotbugs) @ ebr-maven-shared ---
    11:00:05:708 [INFO] Fork Value is true
         [java] Picked up _JAVA_OPTIONS: -Xmx2048m -Xms512m
         [java] The following errors occurred during analysis:
         [java]   Unable to get XClass for java/lang/Integer
         [java]     java.lang.UnsupportedOperationException
         [java]       At org.objectweb.asm.ClassVisitor.visitNestMemberExperimental(ClassVisitor.java:248)
         [java]       At org.objectweb.asm.ClassReader.accept(ClassReader.java:651)
         [java]       At edu.umd.cs.findbugs.asm.FBClassReader.accept(FBClassReader.java:44)
         [java]       At org.objectweb.asm.ClassReader.accept(ClassReader.java:391)
         [java]       At edu.umd.cs.findbugs.classfile.engine.ClassParserUsingASM.parse(ClassParserUsingASM.java:519)
         [java]       At edu.umd.cs.findbugs.classfile.engine.ClassParserUsingASM.parse(ClassParserUsingASM.java:703)
         [java]       At edu.umd.cs.findbugs.classfile.engine.ClassInfoAnalysisEngine.analyze(ClassInfoAnalysisEngine.java:79)
         [java]       At edu.umd.cs.findbugs.classfile.engine.ClassInfoAnalysisEngine.analyze(ClassInfoAnalysisEngine.java:38)
    ...
    
    
    Java-11 
    opened by guw 22
  • [docs] List detectors and don't render hidden elements

    [docs] List detectors and don't render hidden elements

    This is a draft patch for the code that generates the bug list. Changes:

    • Bug patterns are sorted inside Categories
    • All sections have predictable anchors (not translation sensitive) to use with :ref:
    • Hidden categories (like Noise) are omitted - not sure if that's ok
    • Detectors are listed as an extra category with list of links to bugs it reports
    • Detectors which are disabled by default have "(disabled by default)" under their title

    I have trouble translating that last one. Is it ok to add some fake entries to "messages.xml" ?

    If you think this is usefull, I would also like to add information about Rank for each Bug and speed for each detector.


    Make sure these boxes are checked before submitting your PR -- thank you!

    • [X] Added an entry into CHANGELOG.md if you have changed SpotBugs code
    • [X] Added an entry into gradlePlugin/CHANGELOG.md if you have changed Gradle plugin code
    opened by lqc 22
  • Latest 4.0.0 Eclipse plugin is not functional

    Latest 4.0.0 Eclipse plugin is not functional

    • The views no longer work
    • Find bugs option disappeared from the context menu of a project
    • ~~Marketplace reports it has version 3.1.5.r201806132012-cbbf0a5 installed (:?)~~ reinstalled from the site
    • (Still) added in software sites and enabled: https://spotbugs.github.io/eclipse/
    • In installation details: SpotBugs 4.0.0.202001200351-6732852 com.github.spotbugs.plugin.eclipse.feature.group SpotBugs Project
    • No SpotBugs warnings/errors in the Problems view anymore (don't remember if there were any)

    !ENTRY org.eclipse.jface 4 0 2020-01-21 11:11:42.753 !MESSAGE Unable to resolve plug-in "com.github.spotbugs.plugin.eclipse". !STACK 0 java.io.IOException: Unable to resolve plug-in "com.github.spotbugs.plugin.eclipse". at org.eclipse.core.internal.runtime.PlatformURLPluginConnection.parse(PlatformURLPluginConnection.java:64) at org.eclipse.core.internal.runtime.PlatformURLPluginConnection.resolve(PlatformURLPluginConnection.java:73) at org.eclipse.core.internal.boot.PlatformURLHandler.openConnection(PlatformURLHandler.java:69) at org.eclipse.osgi.internal.url.URLStreamHandlerProxy.openConnection(URLStreamHandlerProxy.java:123) at java.base/java.net.URL.openConnection(URL.java:1051) at org.eclipse.core.internal.runtime.PlatformURLConverter.toFileURL(PlatformURLConverter.java:34) at org.eclipse.core.runtime.FileLocator.toFileURL(FileLocator.java:261) at org.eclipse.jface.resource.URLImageDescriptor.getFilePath(URLImageDescriptor.java:232) at org.eclipse.jface.resource.URLImageDescriptor.access$2(URLImageDescriptor.java:220) at org.eclipse.jface.resource.URLImageDescriptor$URLImageFileNameProvider.getImagePath(URLImageDescriptor.java:57) at org.eclipse.swt.internal.DPIUtil.validateAndGetImagePathAtZoom(DPIUtil.java:419) at org.eclipse.swt.graphics.Image.(Image.java:687) at org.eclipse.jface.resource.URLImageDescriptor.createImage(URLImageDescriptor.java:263) at org.eclipse.jface.resource.ImageDescriptor.createResource(ImageDescriptor.java:181) at org.eclipse.jface.resource.DeviceResourceManager.allocate(DeviceResourceManager.java:55) at org.eclipse.jface.resource.AbstractResourceManager.create(AbstractResourceManager.java:88) at org.eclipse.jface.resource.ResourceManager.createImageWithDefault(ResourceManager.java:195) at org.eclipse.jface.resource.ImageRegistry.get(ImageRegistry.java:206) at org.eclipse.e4.ui.workbench.renderers.swt.SWTPartRenderer.getImageFromURI(SWTPartRenderer.java:220) at org.eclipse.e4.ui.workbench.renderers.swt.SWTPartRenderer.getImage(SWTPartRenderer.java:230) at org.eclipse.e4.ui.workbench.renderers.swt.StackRenderer.createTab(StackRenderer.java:880) at org.eclipse.e4.ui.workbench.renderers.swt.LazyStackRenderer.processContents(LazyStackRenderer.java:145) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:676) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:768) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.access$0(PartRenderingEngine.java:739) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$2.run(PartRenderingEngine.java:733) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.createGui(PartRenderingEngine.java:717) at org.eclipse.e4.ui.workbench.renderers.swt.SWTPartRenderer.processContents(SWTPartRenderer.java:72) at org.eclipse.e4.ui.workbench.renderers.swt.SashRenderer.processContents(SashRenderer.java:140) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:676) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:768) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.access$0(PartRenderingEngine.java:739) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$2.run(PartRenderingEngine.java:733) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.createGui(PartRenderingEngine.java:717) at org.eclipse.e4.ui.workbench.renderers.swt.SWTPartRenderer.processContents(SWTPartRenderer.java:72) at org.eclipse.e4.ui.workbench.renderers.swt.SashRenderer.processContents(SashRenderer.java:140) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:676) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:768) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.access$0(PartRenderingEngine.java:739) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$2.run(PartRenderingEngine.java:733) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.createGui(PartRenderingEngine.java:717) at org.eclipse.e4.ui.workbench.renderers.swt.SWTPartRenderer.processContents(SWTPartRenderer.java:72) at org.eclipse.e4.ui.workbench.renderers.swt.PerspectiveRenderer.processContents(PerspectiveRenderer.java:51) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:676) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:768) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.access$0(PartRenderingEngine.java:739) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$2.run(PartRenderingEngine.java:733) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.createGui(PartRenderingEngine.java:717) at org.eclipse.e4.ui.workbench.renderers.swt.PerspectiveStackRenderer.showTab(PerspectiveStackRenderer.java:82) at org.eclipse.e4.ui.workbench.renderers.swt.LazyStackRenderer.postProcess(LazyStackRenderer.java:105) at org.eclipse.e4.ui.workbench.renderers.swt.PerspectiveStackRenderer.postProcess(PerspectiveStackRenderer.java:64) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:680) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:768) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.access$0(PartRenderingEngine.java:739) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$2.run(PartRenderingEngine.java:733) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.createGui(PartRenderingEngine.java:717) at org.eclipse.e4.ui.workbench.renderers.swt.SWTPartRenderer.processContents(SWTPartRenderer.java:72) at org.eclipse.e4.ui.workbench.renderers.swt.SashRenderer.processContents(SashRenderer.java:140) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:676) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:768) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.access$0(PartRenderingEngine.java:739) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$2.run(PartRenderingEngine.java:733) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.createGui(PartRenderingEngine.java:717) at org.eclipse.e4.ui.workbench.renderers.swt.SWTPartRenderer.processContents(SWTPartRenderer.java:72) at org.eclipse.e4.ui.workbench.renderers.swt.WBWRenderer.processContents(WBWRenderer.java:665) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:676) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:768) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.access$0(PartRenderingEngine.java:739) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$2.run(PartRenderingEngine.java:733) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.createGui(PartRenderingEngine.java:717) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1086) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1049) at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:660) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:559) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:154) at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:150) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:137) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:107) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:401) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:564) at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:657) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:594) at org.eclipse.equinox.launcher.Main.run(Main.java:1465)

    bug 
    opened by TheRealAyCe 20
  • False negative for RC_REF_COMPARISON

    False negative for RC_REF_COMPARISON

    I'm not sure if it is the intention of the RC_REF_COMPARISON bug detector to pick up all cases of reference comparison but the following very simple examples are not caught.

    import java.time.LocalDate;
    
    public class RefComparisonTestClass {
    
      private final LocalDate date1 = LocalDate.now();
    
      public boolean isSameDate(LocalDate date2) {
        return date1 == date2;
      }
    
      public void logIfSameDate(LocalDate date2) {
        if (date1 != date2) {
          System.out.println("Dates not the same [" + date1 + "], [" + date2 +"]");
        }
      }
    
    }
    
    opened by harrisric 1
  • chore(deps): update plugin com.diffplug.spotless to v6.12.1

    chore(deps): update plugin com.diffplug.spotless to v6.12.1

    Mend Renovate

    This PR contains the following updates:

    | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | com.diffplug.spotless | 6.12.0 -> 6.12.1 | age | adoption | passing | confidence |


    Configuration

    📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

    🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

    Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

    🔕 Ignore: Close this PR and you won't be reminded about this update again.


    • [ ] If you want to rebase/retry this PR, check this box

    This PR has been generated by Mend Renovate. View repository job log here.

    opened by renovate[bot] 1
  • Fix Issue #184

    Fix Issue #184

    The logic conditionals were entangled in an invalid way that produced nonsense debug log messages. Simplified the logic and reduced the logic branches to make the operation direct and thus fix the problem.


    Make sure these boxes are checked before submitting your PR -- thank you!

    • [x] Added an entry into CHANGELOG.md if you have changed SpotBugs code
    opened by Alex-Vol-Amz 1
  • fix(deps): update dependency com.google.errorprone:error_prone_annotations to v2.17.0

    fix(deps): update dependency com.google.errorprone:error_prone_annotations to v2.17.0

    Mend Renovate

    This PR contains the following updates:

    | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | com.google.errorprone:error_prone_annotations (source) | 2.16 -> 2.17.0 | age | adoption | passing | confidence |


    Release Notes

    google/error-prone

    v2.17.0: Error Prone 2.17.0

    Compare Source

    New Checkers:

    Fixed issues: #​2321, #​3144, #​3297, #​3428, #​3437, #​3462, #​3482, #​3494

    Full Changelog: https://github.com/google/error-prone/compare/v2.16...v2.17.0


    Configuration

    📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

    🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

    Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

    🔕 Ignore: Close this PR and you won't be reminded about this update again.


    • [ ] If you want to rebase/retry this PR, check this box

    This PR has been generated by Mend Renovate. View repository job log here.

    opened by renovate[bot] 1
  • fix(deps): update dependency org.testng:testng to v7.7.1

    fix(deps): update dependency org.testng:testng to v7.7.1

    Mend Renovate

    This PR contains the following updates:

    | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | org.testng:testng (source) | 7.7.0 -> 7.7.1 | age | adoption | passing | confidence |


    Release Notes

    cbeust/testng

    v7.7.1: TestNG v7.7.1

    Compare Source

    What's Changed

    Full Changelog: https://github.com/cbeust/testng/compare/7.7.0...7.7.1


    Configuration

    📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

    🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

    Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

    🔕 Ignore: Close this PR and you won't be reminded about this update again.


    • [ ] If you want to rebase/retry this PR, check this box

    This PR has been generated by Mend Renovate. View repository job log here.

    opened by renovate[bot] 1
Releases(4.7.3)
  • 4.7.3(Oct 17, 2022)

    CHANGELOG

    Fixed

    • Fixed detector DontUseFloatsAsLoopCounters to prevent false positives. (#2126) @baloghadamsoftware
    • Fixed regression in 4.7.2 caused by (#2141) @baloghadamsoftware
    • improve compatibility with later version of jdk (>= 13). (#2188) @Bluesbreaker45
    • Fixed detector UncallableMethodOfAnonymousClass to not report unused methods of method-local enumerations and records (#2120) @baloghadamsoftware
    • Fixed detector FindSqlInjection to detect bug SQL_NONCONSTANT_STRING_PASSED_TO_EXECUTE SQL with high priority in case of unsafe appends also in Java 11 and above (#2183) @baloghadamsoftware
    • Fixed detector StringConcatenation to detect bug SBSC_USE_STRINGBUFFER_CONCATENATION also in Java 11 and above (#2182) @baloghadamsoftware
    • Fixed OpcodeStackDetector to to handle propagation of taints properly in case of string concatenation in Java 9 and above (#2195) @baloghadamsoftware
    • Bump up log4j2 binding to 2.19.0
    • Bump ObjectWeb ASM from 9.3 to 9.4 supporting JDK 20 (#2200)
    • Bump up commons-text to 1.10.0 (#2197)
    • Fixed debug detector ViewCFG to generate file names that are also valid on Windows (#2209) @baloghadamsoftware

    CHECKSUM

    | file | checksum (sha256) | | ---- | ----------------- | | spotbugs-4.7.3-javadoc.jar | d2ba03077ea35bdac56ff4c45f8a00d0b334c3a6a3855da61d3712b4146472cf | | spotbugs-4.7.3-sources.jar | 1fd011390e107d57c7c758539a8f79908d022709920171a91d27d3b88634087c | | spotbugs-4.7.3.tgz | f02e2f1135b23f3edfddb75f64be0491353cfeb567b5a584115aa4fd373d4431 | | spotbugs-4.7.3.zip | dffd3f41fdc2a4cfda547d4ce700585136340e7d0803aeeb2e7ca6cf8c4a6898 | | spotbugs-annotations-4.7.3-javadoc.jar | 392b57d03cb24664dd9ba856287b38a8668c3926eabdfa0f0663fad8fa7d0f44 | | spotbugs-annotations-4.7.3-sources.jar | b338136e3e82d585348cde58a8fe3a678e16f51a35c31c1463e05fefef557aad | | spotbugs-annotations.jar | c0fd1ac2e22acdd46913a2ff74551b71f124457199688698204af4bf3d43165d | | spotbugs-ant-4.7.3-javadoc.jar | 8591f80cf058830d5b824adc68b820cd901d630b9b55557c48fe4cca6ccdd2fe | | spotbugs-ant-4.7.3-sources.jar | ce7cfbed848ccb0e3765cec6b9c60c458699aa51f60ad9216cf89dbf38d8d793 | | spotbugs-ant.jar | b866a2a89a03b49e60b5f27e0f5987eb8c12c2d2aefc6e9ddcbcdae345c765db | | spotbugs.jar | df37eab21a7d04aa807808a33e9f7c081451cb02c14b4a2c33119976be498520 | | test-harness-4.7.3-javadoc.jar | 4008cc377288c53b4725f43a519a701eb91226a99ab340e997694ade20ed243e | | test-harness-4.7.3-sources.jar | 7efb06093ea5f6f330a7bd76b894f396d6cb466665fcefc01a3743b07910dc29 | | test-harness-4.7.3.jar | 50b4a72c668ea7d29bf1234b4aa380df903374216f68b0a87f7ca28d4fa225f3 | | test-harness-core-4.7.3-javadoc.jar | 486c16fa3ed7c1d99d8ddcdc8e1a6aecf925911d6b473d73aeab40f1639dda52 | | test-harness-core-4.7.3-sources.jar | f8aab3c5cdd456d6b6d632e9fc65897e657447a2e925b6b3f61bd2d15c22cb24 | | test-harness-core-4.7.3.jar | 7165f7f45a6e82e8a6d6a0a4033b6473b310c14f645cb62ebc2fbc6ce5338350 | | test-harness-jupiter-4.7.3-javadoc.jar | 5a011955082b4e27bcdeeb56b6bc6fae21f87015b354bc5ffb80442495b919b9 | | test-harness-jupiter-4.7.3-sources.jar | 210353a57016e26b1a654d936a15f039613fa1ac532d485c1b1d03902f6c6315 | | test-harness-jupiter-4.7.3.jar | 18095fec31b85981ecaafdef86ca9ae1e9588e1b9bc6d209f82829cf9d0c13f4 |

    Source code(tar.gz)
    Source code(zip)
    eclipsePlugin.zip(11.18 MB)
    spotbugs-4.7.3-source.zip(3.65 MB)
    spotbugs-4.7.3.tgz(15.29 MB)
    spotbugs-4.7.3.tgz.asc(821 bytes)
    spotbugs-4.7.3.zip(15.31 MB)
    spotbugs-4.7.3.zip.asc(821 bytes)
  • 4.7.2(Sep 5, 2022)

    CHANGELOG

    Fixed

    • Bumped gson from 2.9.0 to 2.9.1 (#2136)
    • Bump up SLF4J API to 2.0.0
    • Bump up logback to 1.4.0
    • Bump up log4j2 binding to 2.18.0
    • Bump up Saxon-HE to 11.4 (#2160)
    • Fixed InvalidInputException in Eclipse while bug reporting (#2134) @iloveeclipse
    • Bug SA_FIELD_SELF_ASSIGNMENT is now reported from nested classes as well (#2142) @baloghadamsoftware
    • Avoid warning on use of security manager on Java 17 and newer. (#1579) @raphw
    • Fixed false positives EI_EXPOSE_REP thrown in case of fields initialized by the of or copyOf method of a List, Map or Set (#1771) @baloghadamsoftware
    • Fixed CFGBuilderException thrown when dup_x2 is used to swap the reference and wide-value (double, long) in the stack (#2146) @KengoTODA

    CHECKSUM

    | file | checksum (sha256) | | ---- | ----------------- | | spotbugs-4.7.2-javadoc.jar | a40e94961c8b99e020aacfa7012cce4e818eac6fb8effa678e20177814113248 | | spotbugs-4.7.2-sources.jar | fca5bab29e0373944cbb07e3329ce1c0c18133885f558fb25e3bc2ebba6a7018 | | spotbugs-4.7.2.tgz | f02a023d03b0fde70038ccb4bc8d4a964a504262d13024a97b14d9070f7d4d96 | | spotbugs-4.7.2.zip | 3974d90eb70aad26bb647e0bbaae810c7cf927587e28ce939c2b6531414afe7d | | spotbugs-annotations-4.7.2-javadoc.jar | b8e9f92e17a62766f86b82442a07b0f57ff4f919796e944a6e2a5bacc76e4399 | | spotbugs-annotations-4.7.2-sources.jar | b338136e3e82d585348cde58a8fe3a678e16f51a35c31c1463e05fefef557aad | | spotbugs-annotations.jar | e2b4c654b2d7897490cf1f22a009ac677be4c92bfc493a0dedb5706f5e489839 | | spotbugs-ant-4.7.2-javadoc.jar | 632af1c4043b35eab37318eed7ab301655553a124248b4467fb30cbd0f2f24de | | spotbugs-ant-4.7.2-sources.jar | ce7cfbed848ccb0e3765cec6b9c60c458699aa51f60ad9216cf89dbf38d8d793 | | spotbugs-ant.jar | b866a2a89a03b49e60b5f27e0f5987eb8c12c2d2aefc6e9ddcbcdae345c765db | | spotbugs.jar | df5205f4d87ed53ff5b847c6aedc55d605966c0f8f9820d9c6be5ba517b09bcd | | test-harness-4.7.2-javadoc.jar | 1486f4f4be29dc24a19ad95b809b42d08f34ec9c68abfd43c5fe44d6087d8845 | | test-harness-4.7.2-sources.jar | 7efb06093ea5f6f330a7bd76b894f396d6cb466665fcefc01a3743b07910dc29 | | test-harness-4.7.2.jar | 50b4a72c668ea7d29bf1234b4aa380df903374216f68b0a87f7ca28d4fa225f3 | | test-harness-core-4.7.2-javadoc.jar | f10c5bbe98b2666ea775cc5c0a9a94e99b116706d75254d079741ff410dbdd33 | | test-harness-core-4.7.2-sources.jar | f8aab3c5cdd456d6b6d632e9fc65897e657447a2e925b6b3f61bd2d15c22cb24 | | test-harness-core-4.7.2.jar | 7165f7f45a6e82e8a6d6a0a4033b6473b310c14f645cb62ebc2fbc6ce5338350 | | test-harness-jupiter-4.7.2-javadoc.jar | 1bdd8c97fbef6009945e30821ba26f722d1d037c33d780f75d922e30c900ef04 | | test-harness-jupiter-4.7.2-sources.jar | 210353a57016e26b1a654d936a15f039613fa1ac532d485c1b1d03902f6c6315 | | test-harness-jupiter-4.7.2.jar | 18095fec31b85981ecaafdef86ca9ae1e9588e1b9bc6d209f82829cf9d0c13f4 |

    Source code(tar.gz)
    Source code(zip)
    eclipsePlugin.zip(9.30 MB)
    spotbugs-4.7.2-source.zip(3.65 MB)
    spotbugs-4.7.2.tgz(15.25 MB)
    spotbugs-4.7.2.tgz.asc(821 bytes)
    spotbugs-4.7.2.zip(15.28 MB)
    spotbugs-4.7.2.zip.asc(821 bytes)
  • 4.7.1(Jun 27, 2022)

    CHANGELOG

    Fixed

    • Fixed False positives for RCN_REDUNDANT_NULLCHECK_OF_NONNULL_VALUE on try-with-resources with interface references (#1931) @dmivankov
    • Fixed NullPointerException thrown by detector FindPotentialSecurityCheckBasedOnUntrustedSource on Kotlin files. (#2041) @baloghadamsoftware
    • Disabled detector ThrowingExceptions by default to avoid many false positives (#2040) @iloveeclipse
    • Fixed False positives for THROWS_METHOD_THROWS_CLAUSE_BASIC_EXCEPTION and THROWS_METHOD_THROWS_CLAUSE_THROWABLE on evaluating synthetic classes (#2040) @big-andy-coates
    • Fixed False positive for SSD_DO_NOT_USE_INSTANCE_LOCK_ON_SHARED_STATIC_DATA on proper protection by using static lock for synchronized block, but inside an unsecured (synchronized and not static) method (#2089) @gonczmisi

    CHECKSUM

    | file | checksum (sha256) | | ---- | ----------------- | | spotbugs-4.7.1-javadoc.jar | b9562f6c370adc73277c2f7ecd1d72dea1f4961ff8a38b5c9de1df48c98d4727 | | spotbugs-4.7.1-sources.jar | 70e08fd3a294d86f364ddb57fe83e5eebb90eb372766e6c0ad41b1c206f2a7c6 | | spotbugs-4.7.1.tgz | 62195a43af19e998380ea5988dba3bdd5b927acd6a3a47a575578629313ce836 | | spotbugs-4.7.1.zip | 008c98901099114dbb0864bf693f480df4cef83929cf469d37b1cf85a348ae88 | | spotbugs-annotations-4.7.1-javadoc.jar | 8f58cc52f0517b072da3696d6d4b882944699746de63084834d688b9d0ff1102 | | spotbugs-annotations-4.7.1-sources.jar | b338136e3e82d585348cde58a8fe3a678e16f51a35c31c1463e05fefef557aad | | spotbugs-annotations.jar | c267764c59c7cbd2e6becebeb7c848cd6dfe23a28a76ea3bc6ccea5cce60932e | | spotbugs-ant-4.7.1-javadoc.jar | cbd76c1382c887e0f73426646f2b12c867b48a607ccd2eb6618125ab672e9296 | | spotbugs-ant-4.7.1-sources.jar | ce7cfbed848ccb0e3765cec6b9c60c458699aa51f60ad9216cf89dbf38d8d793 | | spotbugs-ant.jar | b866a2a89a03b49e60b5f27e0f5987eb8c12c2d2aefc6e9ddcbcdae345c765db | | spotbugs.jar | a6b689b6695fe64665a056875c0d57b55c07431d5d5193b2ae3971986a114d0e | | test-harness-4.7.1-javadoc.jar | 5a4e624420abcdb782158b3ce1b0e17c5e5ad3176698c617128897201bceb775 | | test-harness-4.7.1-sources.jar | 7efb06093ea5f6f330a7bd76b894f396d6cb466665fcefc01a3743b07910dc29 | | test-harness-4.7.1.jar | 50b4a72c668ea7d29bf1234b4aa380df903374216f68b0a87f7ca28d4fa225f3 | | test-harness-core-4.7.1-javadoc.jar | 6e8325372c24834f40a73feaba3fc256fdb5e6391ff086d459afd58b0fc1b073 | | test-harness-core-4.7.1-sources.jar | f8aab3c5cdd456d6b6d632e9fc65897e657447a2e925b6b3f61bd2d15c22cb24 | | test-harness-core-4.7.1.jar | 7165f7f45a6e82e8a6d6a0a4033b6473b310c14f645cb62ebc2fbc6ce5338350 | | test-harness-jupiter-4.7.1-javadoc.jar | 83332c275c96e72ecdacf96244baf79a0357dd5c3fdd6143e0b47fc73f153441 | | test-harness-jupiter-4.7.1-sources.jar | 210353a57016e26b1a654d936a15f039613fa1ac532d485c1b1d03902f6c6315 | | test-harness-jupiter-4.7.1.jar | 18095fec31b85981ecaafdef86ca9ae1e9588e1b9bc6d209f82829cf9d0c13f4 |

    Source code(tar.gz)
    Source code(zip)
    eclipsePlugin.zip(8.66 MB)
    spotbugs-4.7.1-source.zip(3.64 MB)
    spotbugs-4.7.1.tgz(14.55 MB)
    spotbugs-4.7.1.tgz.asc(821 bytes)
    spotbugs-4.7.1.zip(14.57 MB)
    spotbugs-4.7.1.zip.asc(821 bytes)
  • 4.7.0(May 4, 2022)

    CHANGELOG

    Changed

    • Updated documentation by adding parenthesis () to the negative odd check message (#1995) @axkr
    • Let the Plugin class implement AutoCloseable so we can release the .jar file (#2024) @gtoison

    Fixed

    • Fixed reports to truncate existing files before writing new content (#1950) @sdati
    • Fixed traversal of nested archives governed by -nested:true (#1930) @Vogel612
    • Warnings of deprecated System::setSecurityManager calls on Java 17 (#1983) @wborn
    • Fixed false positive SSD bug for locking on java.lang.Class objects (#1978) @jpschewe
    • FindReturnRef throws an IllegalArgumentException unexpectedly (#2019) @KengoTODA
    • Bumped Saxon-HE from 10.6 to 11.3 (#1955, #1999)
    • Bump ObjectWeb ASM from 9.2 to 9.3 supporting JDK 19 (#2004)

    Added

    • New detector ThrowingExceptions and introduced new bug types @oroszbd
      • THROWS_METHOD_THROWS_RUNTIMEEXCEPTION is reported in case of a method throwing RuntimeException,
      • THROWS_METHOD_THROWS_CLAUSE_BASIC_EXCEPTION is reported when a method has Exception in its throws clause and
      • THROWS_METHOD_THROWS_CLAUSE_THROWABLE is reported when a method has Throwable in its throws clause (See SEI CERT ERR07-J)
    • New rule PERM_SUPER_NOT_CALLED_IN_GETPERMISSIONS to warn for custom class loaders who do not call their superclasses' getPermissions() in their getPermissions() method. This rule based on the SEI CERT rule SEC07-J Call the superclass's getPermissions() method when writing a custom class loader. (#SEC07-J) @baloghadamsoftware
    • New rule USC_POTENTIAL_SECURITY_CHECK_BASED_ON_UNTRUSTED_SOURCE to detect cases where a non-final method of a non-final class is called from public methods of public classes and then the same method is called on the same object inside a doPrivileged block. Since the called method may have been overridden to behave differently on the first and second invocations this is a possible security check based on an unreliable source. This rule is based on SEC02-J. Do not base security checks on untrusted sources. (#SEC02-J) @baloghadamsoftware
    • New detector DontUseFloatsAsLoopCounters to detect usage of floating-point variables as loop counters (FL_FLOATS_AS_LOOP_COUNTERS), according to SEI CERT rules NUM09-J. Do not use floating-point variables as loop counters @adrianturtoczki
    • New test detector ViewCFG to visualize the control-flow graph for SpotBugs developers @baloghadamsoftware

    CHECKSUM

    | file | checksum (sha256) | | ---- | ----------------- | | spotbugs-4.7.0-javadoc.jar | 43745221e8fdf50fa2f89d659034523dd58da3d10223de6e0c91704c07e025a0 | | spotbugs-4.7.0-sources.jar | 6e90f856826b48a3031e2cb903534b4fdb494759863ea14e8df93c9cf15a272c | | spotbugs-4.7.0.tgz | 8c871e279c7d9b1933158db6355b8ac817a84fd724b88b1e393e3abcf6874910 | | spotbugs-4.7.0.zip | 9ee793b0f3f78901089211dfa67b8603e38fd1abd64eac09d2590df506cfedf5 | | spotbugs-annotations-4.7.0-javadoc.jar | 76a9a7d45590494a220840d173809b2fe0ec50e554435dd9b28de9312cc6a34a | | spotbugs-annotations-4.7.0-sources.jar | b338136e3e82d585348cde58a8fe3a678e16f51a35c31c1463e05fefef557aad | | spotbugs-annotations.jar | 8e6677102aa0de50841644cf9a57d6d503550ad774049a76c75bf157a8beebd5 | | spotbugs-ant-4.7.0-javadoc.jar | 50d84857bbdca54898e93b225835ab25eba9f0a7e340c420ab08bc17bd584f0c | | spotbugs-ant-4.7.0-sources.jar | ce7cfbed848ccb0e3765cec6b9c60c458699aa51f60ad9216cf89dbf38d8d793 | | spotbugs-ant.jar | b866a2a89a03b49e60b5f27e0f5987eb8c12c2d2aefc6e9ddcbcdae345c765db | | spotbugs.jar | 94c44d86c83b8fe63b20023e510874aef721b1081982051706e1da841572f295 | | test-harness-4.7.0-javadoc.jar | 3af01af49d74964569fe8ce0e4c217fbfd89e7c02ae5428148b5222e0aec8906 | | test-harness-4.7.0-sources.jar | 7efb06093ea5f6f330a7bd76b894f396d6cb466665fcefc01a3743b07910dc29 | | test-harness-4.7.0.jar | 50b4a72c668ea7d29bf1234b4aa380df903374216f68b0a87f7ca28d4fa225f3 | | test-harness-core-4.7.0-javadoc.jar | 659508cc31a9dfb5c7d4c14981a3f38f476888c7bb08479ac19401ef39201f64 | | test-harness-core-4.7.0-sources.jar | f8aab3c5cdd456d6b6d632e9fc65897e657447a2e925b6b3f61bd2d15c22cb24 | | test-harness-core-4.7.0.jar | 7165f7f45a6e82e8a6d6a0a4033b6473b310c14f645cb62ebc2fbc6ce5338350 | | test-harness-jupiter-4.7.0-javadoc.jar | c0300bac23ce2292be120325515128d2d9262c1f7d71b3bf1c4324b2d6b57753 | | test-harness-jupiter-4.7.0-sources.jar | 210353a57016e26b1a654d936a15f039613fa1ac532d485c1b1d03902f6c6315 | | test-harness-jupiter-4.7.0.jar | 18095fec31b85981ecaafdef86ca9ae1e9588e1b9bc6d209f82829cf9d0c13f4 |

    Source code(tar.gz)
    Source code(zip)
    eclipsePlugin.zip(8.66 MB)
    spotbugs-4.7.0-source.zip(3.64 MB)
    spotbugs-4.7.0.tgz(14.55 MB)
    spotbugs-4.7.0.tgz.asc(821 bytes)
    spotbugs-4.7.0.zip(14.57 MB)
    spotbugs-4.7.0.zip.asc(821 bytes)
  • 4.6.0(Mar 8, 2022)

    CHANGELOG

    Fixed

    • Fixed spotbugs build with ecj compiler (#1903) @iloveeclipse
    • Moved tests from spotbugs project to spotbugs-tests project (#1914) @iloveeclipse
    • Fixed UI freezes in Eclipse on bug count decorations update (#285) @iloveeclipse
    • Bumped log4j from 2.17.1 to 2.17.2 (#1960)
    • Bumped gson from 2.8.9 to 2.9.0 (#1960)

    Added

    • New detector FindInstanceLockOnSharedStaticData for new bug type SSD_DO_NOT_USE_INSTANCE_LOCK_ON_SHARED_STATIC_DATA. This detector reports a bug if an instance level lock is used to modify a shared static data. (See SEI CERT rule LCK06-J) @gonczmisi

    CHECKSUM

    | file | checksum (sha256) | | ---- | ----------------- | | spotbugs-4.6.0-javadoc.jar | f38dba26a1e419483b19c3acc35962347a6e5c3d6793729e84a637cef1423c1a | | spotbugs-4.6.0-sources.jar | 6926fee89be85021a3a58cc8f08c5f706f3696c151dcee38dbaf674b6fa7f357 | | spotbugs-4.6.0.tgz | d357a5920bba4e7964d834de88fe64892ed02b5e1d4f61b8afb5187e4e4cdd04 | | spotbugs-4.6.0.zip | 8486f721d80e62c300fd2db5076badac3d969b596904c23f429c922a03041ac0 | | spotbugs-annotations-4.6.0-javadoc.jar | d001876f444fb41f946218571f6935b008578cdc560d75691951b682578f260c | | spotbugs-annotations-4.6.0-sources.jar | b338136e3e82d585348cde58a8fe3a678e16f51a35c31c1463e05fefef557aad | | spotbugs-annotations.jar | b7021b4ecbafd9b321bdf06eef2ec4519526e2b39fb7d080f2964308f017435e | | spotbugs-ant-4.6.0-javadoc.jar | 4d092495bee2eede65dbac444e72a89396dbc78beea15ae588d1d37e853c4cab | | spotbugs-ant-4.6.0-sources.jar | ce7cfbed848ccb0e3765cec6b9c60c458699aa51f60ad9216cf89dbf38d8d793 | | spotbugs-ant.jar | b866a2a89a03b49e60b5f27e0f5987eb8c12c2d2aefc6e9ddcbcdae345c765db | | spotbugs.jar | 0c05d399522d4de7630a935eb24b2fef75cabf1867527abffbcd319a94804b5f | | test-harness-4.6.0-javadoc.jar | e5c5e087a6ae7dd919026dc1dc88e720ce239f73b125e150c15e70a78126574f | | test-harness-4.6.0-sources.jar | 2c1f5ef929453f3b682c7eb7c1e22db3082b5f74c5a5be439be5dc31dd7a31aa | | test-harness-4.6.0.jar | 45ca0e944ee5704318d79f67815cde7ca5f7fb22814e325d00e2d25d9b552659 | | test-harness-core-4.6.0-javadoc.jar | 1e6bdfb261bbb17674d4ac94576cb3fb561b207d9b615fdcb575e6c565a03f09 | | test-harness-core-4.6.0-sources.jar | f320f5eb4069e9686b760b2a6a0760989753225f9e9ce1226e3258ec64795d8a | | test-harness-core-4.6.0.jar | fd1a0c06a5eaff50ed0953d42fb7d69a41031c6a6630ad5e47c38a9f0eaca285 | | test-harness-jupiter-4.6.0-javadoc.jar | 1a0f4bb21a3a2cf100b8b5d6ec6ccf6e54eef2d174e00cc34d54cf7f86d45640 | | test-harness-jupiter-4.6.0-sources.jar | 210353a57016e26b1a654d936a15f039613fa1ac532d485c1b1d03902f6c6315 | | test-harness-jupiter-4.6.0.jar | 18095fec31b85981ecaafdef86ca9ae1e9588e1b9bc6d209f82829cf9d0c13f4 |

    Source code(tar.gz)
    Source code(zip)
    eclipsePlugin.zip(6.13 MB)
    spotbugs-4.6.0-source.zip(3.63 MB)
    spotbugs-4.6.0.tgz(12.58 MB)
    spotbugs-4.6.0.tgz.asc(821 bytes)
    spotbugs-4.6.0.zip(12.60 MB)
    spotbugs-4.6.0.zip.asc(821 bytes)
  • 4.5.3(Jan 5, 2022)

    CHANGELOG

    Security

    Fixed

    • Remove duplicated logging frameworks from the Eclipse plugin distribution (#1868) @KengoTODA
    • Corrected class name validation to no longer fail for Kotlin classes on class path containing special characters. (#1883) @studro

    CHECKSUM

    | file | checksum (sha256) | | ---- | ----------------- | | spotbugs-4.5.3-javadoc.jar | c5762e13d996117c5ae94675f6ab835d515c90a8cce7d10438bb99d004e0005a | | spotbugs-4.5.3-sources.jar | 196df4ebf7fb681cb819362461137d4e8b475b6a8229bb65363c7042924b702b | | spotbugs-4.5.3.tgz | 7118d112804701f79172f4c3c8904832cdd085236eaa34ce847c71bddcd08927 | | spotbugs-4.5.3.zip | 15e9ee3a0de47195e6206bb50c0c9e487627ba9affe2da586e05333c1d4a12e8 | | spotbugs-annotations-4.5.3-javadoc.jar | 81825340a691d8b2df8670cb67db4a142d8889b32183c8f1a235bde41b9c1607 | | spotbugs-annotations-4.5.3-sources.jar | b338136e3e82d585348cde58a8fe3a678e16f51a35c31c1463e05fefef557aad | | spotbugs-annotations.jar | cb8ef0e128fefc3885205b09a758bcc5aeca2c4faa205195a10d22301530e4f8 | | spotbugs-ant-4.5.3-javadoc.jar | 9b1902fea658a339414b26559c505f4244b749f823f55568ce8b6c64153b540a | | spotbugs-ant-4.5.3-sources.jar | ce7cfbed848ccb0e3765cec6b9c60c458699aa51f60ad9216cf89dbf38d8d793 | | spotbugs-ant.jar | b866a2a89a03b49e60b5f27e0f5987eb8c12c2d2aefc6e9ddcbcdae345c765db | | spotbugs.jar | 7416dda5bf6f1e2740a906bc86b0db4c4413a039cc81d5a80a171d0996708745 | | test-harness-4.5.3-javadoc.jar | 48a87a2484c96f84292b443ec07d19b327f790b03b42294d016bd12153150540 | | test-harness-4.5.3-sources.jar | 2c1f5ef929453f3b682c7eb7c1e22db3082b5f74c5a5be439be5dc31dd7a31aa | | test-harness-4.5.3.jar | 45ca0e944ee5704318d79f67815cde7ca5f7fb22814e325d00e2d25d9b552659 | | test-harness-core-4.5.3-javadoc.jar | 0adc71c823667b6db8c1284ad20844ad94c59a64f60df108c3c8c99b7b854b08 | | test-harness-core-4.5.3-sources.jar | f320f5eb4069e9686b760b2a6a0760989753225f9e9ce1226e3258ec64795d8a | | test-harness-core-4.5.3.jar | fd1a0c06a5eaff50ed0953d42fb7d69a41031c6a6630ad5e47c38a9f0eaca285 | | test-harness-jupiter-4.5.3-javadoc.jar | c612793dda9d1aef37420e35e415cf54b66fa5348540726ece51ae72d8a81dcc | | test-harness-jupiter-4.5.3-sources.jar | 210353a57016e26b1a654d936a15f039613fa1ac532d485c1b1d03902f6c6315 | | test-harness-jupiter-4.5.3.jar | 18095fec31b85981ecaafdef86ca9ae1e9588e1b9bc6d209f82829cf9d0c13f4 |

    Source code(tar.gz)
    Source code(zip)
    eclipsePlugin.zip(8.25 MB)
    spotbugs-4.5.3-source.zip(3.70 MB)
    spotbugs-4.5.3.tgz(12.58 MB)
    spotbugs-4.5.3.tgz.asc(821 bytes)
    spotbugs-4.5.3.zip(12.60 MB)
    spotbugs-4.5.3.zip.asc(821 bytes)
  • 4.5.2(Dec 13, 2021)

    CHANGELOG

    Security

    • Bumped log4j from 2.14.1 to 2.16.0 to address CVE-2021-44228 @iloveeclipse

    Fixed

    • Updated RV_01_TO_INT to handle float and long checks (#1518) @gloNelson

    CHECKSUM

    | file | checksum (sha256) | | ---- | ----------------- | | spotbugs-4.5.2-javadoc.jar | d12b874128f9d6b3467577d86c34581ea99840e920b318c75cc0c49e34ebd5f3 | | spotbugs-4.5.2-sources.jar | 653bf298c0e8b7d366bbe64c7d5557f0aad7a65cf861f3de752ed0fb810702d2 | | spotbugs-4.5.2.tgz | e9c8c945d16a4dd1b3552b5296e0df8bba70c3ace95b20bc2939a75f2e3bee3e | | spotbugs-4.5.2.zip | 0467dc71b24b61bfda7dfaec3df96b5095d526b99b034cad9d068ee026f4cbe3 | | spotbugs-annotations-4.5.2-javadoc.jar | 1ed3f98f0d0efe3309b58edf163e6b5e5b1d0088c0246121850aa8344425911f | | spotbugs-annotations-4.5.2-sources.jar | b338136e3e82d585348cde58a8fe3a678e16f51a35c31c1463e05fefef557aad | | spotbugs-annotations.jar | f6fbf3e13a6c6862e19677a053598fac3cd7f2f6fde726a6765bf83101aa911f | | spotbugs-ant-4.5.2-javadoc.jar | 0f575c9fd20928faa13f826ef1f21ba6cb5bee1f4c50f4a09a8b65ef488dac52 | | spotbugs-ant-4.5.2-sources.jar | 06f19afbb2fd63e554d1588328feea5aabe0ea4c104191986de03ba1e2f518cb | | spotbugs-ant.jar | e31cbd498a93ac92d19658bf45ca3a973b63e8932efca8da1cfd530ec9e547b3 | | spotbugs.jar | 7a4c753d36114f480f63c91b538d0548787827bdefced006fa57eb423095e25a | | test-harness-4.5.2-javadoc.jar | 1aba8c6a4ada5b82c268ecc8fee6db154c0a788b8e42ac130fe6ea1398bc4804 | | test-harness-4.5.2-sources.jar | 2c1f5ef929453f3b682c7eb7c1e22db3082b5f74c5a5be439be5dc31dd7a31aa | | test-harness-4.5.2.jar | 45ca0e944ee5704318d79f67815cde7ca5f7fb22814e325d00e2d25d9b552659 | | test-harness-core-4.5.2-javadoc.jar | 88b2470f4ebcc4d10ccc13ee101b951208f8389963919d407c49cda451e5555a | | test-harness-core-4.5.2-sources.jar | f320f5eb4069e9686b760b2a6a0760989753225f9e9ce1226e3258ec64795d8a | | test-harness-core-4.5.2.jar | fd1a0c06a5eaff50ed0953d42fb7d69a41031c6a6630ad5e47c38a9f0eaca285 | | test-harness-jupiter-4.5.2-javadoc.jar | d7afde7e639f3ec3737941b68118d4877c819274385f0bf4d62d9aac5549a9ba | | test-harness-jupiter-4.5.2-sources.jar | 210353a57016e26b1a654d936a15f039613fa1ac532d485c1b1d03902f6c6315 | | test-harness-jupiter-4.5.2.jar | 18095fec31b85981ecaafdef86ca9ae1e9588e1b9bc6d209f82829cf9d0c13f4 |

    Source code(tar.gz)
    Source code(zip)
    eclipsePlugin.zip(10.06 MB)
    spotbugs-4.5.2-source.zip(3.70 MB)
    spotbugs-4.5.2.tgz(12.58 MB)
    spotbugs-4.5.2.tgz.asc(821 bytes)
    spotbugs-4.5.2.zip(12.60 MB)
    spotbugs-4.5.2.zip.asc(821 bytes)
  • 4.5.1(Dec 8, 2021)

    CHANGELOG

    Fixed

    • Ant task does not produce XML anymore (#1827) @KengoTODA
    • Do not emit false positives of MC_OVERRIDABLE_METHOD_CALL_IN_CONSTRUCTOR and MC_OVERRIDABLE_METHOD_CALL_IN_CLONE for final classes (#1812). @danielnorberg
    • Reports cannot be created on Windows platform (#1842) @KengoTODA

    CHECKSUM

    | file | checksum (sha256) | | ---- | ----------------- | | spotbugs-4.5.1-javadoc.jar | 899cbc1214eb942e01980cd9d6a64e937598e25c9c1ef7d3af2da43bce729636 | | spotbugs-4.5.1-sources.jar | b52e0b2e883dcbea58268c5355f1fa4c7090c5d941a93ddf844fa09534ef66e4 | | spotbugs-4.5.1.tgz | e846b2e374fad74621e45e8b01c31eb9a2636d60b4cd30168944bed98dcb5a4c | | spotbugs-4.5.1.zip | 26dd83027cd5e5a7e6a3f4c7a4239f27a9af8de209c7e37890835fc8cf035de7 | | spotbugs-annotations-4.5.1-javadoc.jar | a66f6df0d2f53a88180980cbb465f558ec1614fc409b72f412949b10ec68db29 | | spotbugs-annotations-4.5.1-sources.jar | b338136e3e82d585348cde58a8fe3a678e16f51a35c31c1463e05fefef557aad | | spotbugs-annotations.jar | 083cc7dcb72f1e39d1da4389753f29c91546376d05be730db812974f74e570d7 | | spotbugs-ant-4.5.1-javadoc.jar | 90a0ab972f2f6a51c3096f1ac7d06681dda5358c0dcbdb1d5333358bf0da2093 | | spotbugs-ant-4.5.1-sources.jar | 06f19afbb2fd63e554d1588328feea5aabe0ea4c104191986de03ba1e2f518cb | | spotbugs-ant.jar | e31cbd498a93ac92d19658bf45ca3a973b63e8932efca8da1cfd530ec9e547b3 | | spotbugs.jar | 91c014d3a53b72ba4d0920f567dd1679a5621ed74ccb3bb9e6df84a22d2ff952 | | test-harness-4.5.1-javadoc.jar | 77d6754b87ed52889148d7cae0f3a85be4c7a2923bcda456b7d7e512cefbe2db | | test-harness-4.5.1-sources.jar | 2c1f5ef929453f3b682c7eb7c1e22db3082b5f74c5a5be439be5dc31dd7a31aa | | test-harness-4.5.1.jar | 45ca0e944ee5704318d79f67815cde7ca5f7fb22814e325d00e2d25d9b552659 | | test-harness-core-4.5.1-javadoc.jar | 76adfa13f8fe997cd06ef35beeccb8115af89f8d3e3a8a0936fd0cffe36fe1ab | | test-harness-core-4.5.1-sources.jar | f320f5eb4069e9686b760b2a6a0760989753225f9e9ce1226e3258ec64795d8a | | test-harness-core-4.5.1.jar | fd1a0c06a5eaff50ed0953d42fb7d69a41031c6a6630ad5e47c38a9f0eaca285 | | test-harness-jupiter-4.5.1-javadoc.jar | c0bbd1ce2724acc7a5037b21ebe47f3a18ddb70be7cac9cc494009a9d5e71c9e | | test-harness-jupiter-4.5.1-sources.jar | 210353a57016e26b1a654d936a15f039613fa1ac532d485c1b1d03902f6c6315 | | test-harness-jupiter-4.5.1.jar | 18095fec31b85981ecaafdef86ca9ae1e9588e1b9bc6d209f82829cf9d0c13f4 |

    Source code(tar.gz)
    Source code(zip)
    eclipsePlugin.zip(9.99 MB)
    spotbugs-4.5.1-source.zip(3.70 MB)
    spotbugs-4.5.1.tgz(12.54 MB)
    spotbugs-4.5.1.tgz.asc(821 bytes)
    spotbugs-4.5.1.zip(12.57 MB)
    spotbugs-4.5.1.zip.asc(821 bytes)
  • 4.5.0(Nov 11, 2021)

    CHANGELOG

    Changed

    • Replace "分析" with "解析" in Japanese document (#1573) @KengoTODA
    • Add a section to document how to integrate find-sec-bugs into spotbugs-maven-plugin (#540) @luana-martins
    • Bump gson from 2.8.8 to 2.8.9 (#1784)
    • Changes related to dominators analysis in package edu.umd.cs.findbugs.classfile.engine.bcel (#1741): @gamesh411
      • DominatorsAnalysisFactory renamed to NonExceptionDominatorsAnalysisFactory (clarification)
      • NonExceptionPostdominatorsAnalysisFactory renamed to NonExceptionPostDominatorsAnalysisFactory (spelling)
      • NonImplicitExceptionDominatorsAnalysis introduced (API consistency)

    Added

    • Rule DCN_NULLPOINTER_EXCEPTION covers catching NullPointerExceptions in accordance with SEI Cert rule ERR08-J (#1740) @gamesh411
    • Multiple types of report can be generated in batch. Set multiple commandline options for report configuration like -html=report/spotbugs.html -xml:withMessages=report/spotbugs.xml. @KengoTODA
    • New rule REFL_REFLECTION_INCREASES_ACCESSIBILITY_OF_CLASS to detect public methods instantiating a class they get in their parameter. This rule based on the SEI CERT rule SEC05-J. Do not use reflection to increase accessibility of classes, methods, or fields. (#SEC05-J) @baloghadamsoftware
    • New detector FindOverridableMethodCall to detect invocation of overridable method in constructors (MC_OVERRIDABLE_METHOD_CALL_IN_CONSTRUCTOR) and clone() method (MC_OVERRIDABLE_METHOD_CALL_IN_CLONE), according to SEI CERT rules MET05-J. Ensure that constructors do not call overridable methods and MET06-J. Do not invoke overridable methods in clone(). @baloghadamsoftware
    • Translation of online manual to Brazilian Portuguese (PT-BR). @luana-martins

    Fixed

    • False negative about the rule ES_COMPARING_STRINGS_WITH_EQ (#1764) @KengoTODA
    • False negative about the rule IM_MULTIPLYING_RESULT_OF_IREM ([#1498])(https://github.com/spotbugs/spotbugs/issues/1498) @ecxia

    Deprecated

    • -output command line option is deprecated. Use command line options for report configuration like -xml=spotbugs.xml instead.

    CHECKSUM

    | file | checksum (sha256) | | ---- | ----------------- | | spotbugs-4.5.0-javadoc.jar | 6f11c4d1aa5ad3f77f8d63b7ded099547d2010ee725c6c1d4eb512735726ca69 | | spotbugs-4.5.0-sources.jar | 4bf5daff85cf2e7fbc1b0950be87d7933f1bb80756cf9f55c534a63f07551eb9 | | spotbugs-4.5.0.tgz | 327d5e36afa223737e871114e173c6f2d4543e22c6167bc7825001a752a3cf31 | | spotbugs-4.5.0.zip | 988c43c5c36f3799fe9a0cf9714f95940a2d60764a9aa0af3e6ccc137106b97e | | spotbugs-annotations-4.5.0-javadoc.jar | 76c580b054ce653658d747fcf8aa76d5934f119f2f988cec2e9feafb3f6b9bed | | spotbugs-annotations-4.5.0-sources.jar | b338136e3e82d585348cde58a8fe3a678e16f51a35c31c1463e05fefef557aad | | spotbugs-annotations.jar | 65199ea3fe5dc4d106e30ebf67a92c7c816da816563d75c8ea6da1f0ff662857 | | spotbugs-ant-4.5.0-javadoc.jar | c12a84e031a3ec5a0fd405e1f696f8e32ddd4a43769eb8dd145b77383e0b5506 | | spotbugs-ant-4.5.0-sources.jar | c74dec42c0ed0dd1ae02a7410d8e0f0dbbee23e8e7da4a21910863677fcdbc8e | | spotbugs-ant.jar | b6e73b68e441c001dc42754c73b811625915ae9a759e1ed719df095b41f2979a | | spotbugs.jar | 7063b740850a27bafbfd2d4528bec2faf2ebef9845a96efea47e15ccbc8a9317 | | test-harness-4.5.0-javadoc.jar | a702b967a60c96994963921c8c3f4a98b17adf400bc6740cda46b58edf2e183e | | test-harness-4.5.0-sources.jar | 2c1f5ef929453f3b682c7eb7c1e22db3082b5f74c5a5be439be5dc31dd7a31aa | | test-harness-4.5.0.jar | 45ca0e944ee5704318d79f67815cde7ca5f7fb22814e325d00e2d25d9b552659 | | test-harness-core-4.5.0-javadoc.jar | 094550ca7cbd658e6b0dad428414cc47c3cfecc6d195abb90fc56c9174f2d047 | | test-harness-core-4.5.0-sources.jar | f320f5eb4069e9686b760b2a6a0760989753225f9e9ce1226e3258ec64795d8a | | test-harness-core-4.5.0.jar | fd1a0c06a5eaff50ed0953d42fb7d69a41031c6a6630ad5e47c38a9f0eaca285 | | test-harness-jupiter-4.5.0-javadoc.jar | 507afd57f7fc6c619308c46989efa06aa4a99f1ccd9d9ef4b5aa1b2f3e51f656 | | test-harness-jupiter-4.5.0-sources.jar | 210353a57016e26b1a654d936a15f039613fa1ac532d485c1b1d03902f6c6315 | | test-harness-jupiter-4.5.0.jar | 18095fec31b85981ecaafdef86ca9ae1e9588e1b9bc6d209f82829cf9d0c13f4 |

    Source code(tar.gz)
    Source code(zip)
    eclipsePlugin.zip(9.99 MB)
    spotbugs-4.5.0-source.zip(3.70 MB)
    spotbugs-4.5.0.tgz(12.54 MB)
    spotbugs-4.5.0.tgz.asc(821 bytes)
    spotbugs-4.5.0.zip(12.57 MB)
    spotbugs-4.5.0.zip.asc(821 bytes)
  • 4.4.2(Oct 11, 2021)

    CHANGELOG

    Changed

    • Add bug code to report in fancy-hist.xsl (#1688) @friscoMad
    • Bump Saxon-HE from 10.5 to 10.6 (#1715)

    Fixed

    • Fixed immutable java.lang.Class as being flagged as EI (#1695) @rovarga
    • Agree verb with plural subject in the description of SW_SWING_METHODS_INVOKED_IN_SWING_THREAD (#1664) @pzygielo
    • Wrong description of the SE_TRANSIENT_FIELD_OF_NONSERIALIZABLE_CLASS (#1664) @pzygielo
    • Fixed java.util.Locale as being flagged as EI (#1702) @candrews
    • Fixed reference to java.awt.Cursor which caused it to be flagged as EI (#1702) @candrews
    • Treat types with @com.google.errorprone.annotations.Immutable as immutable (#1705) @rovarga
    • Fix annotation check for jdk.internal.ValueBased (#1706) @rovarga
    • DMI_RANDOM_USED_ONLY_ONCE false positive (#1539) @KengoTODA
    • NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR false negative (#1642) @andipabst
    • Immutable java.util.regex.Pattern as being flagged as EI (#1695) @candrews
    • Resource leak in the JrtfsCodeBase (#1732) @lujiefsi

    CHECKSUM

    | file | checksum (sha256) | | ---- | ----------------- | | spotbugs-4.4.2-javadoc.jar | ebd9595105d8ffa5b04de8cc0ec103d3bad9db0098127fa6a13628b352739cac | | spotbugs-4.4.2-sources.jar | a1a27e7c0bf35d53069cfb6ffe6e6c024ab00dc1c236507bebacae9a7be6ecf4 | | spotbugs-4.4.2.tgz | 459c3b245718338c010c4e2444a5c40900e8455b1127280a7e2515e60212dea1 | | spotbugs-4.4.2.zip | 3972c65e1d32d584e94dd45269f83a70566e8db98c0335bab1f5caf465ca98f5 | | spotbugs-annotations-4.4.2-javadoc.jar | c75937d9ed96191dc2adad18c47c8561b53837e2546aadf207ec41d66bd7ba11 | | spotbugs-annotations-4.4.2-sources.jar | b338136e3e82d585348cde58a8fe3a678e16f51a35c31c1463e05fefef557aad | | spotbugs-annotations.jar | baccf1cae5a8569903707c5429f949934c64feb50e6dba79e33f4dab195c482d | | spotbugs-ant-4.4.2-javadoc.jar | b38d143ed62b41738e15607592fa63df9ce32aff31eb98dca34e567857e3b46d | | spotbugs-ant-4.4.2-sources.jar | c74dec42c0ed0dd1ae02a7410d8e0f0dbbee23e8e7da4a21910863677fcdbc8e | | spotbugs-ant.jar | b6e73b68e441c001dc42754c73b811625915ae9a759e1ed719df095b41f2979a | | spotbugs.jar | b6ad77661a4db83192d866e91c755fb70fc7b06332bb1efd88278461c8cb08b5 | | test-harness-4.4.2-javadoc.jar | 6ccf92a3812913916fb93316b30ee7c460fa9e5790c285815ef4e4df30a7e999 | | test-harness-4.4.2-sources.jar | 2c1f5ef929453f3b682c7eb7c1e22db3082b5f74c5a5be439be5dc31dd7a31aa | | test-harness-4.4.2.jar | 45ca0e944ee5704318d79f67815cde7ca5f7fb22814e325d00e2d25d9b552659 | | test-harness-core-4.4.2-javadoc.jar | 458fbe233430631dccb143da2d24b357d60d6a82caf3c0275f331b917446e39e | | test-harness-core-4.4.2-sources.jar | f320f5eb4069e9686b760b2a6a0760989753225f9e9ce1226e3258ec64795d8a | | test-harness-core-4.4.2.jar | fd1a0c06a5eaff50ed0953d42fb7d69a41031c6a6630ad5e47c38a9f0eaca285 | | test-harness-jupiter-4.4.2-javadoc.jar | e398a17ebd760f48628a774ec40a07390db3442306bc8867ce7ed4be9361cef3 | | test-harness-jupiter-4.4.2-sources.jar | 210353a57016e26b1a654d936a15f039613fa1ac532d485c1b1d03902f6c6315 | | test-harness-jupiter-4.4.2.jar | 18095fec31b85981ecaafdef86ca9ae1e9588e1b9bc6d209f82829cf9d0c13f4 |

    Source code(tar.gz)
    Source code(zip)
    eclipsePlugin.zip(9.97 MB)
    spotbugs-4.4.2-source.zip(3.68 MB)
    spotbugs-4.4.2.tgz(12.51 MB)
    spotbugs-4.4.2.tgz.asc(821 bytes)
    spotbugs-4.4.2.zip(12.54 MB)
    spotbugs-4.4.2.zip.asc(821 bytes)
  • 4.4.1(Sep 10, 2021)

    CHANGELOG

    • https://github.com/spotbugs/spotbugs/blob/4.4.1/CHANGELOG.md

    CHECKSUM

    | file | checksum (sha256) | | ---- | ----------------- | | spotbugs-4.4.1-javadoc.jar | 7021a519365315a5fc0f98a0d2c3ed2b73eb20e61baf5b937453b6d085fa02ef | | spotbugs-4.4.1-sources.jar | 4e6f932cf21f826d30873b0d51c250d5fc5307fd177ec782d38d82f1019c711d | | spotbugs-4.4.1.tgz | 341873c7c4a73508aca6f32f03339aad38c926703accb2e799b5b632b0832bd9 | | spotbugs-4.4.1.zip | 414152869130c22646ff0e6898bba09e9e20d6ade87eeebe912e645b578b9385 | | spotbugs-annotations-4.4.1-javadoc.jar | cd290d907c4ab7a0ef0fcdacbe9059d8fa15a9de2b98f6ab9f5e02625f9ef557 | | spotbugs-annotations-4.4.1-sources.jar | b338136e3e82d585348cde58a8fe3a678e16f51a35c31c1463e05fefef557aad | | spotbugs-annotations.jar | fa5d3b17d585868c74c0e25b3c57c17282f9a3328c73ea5259bfd9ac99c6933a | | spotbugs-ant-4.4.1-javadoc.jar | eb5600fbe8c01fb9d2f0bf33a079ba7f60ca1ffd0fc41bb7f21a1728d7823e9b | | spotbugs-ant-4.4.1-sources.jar | c74dec42c0ed0dd1ae02a7410d8e0f0dbbee23e8e7da4a21910863677fcdbc8e | | spotbugs-ant.jar | 9233e48d37882ae4e7a42e9f42ef4c63d6f802cf8f3b03ba575bee26e5032367 | | spotbugs.jar | 48c53d2fdefbcd7292a05e23b50dbaab29047e3c87096e5129e4e7a627c354a3 | | test-harness-4.4.1-javadoc.jar | 01c8e43294e9c2a394dcdb5224441e65bc9023a414efcd974b7af92ce10ce60a | | test-harness-4.4.1-sources.jar | 2c1f5ef929453f3b682c7eb7c1e22db3082b5f74c5a5be439be5dc31dd7a31aa | | test-harness-4.4.1.jar | 55d3a590b81ffec48293a76c45c0695914b405bf9f02bfb930e3ab99b5867d4f | | test-harness-core-4.4.1-javadoc.jar | 74b76f75cb4e4a8504d6ff09ca8fcff6d0dba19b24979998ae214b230e44c018 | | test-harness-core-4.4.1-sources.jar | f320f5eb4069e9686b760b2a6a0760989753225f9e9ce1226e3258ec64795d8a | | test-harness-core-4.4.1.jar | cbec03867e077079d011e85f9932fb230fae3d909f741cffaa4c8097e91fdf40 | | test-harness-jupiter-4.4.1-javadoc.jar | ad8111b37ab5ff2d33415fbb8bd559526259f316028a4129182a98e5966631e8 | | test-harness-jupiter-4.4.1-sources.jar | 210353a57016e26b1a654d936a15f039613fa1ac532d485c1b1d03902f6c6315 | | test-harness-jupiter-4.4.1.jar | 17e8d78d1868f86e63f3e5e3d878e86f3d7fb1b8cf1a8d5f893333c982bfd3e2 |

    Source code(tar.gz)
    Source code(zip)
    eclipsePlugin.zip(9.91 MB)
    spotbugs-4.4.1-source.zip(3.68 MB)
    spotbugs-4.4.1.tgz(12.45 MB)
    spotbugs-4.4.1.tgz.asc(821 bytes)
    spotbugs-4.4.1.zip(12.47 MB)
    spotbugs-4.4.1.zip.asc(821 bytes)
  • 4.4.0(Aug 13, 2021)

    CHANGELOG

    • https://github.com/spotbugs/spotbugs/blob/4.4.0/CHANGELOG.md

    CHECKSUM

    | file | checksum (sha256) | | ---- | ----------------- | | spotbugs-4.4.0-javadoc.jar | c25c0a3056ccf1ce9ae4c182ab73f6c9626d9031a30bf48857941d6c56ba3cc7 | | spotbugs-4.4.0-sources.jar | 7b9b931b258f1db321fc5fb2e00946594dea976ad51a79a7f3ae48cac17d6c6e | | spotbugs-4.4.0.tgz | 126b952cf248c92fbb7ba07462a71b3400bd1726fed96e179d8a50edd3e40745 | | spotbugs-4.4.0.zip | f5f8b9aba1f3c87a508fbcb6045dcdc748e1ca4ce16803d6676417c9d82fb862 | | spotbugs-annotations-4.4.0-javadoc.jar | 33a7ccc8917b9c5d2a6b133dceb5b212c0079986232a876471df4d7eb843bc8a | | spotbugs-annotations-4.4.0-sources.jar | b338136e3e82d585348cde58a8fe3a678e16f51a35c31c1463e05fefef557aad | | spotbugs-annotations.jar | 383fe580c90e1fea94a3387a8245e096beb792efdca7e04a0bbb4a8cbb81dea2 | | spotbugs-ant-4.4.0-javadoc.jar | da10c9d3273d4367d8c940eec20e2799eba9ae54b920c506478236c241b75a55 | | spotbugs-ant-4.4.0-sources.jar | c74dec42c0ed0dd1ae02a7410d8e0f0dbbee23e8e7da4a21910863677fcdbc8e | | spotbugs-ant.jar | 9233e48d37882ae4e7a42e9f42ef4c63d6f802cf8f3b03ba575bee26e5032367 | | spotbugs.jar | eb02e80126a4cdfb997fe90a1a2c6ff128b114cc7daab77ed3a773bef3adc2ca | | test-harness-4.4.0-javadoc.jar | 4aee854334bb0dbcfd4697443abc0594a96c8c7db12e9e5408839fad4bf75162 | | test-harness-4.4.0-sources.jar | 2c1f5ef929453f3b682c7eb7c1e22db3082b5f74c5a5be439be5dc31dd7a31aa | | test-harness-4.4.0.jar | 55d3a590b81ffec48293a76c45c0695914b405bf9f02bfb930e3ab99b5867d4f | | test-harness-core-4.4.0-javadoc.jar | 76c8694c8051dbc3f5e989448f3746f6da5374e24db22a022b5c2ffe73336f01 | | test-harness-core-4.4.0-sources.jar | f320f5eb4069e9686b760b2a6a0760989753225f9e9ce1226e3258ec64795d8a | | test-harness-core-4.4.0.jar | cbec03867e077079d011e85f9932fb230fae3d909f741cffaa4c8097e91fdf40 | | test-harness-jupiter-4.4.0-javadoc.jar | 7792b72f6e8467508bcc143f9511a341f2b11ae0d10d726b54bf38cc98c37158 | | test-harness-jupiter-4.4.0-sources.jar | 210353a57016e26b1a654d936a15f039613fa1ac532d485c1b1d03902f6c6315 | | test-harness-jupiter-4.4.0.jar | 17e8d78d1868f86e63f3e5e3d878e86f3d7fb1b8cf1a8d5f893333c982bfd3e2 |

    Source code(tar.gz)
    Source code(zip)
    eclipsePlugin.zip(9.91 MB)
    spotbugs-4.4.0-source.zip(3.68 MB)
    spotbugs-4.4.0.tgz(12.44 MB)
    spotbugs-4.4.0.tgz.asc(821 bytes)
    spotbugs-4.4.0.zip(12.47 MB)
    spotbugs-4.4.0.zip.asc(821 bytes)
  • 4.3.0(Jul 1, 2021)

    CHANGELOG

    • https://github.com/spotbugs/spotbugs/blob/4.3.0/CHANGELOG.md

    CHECKSUM

    | file | checksum (sha256) | | ---- | ----------------- | | spotbugs-4.3.0-javadoc.jar | 58eeba2dcdcfd6f73c5203a5745ab1a120ded4df484a6d70124a1dcc0573b37f | | spotbugs-4.3.0-sources.jar | ab8847620bd47be9f20cad53462bce1ae49e5495a75796f9ba8d547a703f346e | | spotbugs-4.3.0.tgz | bf9687476cebe0876d9a27679af97705a79b3f0f5629519ca6ec086741b6d884 | | spotbugs-4.3.0.zip | a1c59df789b14a423f24127501db1bd6b0ae642f079f7212ff61343cd387d7f0 | | spotbugs-annotations-4.3.0-javadoc.jar | a49426fbd559394d176c7bc81c8b601b496768048ce29e6f36e05dfcc42f6c19 | | spotbugs-annotations-4.3.0-sources.jar | b338136e3e82d585348cde58a8fe3a678e16f51a35c31c1463e05fefef557aad | | spotbugs-annotations.jar | ae576422c3a090adc372a4542214a38e195f62ada906184e773a8916d83ec386 | | spotbugs-ant-4.3.0-javadoc.jar | 150875811f177a99c60e8e7afdc5c5d3e58393f84de2662bc32d0409254688a0 | | spotbugs-ant-4.3.0-sources.jar | c74dec42c0ed0dd1ae02a7410d8e0f0dbbee23e8e7da4a21910863677fcdbc8e | | spotbugs-ant.jar | 9233e48d37882ae4e7a42e9f42ef4c63d6f802cf8f3b03ba575bee26e5032367 | | spotbugs.jar | c619ef5233ff1115e5b4ceeacd4bed4070a7e5bd95d9c3172b7376cd0cbb1c72 | | test-harness-4.3.0-javadoc.jar | 463ab8a236314d537f3ff78d229ed5a11a56143db18f1e1c87b64c8d93d1eac4 | | test-harness-4.3.0-sources.jar | 2c1f5ef929453f3b682c7eb7c1e22db3082b5f74c5a5be439be5dc31dd7a31aa | | test-harness-4.3.0.jar | 55d3a590b81ffec48293a76c45c0695914b405bf9f02bfb930e3ab99b5867d4f | | test-harness-core-4.3.0-javadoc.jar | b817f0ca2af5fd603ffdf4d95e5071961a2cb2552bbb9403cf1f5390ca0a37c9 | | test-harness-core-4.3.0-sources.jar | f320f5eb4069e9686b760b2a6a0760989753225f9e9ce1226e3258ec64795d8a | | test-harness-core-4.3.0.jar | cbec03867e077079d011e85f9932fb230fae3d909f741cffaa4c8097e91fdf40 | | test-harness-jupiter-4.3.0-javadoc.jar | 4edbdf0a8293458c1356c0bec95ee7c4e4307e62641127593f8443ba8ddee63b | | test-harness-jupiter-4.3.0-sources.jar | 210353a57016e26b1a654d936a15f039613fa1ac532d485c1b1d03902f6c6315 | | test-harness-jupiter-4.3.0.jar | 17e8d78d1868f86e63f3e5e3d878e86f3d7fb1b8cf1a8d5f893333c982bfd3e2 |

    Source code(tar.gz)
    Source code(zip)
    spotbugs-4.3.0-source.zip(3.68 MB)
    spotbugs-4.3.0.tgz(12.44 MB)
    spotbugs-4.3.0.tgz.asc(821 bytes)
    spotbugs-4.3.0.zip(12.46 MB)
    spotbugs-4.3.0.zip.asc(821 bytes)
  • 4.2.3(Apr 16, 2021)

    CHANGELOG

    • https://github.com/spotbugs/spotbugs/blob/4.2.3/CHANGELOG.md

    CHECKSUM

    | file | checksum (sha256) | | ---- | ----------------- | | spotbugs-4.2.3-javadoc.jar | af6c914147a905ab3f005e3d4fc648dee8a43db257add100880fdf5a6df192d4 | | spotbugs-4.2.3-sources.jar | 402c3719be17797cdac702d3fdfd54667242870270dd5593d1ea2b35c9719ebc | | spotbugs-4.2.3.tgz | 58aebdef157dea61a4a92dd872a54725d052f82e8cae057e9714403d5d403291 | | spotbugs-4.2.3.zip | 86a63ca9aeaeb3ed013a48bdb879a052dff35f1f7049dc0607569292b8bf7fb3 | | spotbugs-annotations-4.2.3-javadoc.jar | 2ae44e915d95c92adbda4c982ee97454472ea06e9422cb4f52bb8ab862a7e9c2 | | spotbugs-annotations-4.2.3-sources.jar | b338136e3e82d585348cde58a8fe3a678e16f51a35c31c1463e05fefef557aad | | spotbugs-annotations.jar | 2c84c2e379bfc173720c4e993b648f2b98339c47d17c46850f3c1c227fc17f78 | | spotbugs-ant-4.2.3-javadoc.jar | f1c1d4c5281944c90af104ea0333fee1473a709f7e2cc42eb12615c5bb2659b2 | | spotbugs-ant-4.2.3-sources.jar | c74dec42c0ed0dd1ae02a7410d8e0f0dbbee23e8e7da4a21910863677fcdbc8e | | spotbugs-ant.jar | 9233e48d37882ae4e7a42e9f42ef4c63d6f802cf8f3b03ba575bee26e5032367 | | spotbugs.jar | f13a9d0e8f64d7b0f1aa1252a01de0a1de70f74bfc6972549a8e6a04acde6360 | | test-harness-4.2.3-javadoc.jar | 00fd4a2e5f7d1ecfb3a682477e3e102dca47738d8f8d73eb61be5dbe20471e8a | | test-harness-4.2.3-sources.jar | 2c1f5ef929453f3b682c7eb7c1e22db3082b5f74c5a5be439be5dc31dd7a31aa | | test-harness-4.2.3.jar | 55d3a590b81ffec48293a76c45c0695914b405bf9f02bfb930e3ab99b5867d4f | | test-harness-core-4.2.3-javadoc.jar | 090d963c3c9a130d465958d98d9f2945919d24419194c12a497fb83bc146f15a | | test-harness-core-4.2.3-sources.jar | f320f5eb4069e9686b760b2a6a0760989753225f9e9ce1226e3258ec64795d8a | | test-harness-core-4.2.3.jar | cbec03867e077079d011e85f9932fb230fae3d909f741cffaa4c8097e91fdf40 | | test-harness-jupiter-4.2.3-javadoc.jar | 2473acd3ee25cfbebd4c5d68d022d1d4e8b91f1ba8eb4019d029f2c2a709d03f | | test-harness-jupiter-4.2.3-sources.jar | 210353a57016e26b1a654d936a15f039613fa1ac532d485c1b1d03902f6c6315 | | test-harness-jupiter-4.2.3.jar | 17e8d78d1868f86e63f3e5e3d878e86f3d7fb1b8cf1a8d5f893333c982bfd3e2 |

    Source code(tar.gz)
    Source code(zip)
    spotbugs-4.2.3-source.zip(3.67 MB)
    spotbugs-4.2.3.tgz(12.42 MB)
    spotbugs-4.2.3.tgz.asc(821 bytes)
    spotbugs-4.2.3.zip(12.45 MB)
    spotbugs-4.2.3.zip.asc(821 bytes)
  • 4.2.2(Mar 3, 2021)

    CHANGELOG

    • https://github.com/spotbugs/spotbugs/blob/4.2.2/CHANGELOG.md

    CHECKSUM

    | file | checksum (sha256) | | ---- | ----------------- | | spotbugs-4.2.2-javadoc.jar | eefe6f33309c4a92e3ebb8c18920b78d0e04dea4d93c45a8266f1341d61bf55b | | spotbugs-4.2.2-sources.jar | 046486ae3e1566df35f55d031f0972a35a192e9b7a6833dfd0199099357d4560 | | spotbugs-4.2.2.tgz | 4967c72396e34b86b9458d0c34c5ed185770a009d357df8e63951ee2844f769f | | spotbugs-4.2.2.zip | fbbfca013d11dfecd8b5fb6aa9f3d3f1b6a2689e5a1cd93afe4ffd99de7a8505 | | spotbugs-annotations-4.2.2-javadoc.jar | f8371fc3c7ce0504f4bc7922f27e5d2e1174165fe0ff7714e19e2eaf0a475187 | | spotbugs-annotations-4.2.2-sources.jar | b338136e3e82d585348cde58a8fe3a678e16f51a35c31c1463e05fefef557aad | | spotbugs-annotations.jar | 5657c480a31883cf3fc6d12e6ae522c9fcc9a6303b45939ee42ca2e0ccf4ed04 | | spotbugs-ant-4.2.2-javadoc.jar | 4234f84ceb71fed02c5dfca7b8a8b33163c9f327b106f66e0bf8bf46e03ef0fc |

    Source code(tar.gz)
    Source code(zip)
    spotbugs-4.2.2-source.zip(3.67 MB)
    spotbugs-4.2.2.tgz(12.44 MB)
    spotbugs-4.2.2.tgz.asc(821 bytes)
    spotbugs-4.2.2.zip(12.46 MB)
    spotbugs-4.2.2.zip.asc(821 bytes)
  • 4.2.1(Feb 4, 2021)

    CHANGELOG

    • https://github.com/spotbugs/spotbugs/blob/4.2.1/CHANGELOG.md

    CHECKSUM

    | file | checksum (sha256) | | ---- | ----------------- | | spotbugs-4.2.1-javadoc.jar | 86dbd559ffe5fd5646fe9a91120213579035d9b9232d6949a456f2b5c771bd02 | | spotbugs-4.2.1-sources.jar | 197aa7e54fb82428ea57a08fd71fcb8148d17319d35556a56cb097dd0bfb382c | | spotbugs-4.2.1.tgz | 4d6f5f68da8ddf037bc82f0146b6e6caff4fc5872b9cd511c1e6136c680093a4 | | spotbugs-4.2.1.zip | 799a0cb35ed1463dc8e4432b36691c37e24c340be9ecca3694b57342cb804370 | | spotbugs-annotations-4.2.1-javadoc.jar | bffff554d33b2397d108dbc768d1d16b4f990b192a9c0205a8fd630bd1796cea | | spotbugs-annotations-4.2.1-sources.jar | b338136e3e82d585348cde58a8fe3a678e16f51a35c31c1463e05fefef557aad | | spotbugs-annotations.jar | e4c4696f05b9b8dc9631f993e7dbd19c1758eb1860786e3eebceb591ca0f3d5d | | spotbugs-ant-4.2.1-javadoc.jar | 5a1309c9b156f7e32f993dec59828cc6e2c20d1dbd049a39edb1ca83aae1e92b | | spotbugs-ant-4.2.1-sources.jar | c74dec42c0ed0dd1ae02a7410d8e0f0dbbee23e8e7da4a21910863677fcdbc8e | | spotbugs-ant.jar | 9233e48d37882ae4e7a42e9f42ef4c63d6f802cf8f3b03ba575bee26e5032367 | | spotbugs.jar | cec3251a5e8b3850f9495fdf7069432889bc774fff8ae10e0cb6a464503d6303 | | test-harness-4.2.1-javadoc.jar | 3ade765746b79b8eaf7b4df8e2499a800ca9b1a91f577de53b34a109cec1fff2 | | test-harness-4.2.1-sources.jar | 2c1f5ef929453f3b682c7eb7c1e22db3082b5f74c5a5be439be5dc31dd7a31aa | | test-harness-4.2.1.jar | 55d3a590b81ffec48293a76c45c0695914b405bf9f02bfb930e3ab99b5867d4f | | test-harness-core-4.2.1-javadoc.jar | a867b95c52da44c0471991db890df3a2cba6e05189be22c3ba8a18f70579fc29 | | test-harness-core-4.2.1-sources.jar | f320f5eb4069e9686b760b2a6a0760989753225f9e9ce1226e3258ec64795d8a | | test-harness-core-4.2.1.jar | cbec03867e077079d011e85f9932fb230fae3d909f741cffaa4c8097e91fdf40 | | test-harness-jupiter-4.2.1-javadoc.jar | ad74122b419512c22182d6879482a68303b29b81749ed2d6de15a39bed761dfe | | test-harness-jupiter-4.2.1-sources.jar | 210353a57016e26b1a654d936a15f039613fa1ac532d485c1b1d03902f6c6315 | | test-harness-jupiter-4.2.1.jar | 17e8d78d1868f86e63f3e5e3d878e86f3d7fb1b8cf1a8d5f893333c982bfd3e2 |

    Source code(tar.gz)
    Source code(zip)
    spotbugs-4.2.1-source.zip(3.67 MB)
    spotbugs-4.2.1.tgz(12.28 MB)
    spotbugs-4.2.1.tgz.asc(821 bytes)
    spotbugs-4.2.1.zip(12.30 MB)
    spotbugs-4.2.1.zip.asc(821 bytes)
  • 4.2.0(Nov 28, 2020)

    CHANGELOG

    • https://github.com/spotbugs/spotbugs/blob/4.2.0/CHANGELOG.md

    CHECKSUM

    | file | checksum (sha256) | | ---- | ----------------- | | spotbugs-4.2.0-javadoc.jar | 351df25a8ff5dcce9b14de670e1dbe0c6808d796686978ecee8821dbf305e5d0 | | spotbugs-4.2.0-sources.jar | 95b25a75d6e36f2d3f4d501795db6a7468bfe23ddcc9e7496065d2bee6f36d9d | | spotbugs-4.2.0.tgz | f5e2ad6e94515923a8b9a6db370d3b34a3aad9eda13315146b9bbd03bcbe7e30 | | spotbugs-4.2.0.zip | 4d16c579b8622a72ee57cc5c3e730ad78c8107208528f7de875976a9dd840443 | | spotbugs-annotations-4.2.0-javadoc.jar | c18c4c920acec9cb7b9c204ecc78998c5bccf9150c5a8cecd2fdc25e565be71b | | spotbugs-annotations-4.2.0-sources.jar | b338136e3e82d585348cde58a8fe3a678e16f51a35c31c1463e05fefef557aad | | spotbugs-annotations.jar | 871aee8bb3f7400a0d09e9675dcd7388da584169f4aab3565efc5a3f5bc90eab | | spotbugs-ant-4.2.0-javadoc.jar | a88414de79a0c1cf420058583fe64a746e2ebe6a918f91f4e7d183c06a452810 | | spotbugs-ant-4.2.0-sources.jar | c74dec42c0ed0dd1ae02a7410d8e0f0dbbee23e8e7da4a21910863677fcdbc8e | | spotbugs-ant.jar | 9233e48d37882ae4e7a42e9f42ef4c63d6f802cf8f3b03ba575bee26e5032367 | | spotbugs.jar | 4d48063a6f7b623936b68e150ea73499f6bfeb5d1bc4769214e04a9c8804132e | | test-harness-4.2.0-javadoc.jar | bb4f6fdbc17757577685317cb41557ed2c08822850fdb9e23eb5fd19c07f5b0a | | test-harness-4.2.0-sources.jar | 2c1f5ef929453f3b682c7eb7c1e22db3082b5f74c5a5be439be5dc31dd7a31aa | | test-harness-4.2.0.jar | 55d3a590b81ffec48293a76c45c0695914b405bf9f02bfb930e3ab99b5867d4f | | test-harness-core-4.2.0-javadoc.jar | 3723e59c0430cd555c55c2082d24b93419711de47ce41e49cc5e072b0fe1f452 | | test-harness-core-4.2.0-sources.jar | f320f5eb4069e9686b760b2a6a0760989753225f9e9ce1226e3258ec64795d8a | | test-harness-core-4.2.0.jar | cbec03867e077079d011e85f9932fb230fae3d909f741cffaa4c8097e91fdf40 | | test-harness-jupiter-4.2.0-javadoc.jar | 4a1c523c1d1f0d1095ab1e4185f4e63390ecfde5759e7611a2e41c05ce0c5a4d | | test-harness-jupiter-4.2.0-sources.jar | 210353a57016e26b1a654d936a15f039613fa1ac532d485c1b1d03902f6c6315 | | test-harness-jupiter-4.2.0.jar | 17e8d78d1868f86e63f3e5e3d878e86f3d7fb1b8cf1a8d5f893333c982bfd3e2 |

    Source code(tar.gz)
    Source code(zip)
    spotbugs-4.2.0-source.zip(3.67 MB)
    spotbugs-4.2.0.tgz(12.28 MB)
    spotbugs-4.2.0.tgz.asc(821 bytes)
    spotbugs-4.2.0.zip(12.30 MB)
    spotbugs-4.2.0.zip.asc(821 bytes)
  • 4.1.4(Oct 15, 2020)

    CHANGELOG

    • https://github.com/spotbugs/spotbugs/blob/4.1.4/CHANGELOG.md

    CHECKSUM

    | file | checksum (sha256) | | ---- | ----------------- | | spotbugs-4.1.4-javadoc.jar | 32fd9b5cbc6cca027183d72de3dbef2bf4670b461f42db4eefab2e8cc7fa0e1f | | spotbugs-4.1.4-sources.jar | b36f8138c79be464f270c5fb9a89f53481c7282a857115f45f95e5d462dabeee | | spotbugs-4.1.4.tgz | 2e6ebf87f92887e06d3a5aa29a2c3331c7ed089019aca1529670e156c6b0849e | | spotbugs-4.1.4.zip | 80d37786abecb607937402517a778bd0ef2bf4ae49639994852104807ecd63b4 | | spotbugs-annotations-4.1.4-javadoc.jar | 9fc57182b3293d8834a87e691de7ac2e35824518f80fc480c59e6bf51e141c92 | | spotbugs-annotations-4.1.4-sources.jar | b338136e3e82d585348cde58a8fe3a678e16f51a35c31c1463e05fefef557aad | | spotbugs-annotations.jar | f4d784f99c40cd7240cc36cd9288ff89e03b00681f282ee7cca2348e364ce0a1 | | spotbugs-ant-4.1.4-javadoc.jar | 1ded0d8eb8cb3724f4d2c4e523c3c3254ef1cd2e4a8510a32314f13c2a01d9cc | | spotbugs-ant-4.1.4-sources.jar | c74dec42c0ed0dd1ae02a7410d8e0f0dbbee23e8e7da4a21910863677fcdbc8e | | spotbugs-ant.jar | 9233e48d37882ae4e7a42e9f42ef4c63d6f802cf8f3b03ba575bee26e5032367 | | spotbugs.jar | 9407c27b324ad493479e3c2365e01444ce88db0fa86c835940c0f9ddd746f268 | | test-harness-4.1.4-javadoc.jar | 4459cdd093609a36e00c4fc4444d3bd95baa05ef9c14f3b6c8d21981992b529f | | test-harness-4.1.4-sources.jar | 2c1f5ef929453f3b682c7eb7c1e22db3082b5f74c5a5be439be5dc31dd7a31aa | | test-harness-4.1.4.jar | 55d3a590b81ffec48293a76c45c0695914b405bf9f02bfb930e3ab99b5867d4f | | test-harness-core-4.1.4-javadoc.jar | ad09ce092b138a5b1c0410e67620da269451d5d3f71540382b35017f68312e00 | | test-harness-core-4.1.4-sources.jar | f320f5eb4069e9686b760b2a6a0760989753225f9e9ce1226e3258ec64795d8a | | test-harness-core-4.1.4.jar | cbec03867e077079d011e85f9932fb230fae3d909f741cffaa4c8097e91fdf40 | | test-harness-jupiter-4.1.4-javadoc.jar | 25ce5464579a7d2a5b320351ce2d9fe9f18476485778b63bd810629d705542a4 | | test-harness-jupiter-4.1.4-sources.jar | 210353a57016e26b1a654d936a15f039613fa1ac532d485c1b1d03902f6c6315 | | test-harness-jupiter-4.1.4.jar | 17e8d78d1868f86e63f3e5e3d878e86f3d7fb1b8cf1a8d5f893333c982bfd3e2 |

    Source code(tar.gz)
    Source code(zip)
    spotbugs-4.1.4-source.zip(3.67 MB)
    spotbugs-4.1.4.tgz(12.22 MB)
    spotbugs-4.1.4.tgz.asc(821 bytes)
    spotbugs-4.1.4.zip(12.24 MB)
    spotbugs-4.1.4.zip.asc(821 bytes)
  • 4.1.3(Sep 24, 2020)

    CHANGELOG

    • https://github.com/spotbugs/spotbugs/blob/4.1.3/CHANGELOG.md

    CHECKSUM

    | file | checksum (sha256) | | ---- | ----------------- | | spotbugs-4.1.3-javadoc.jar | 695e24f667c12168782861fa7b8e5403b47be29eb7b018b8311b4167aa87f0b3 | | spotbugs-4.1.3-sources.jar | dc5821a26467927527cc56dc461ef90121afc66343f8dcce525edb2e03f04330 | | spotbugs-4.1.3.tgz | 4c5ad9f3b8e592c07c980c63a4838d1f9169b9f6472ffdbe813c0df6c29522c3 | | spotbugs-4.1.3.zip | b815b43f9eef93c378de89124ba9bb3f9698a873d57ee2140241ea344b75b123 | | spotbugs-annotations-4.1.3-javadoc.jar | e52346ab3fb6d79166b87594599e489f2a1718a096ad9f3caf59c8339e0c8264 | | spotbugs-annotations-4.1.3-sources.jar | b338136e3e82d585348cde58a8fe3a678e16f51a35c31c1463e05fefef557aad | | spotbugs-annotations.jar | d11139edf901fe95d7515f495e617df135d50341ded53ff5956eff899feafb2b | | spotbugs-ant-4.1.3-javadoc.jar | 724245ff73e660a806ca90d9f887375f6a76a81c8bdb32c598bd13b4f99da3a9 | | spotbugs-ant-4.1.3-sources.jar | c74dec42c0ed0dd1ae02a7410d8e0f0dbbee23e8e7da4a21910863677fcdbc8e | | spotbugs-ant.jar | 9233e48d37882ae4e7a42e9f42ef4c63d6f802cf8f3b03ba575bee26e5032367 | | spotbugs.jar | b8e89b98c63563ba449941795b67fd96d00f7da910748a682ecb9425d3a03ca2 | | test-harness-4.1.3-javadoc.jar | 7dc0c73d07dd373796c613ad0db7dd4c13a566834520b7dca5b77d4cbdd3344b | | test-harness-4.1.3-sources.jar | 2c1f5ef929453f3b682c7eb7c1e22db3082b5f74c5a5be439be5dc31dd7a31aa | | test-harness-4.1.3.jar | 55d3a590b81ffec48293a76c45c0695914b405bf9f02bfb930e3ab99b5867d4f | | test-harness-core-4.1.3-javadoc.jar | 70ff5a98891a9ca2f65f6bab0c2e5edc177ab53ad3386c5f8df51ef551cf744d | | test-harness-core-4.1.3-sources.jar | f320f5eb4069e9686b760b2a6a0760989753225f9e9ce1226e3258ec64795d8a | | test-harness-core-4.1.3.jar | cbec03867e077079d011e85f9932fb230fae3d909f741cffaa4c8097e91fdf40 | | test-harness-jupiter-4.1.3-javadoc.jar | 32e1d48fd45c4d586086512e81447fbe5e18cc17a6e6217d125fce8bd625d09b | | test-harness-jupiter-4.1.3-sources.jar | 210353a57016e26b1a654d936a15f039613fa1ac532d485c1b1d03902f6c6315 | | test-harness-jupiter-4.1.3.jar | 17e8d78d1868f86e63f3e5e3d878e86f3d7fb1b8cf1a8d5f893333c982bfd3e2 |

    Source code(tar.gz)
    Source code(zip)
    spotbugs-4.1.3-source.zip(3.66 MB)
    spotbugs-4.1.3.tgz(12.21 MB)
    spotbugs-4.1.3.tgz.asc(821 bytes)
    spotbugs-4.1.3.zip(12.23 MB)
    spotbugs-4.1.3.zip.asc(821 bytes)
  • 4.1.2(Aug 19, 2020)

    CHANGELOG

    • https://github.com/spotbugs/spotbugs/blob/4.1.2/CHANGELOG.md

    CHECKSUM

    | file | checksum (sha256) | | ---- | ----------------- | | spotbugs-4.1.2-javadoc.jar | f21a06ae973f06611a18617c9daae5b238c40bb45e1b1adcf92594a55a5e334c | | spotbugs-4.1.2-sources.jar | 404096315daacd555d4003b062d5098300d961a554b4844b3f57b867c3d970ae | | spotbugs-4.1.2.tgz | 575dd1aa4b25b0a5f9766c35ee6ca1d40a3bec8ad02f9f7bb3037f467c60c76f | | spotbugs-4.1.2.zip | c104f6aaa95d7c5d1bd9040d38b7f80038995e663f8c84ac8b32423362d290eb | | spotbugs-annotations-4.1.2-javadoc.jar | 24767403128c0ecf1f96a6309d243ac471c2ba6686d945d90c7e5a4435244ca5 | | spotbugs-annotations-4.1.2-sources.jar | b338136e3e82d585348cde58a8fe3a678e16f51a35c31c1463e05fefef557aad | | spotbugs-annotations.jar | f5cc685edd99ccae7e9b851613146cf49f2557a4e056dfdd8e7906fe919f826f | | spotbugs-ant-4.1.2-javadoc.jar | c0f510848cb6729531353898c3e3256d2ea68e3b21bcb305a1a2b8db581b7f85 | | spotbugs-ant-4.1.2-sources.jar | c74dec42c0ed0dd1ae02a7410d8e0f0dbbee23e8e7da4a21910863677fcdbc8e | | spotbugs-ant.jar | a9f1c4ea228ce3c4bb11065b26806f5e2d4ffe457a95a012166b11a58164cc19 | | spotbugs.jar | 819963733311a55503e185bee7debed6983aa54ca7a7cb91643e0fe18287bf0e | | test-harness-4.1.2-javadoc.jar | f1f94b227af60404f0b4634aa60bf68ef963d23c46e26b3a704822164fe70002 | | test-harness-4.1.2-sources.jar | 2c1f5ef929453f3b682c7eb7c1e22db3082b5f74c5a5be439be5dc31dd7a31aa | | test-harness-4.1.2.jar | e6d72665dcaed1afd413541f211992924ffc2d4d64dc54f1a8f0bfa494853596 | | test-harness-core-4.1.2-javadoc.jar | cc9dcfee824f7a245f34e9988e432b44784e0ba27712805a67919501d8eb5179 | | test-harness-core-4.1.2-sources.jar | f320f5eb4069e9686b760b2a6a0760989753225f9e9ce1226e3258ec64795d8a | | test-harness-core-4.1.2.jar | de97934146238f9ae23707bd14e3cea3f12bd89f3dde2b6b0648e41f11815418 | | test-harness-jupiter-4.1.2-javadoc.jar | 84e341982a3f3c8020a47fc7879a0ad9036169b3859165b53a9d7990168dcc4b | | test-harness-jupiter-4.1.2-sources.jar | 210353a57016e26b1a654d936a15f039613fa1ac532d485c1b1d03902f6c6315 | | test-harness-jupiter-4.1.2.jar | 17e8d78d1868f86e63f3e5e3d878e86f3d7fb1b8cf1a8d5f893333c982bfd3e2 |

    Source code(tar.gz)
    Source code(zip)
    spotbugs-4.1.2-source.zip(3.66 MB)
    spotbugs-4.1.2.tgz(12.22 MB)
    spotbugs-4.1.2.tgz.asc(821 bytes)
    spotbugs-4.1.2.zip(12.24 MB)
    spotbugs-4.1.2.zip.asc(821 bytes)
  • 4.1.1(Jul 31, 2020)

    CHANGELOG

    • https://github.com/spotbugs/spotbugs/blob/4.1.1/CHANGELOG.md

    CHECKSUM

    | file | checksum (sha256) | | ---- | ----------------- | | spotbugs-4.1.1-javadoc.jar | c32ee94fb3574b1650d46d9cea024c086ac8ec3e018e74bfb5af3a6827ca3806 | | spotbugs-4.1.1-sources.jar | fb6c6887a0665d1178575a22603661cb0e8816a16e302a2f47a9ab56d9f505c4 | | spotbugs-4.1.1.tgz | bc31c8d567067ba646fcd5e2e988b31c6f1ff8c444162b76914388b76b409f27 | | spotbugs-4.1.1.zip | 0d073986bef1016a3feaeadfca97bba46f3eefd98fcfdcba52f8f173eca7c4a7 | | spotbugs-annotations-4.1.1-javadoc.jar | 412920d392c7d433541afb905ffdc7f22998f0c2417c2f697a9c996cef703bc7 | | spotbugs-annotations-4.1.1-sources.jar | b338136e3e82d585348cde58a8fe3a678e16f51a35c31c1463e05fefef557aad | | spotbugs-annotations.jar | 347f4c363db00c0a71da23698bdbb2aa8ede321a56aa41eae2e89ad9731d5288 | | spotbugs-ant-4.1.1-javadoc.jar | 2344c3e5a6d4a19211a4ad2b14ecfd0ba8817299ce0b8c4f670b3490e18e3db2 | | spotbugs-ant-4.1.1-sources.jar | c74dec42c0ed0dd1ae02a7410d8e0f0dbbee23e8e7da4a21910863677fcdbc8e | | spotbugs-ant.jar | a9f1c4ea228ce3c4bb11065b26806f5e2d4ffe457a95a012166b11a58164cc19 | | spotbugs.jar | 8cdf641bc6b46fafc856eeaff436996fb7ac8e746b02521329b0b7d4161cad20 | | test-harness-4.1.1-javadoc.jar | 5fae8ea76f9738067091126b8dbb9ba7acafbc99dc0d1645cb75f4ccd3c47277 | | test-harness-4.1.1-sources.jar | 2c1f5ef929453f3b682c7eb7c1e22db3082b5f74c5a5be439be5dc31dd7a31aa | | test-harness-4.1.1.jar | e6d72665dcaed1afd413541f211992924ffc2d4d64dc54f1a8f0bfa494853596 | | test-harness-core-4.1.1-javadoc.jar | 25a086a7b45bd89d0ada1ab352b0f2f5b476a901559c503eb3524a9db0bbc81a | | test-harness-core-4.1.1-sources.jar | f320f5eb4069e9686b760b2a6a0760989753225f9e9ce1226e3258ec64795d8a | | test-harness-core-4.1.1.jar | de97934146238f9ae23707bd14e3cea3f12bd89f3dde2b6b0648e41f11815418 | | test-harness-jupiter-4.1.1-javadoc.jar | 852c7886d989042dbb07971052fb875b92e2e8fd946699869a973b1684d58248 | | test-harness-jupiter-4.1.1-sources.jar | 210353a57016e26b1a654d936a15f039613fa1ac532d485c1b1d03902f6c6315 | | test-harness-jupiter-4.1.1.jar | 17e8d78d1868f86e63f3e5e3d878e86f3d7fb1b8cf1a8d5f893333c982bfd3e2 |

    Source code(tar.gz)
    Source code(zip)
    spotbugs-4.1.1-source.zip(3.66 MB)
    spotbugs-4.1.1.tgz(12.22 MB)
    spotbugs-4.1.1.tgz.asc(821 bytes)
    spotbugs-4.1.1.zip(12.24 MB)
    spotbugs-4.1.1.zip.asc(821 bytes)
  • 4.1.0(Jul 30, 2020)

    CHANGELOG

    • https://github.com/spotbugs/spotbugs/blob/4.1.0/CHANGELOG.md

    CHECKSUM

    | file | checksum (sha256) | | ---- | ----------------- | | spotbugs-4.1.0-javadoc.jar | 25abcf49578fc2ebab7afec54609fd3cb6697bea7141841817d1159a161a5bed | | spotbugs-4.1.0-sources.jar | fb6c6887a0665d1178575a22603661cb0e8816a16e302a2f47a9ab56d9f505c4 | | spotbugs-4.1.0.tgz | a55e5de1bfc402adf69d94560d4cc05a558564d3dc695e306c4d8d177725c69a | | spotbugs-4.1.0.zip | 4408822136647d26f02d6e5ab9b47a2b66c5156694a626822bc55544c5a69985 | | spotbugs-annotations-4.1.0-javadoc.jar | 761b305fa3f7af5ce9769324ffc7b51e0b5be6305f9980e23a7aa30f0d128e20 | | spotbugs-annotations-4.1.0-sources.jar | b338136e3e82d585348cde58a8fe3a678e16f51a35c31c1463e05fefef557aad | | spotbugs-annotations.jar | d646d273fb78ba3b15d6ae6e74a91249ca1c807c6082fd4e30b47185dd584714 | | spotbugs-ant-4.1.0-javadoc.jar | 6edac0cceafab35e8bde0b3620dd09914a1b2511e2e98557e9fde38894a6dd7a | | spotbugs-ant-4.1.0-sources.jar | c74dec42c0ed0dd1ae02a7410d8e0f0dbbee23e8e7da4a21910863677fcdbc8e | | spotbugs-ant.jar | a9f1c4ea228ce3c4bb11065b26806f5e2d4ffe457a95a012166b11a58164cc19 | | spotbugs.jar | b9c5841a82040ecaffb81a796d1927397ad2a67dc22d5d7df85c160e42ba5d39 | | test-harness-4.1.0-javadoc.jar | 6fee1b2b61c50631d4349ddf089124e71f80c1df857b309e126c51861a20b678 | | test-harness-4.1.0-sources.jar | 2c1f5ef929453f3b682c7eb7c1e22db3082b5f74c5a5be439be5dc31dd7a31aa | | test-harness-4.1.0.jar | e6d72665dcaed1afd413541f211992924ffc2d4d64dc54f1a8f0bfa494853596 | | test-harness-core-4.1.0-javadoc.jar | 6d1d45b6124cb75ff038304fc034c2b52fec003a9a96e3aeaae0a65d69ddfc89 | | test-harness-core-4.1.0-sources.jar | f320f5eb4069e9686b760b2a6a0760989753225f9e9ce1226e3258ec64795d8a | | test-harness-core-4.1.0.jar | de97934146238f9ae23707bd14e3cea3f12bd89f3dde2b6b0648e41f11815418 | | test-harness-jupiter-4.1.0-javadoc.jar | ec78a4196fa9adf9190b2a5346b2afbb31f4832b076c75b5be5117411dbd4741 | | test-harness-jupiter-4.1.0-sources.jar | 210353a57016e26b1a654d936a15f039613fa1ac532d485c1b1d03902f6c6315 | | test-harness-jupiter-4.1.0.jar | 17e8d78d1868f86e63f3e5e3d878e86f3d7fb1b8cf1a8d5f893333c982bfd3e2 |

    Source code(tar.gz)
    Source code(zip)
    spotbugs-4.1.0-source.zip(3.66 MB)
    spotbugs-4.1.0.tgz(12.22 MB)
    spotbugs-4.1.0.tgz.asc(821 bytes)
    spotbugs-4.1.0.zip(12.24 MB)
    spotbugs-4.1.0.zip.asc(821 bytes)
  • 4.0.6(Jun 23, 2020)

    CHANGELOG

    • https://github.com/spotbugs/spotbugs/blob/4.0.6/CHANGELOG.md

    CHECKSUM

    | file | checksum (sha256) | | ---- | ----------------- | | spotbugs-4.0.6-javadoc.jar | 97c237438f7fd2a72a24c1ac71e663d59638b4fc3a1ffd982bf2a8c060528fc6 | | spotbugs-4.0.6-sources.jar | 7a98d7b31bad531c2fd86fb6bbefcd20572906fa0147e525847052ba2d10d821 | | spotbugs-4.0.6.tgz | 9fa5d77421a34c44a647bf1e03f75e9767c69aea35d626f41330ead7f84bd45e | | spotbugs-4.0.6.zip | e7cf2cfc55cfef74e9259dc71fc21186be8968833ec96f3e2d2bd7781890c3e0 | | spotbugs-annotations-4.0.6-javadoc.jar | c59eedd60d5e4a2a73fea02b8104e7648a10c5b8cd2cb282e48042543863cc72 | | spotbugs-annotations-4.0.6-sources.jar | b338136e3e82d585348cde58a8fe3a678e16f51a35c31c1463e05fefef557aad | | spotbugs-annotations.jar | 7b42ae56ce79dce6fa02d2f8422547c79b9e4f984320db967361400322bc3fd3 | | spotbugs-ant-4.0.6-javadoc.jar | bf0866c165ace734f40c8898e1fc7c5480fc84d3390f4fb68822635cf4b3c611 | | spotbugs-ant-4.0.6-sources.jar | c74dec42c0ed0dd1ae02a7410d8e0f0dbbee23e8e7da4a21910863677fcdbc8e | | spotbugs-ant.jar | a9f1c4ea228ce3c4bb11065b26806f5e2d4ffe457a95a012166b11a58164cc19 | | spotbugs.jar | d4568b95e6af0f4e5eb1ed9ebda50c6b69a9263c47c92872fa25dcdea8dc7089 | | test-harness-4.0.6-javadoc.jar | 4ff3feabf689a72e1f3906b2897e68c9112182e307d6e4f8f6ea2e7ecaae9089 | | test-harness-4.0.6-sources.jar | 2c1f5ef929453f3b682c7eb7c1e22db3082b5f74c5a5be439be5dc31dd7a31aa | | test-harness-4.0.6.jar | e6d72665dcaed1afd413541f211992924ffc2d4d64dc54f1a8f0bfa494853596 | | test-harness-core-4.0.6-javadoc.jar | 34f39cfcc80b56908f778977a9170e7e8d3a684abb784babdee8a6988389f661 | | test-harness-core-4.0.6-sources.jar | f320f5eb4069e9686b760b2a6a0760989753225f9e9ce1226e3258ec64795d8a | | test-harness-core-4.0.6.jar | de97934146238f9ae23707bd14e3cea3f12bd89f3dde2b6b0648e41f11815418 | | test-harness-jupiter-4.0.6-javadoc.jar | 5958fe8d67f31b6d24781df01bbb8253a326d95733138538342d46be87deb5a5 | | test-harness-jupiter-4.0.6-sources.jar | 210353a57016e26b1a654d936a15f039613fa1ac532d485c1b1d03902f6c6315 | | test-harness-jupiter-4.0.6.jar | 17e8d78d1868f86e63f3e5e3d878e86f3d7fb1b8cf1a8d5f893333c982bfd3e2 |

    Source code(tar.gz)
    Source code(zip)
    spotbugs-4.0.6-source.zip(3.64 MB)
    spotbugs-4.0.6.tgz(23.11 MB)
    spotbugs-4.0.6.tgz.asc(821 bytes)
    spotbugs-4.0.6.zip(23.13 MB)
    spotbugs-4.0.6.zip.asc(821 bytes)
  • 4.0.5(Jun 20, 2020)

    CHANGELOG

    • https://github.com/spotbugs/spotbugs/blob/4.0.5/CHANGELOG.md

    CHECKSUM

    | file | checksum (sha256) | | ---- | ----------------- | | spotbugs-4.0.5-javadoc.jar | caad8841d0eba0daf27584b5fcfe00b50d005b5dc76052797c182c58dcbffb65 | | spotbugs-4.0.5-sources.jar | 6e96c6bb9c09de3e527ab8bf77de8bd3a4eb6071d8420febe3b20fba04d37200 | | spotbugs-4.0.5.tgz | c04eec3d0a144236802dd78ad4d4e7893568d6a066b5e3e5c3ae996082e36d18 | | spotbugs-4.0.5.zip | fc1f769834aee627896d4a06ddba4e8f136bb6d94a91012b4f9f39fccf7eea42 | | spotbugs-annotations-4.0.5-javadoc.jar | 0d4105d55089033b09e32381b99eb46731e0ce2e2471a26dc9b6879682cf539f | | spotbugs-annotations-4.0.5-sources.jar | b338136e3e82d585348cde58a8fe3a678e16f51a35c31c1463e05fefef557aad | | spotbugs-annotations.jar | 3b86a42dc462c7a468a938ce9ea2bd55bfb919441e0b1893d813687b2fac4273 | | spotbugs-ant-4.0.5-javadoc.jar | 951ee6595e4d96b59e8435e613f1755951dc4469147c5d98765669ad3b0f3e9d | | spotbugs-ant-4.0.5-sources.jar | c74dec42c0ed0dd1ae02a7410d8e0f0dbbee23e8e7da4a21910863677fcdbc8e | | spotbugs-ant.jar | a9f1c4ea228ce3c4bb11065b26806f5e2d4ffe457a95a012166b11a58164cc19 | | spotbugs.jar | 2534ef33850b988431e1686ebee7625eb194e7bf3c70476f1213c2c00e0ea7c1 | | test-harness-4.0.5-javadoc.jar | 6ae7845c988495fb3205eb58c08ba2f337ad37033b4430396440f268b0c5d457 | | test-harness-4.0.5-sources.jar | 2c1f5ef929453f3b682c7eb7c1e22db3082b5f74c5a5be439be5dc31dd7a31aa | | test-harness-4.0.5.jar | e6d72665dcaed1afd413541f211992924ffc2d4d64dc54f1a8f0bfa494853596 | | test-harness-core-4.0.5-javadoc.jar | 094749e39b2af25c841f5e2d445705ca4eb5bd8d24b14d46afb58fefe7a9fd99 | | test-harness-core-4.0.5-sources.jar | f320f5eb4069e9686b760b2a6a0760989753225f9e9ce1226e3258ec64795d8a | | test-harness-core-4.0.5.jar | de97934146238f9ae23707bd14e3cea3f12bd89f3dde2b6b0648e41f11815418 | | test-harness-jupiter-4.0.5-javadoc.jar | baa0ed8199f29624e696d9797dc8ea32ef0c62047d777049c36e89fa904f7969 | | test-harness-jupiter-4.0.5-sources.jar | 210353a57016e26b1a654d936a15f039613fa1ac532d485c1b1d03902f6c6315 | | test-harness-jupiter-4.0.5.jar | 17e8d78d1868f86e63f3e5e3d878e86f3d7fb1b8cf1a8d5f893333c982bfd3e2 |

    Source code(tar.gz)
    Source code(zip)
    spotbugs-4.0.5-source.zip(3.64 MB)
    spotbugs-4.0.5.tgz(23.11 MB)
    spotbugs-4.0.5.tgz.asc(821 bytes)
    spotbugs-4.0.5.zip(23.13 MB)
    spotbugs-4.0.5.zip.asc(821 bytes)
  • 4.0.4(Jun 9, 2020)

    CHANGELOG

    • https://github.com/spotbugs/spotbugs/blob/4.0.4/CHANGELOG.md

    CHECKSUM

    | file | checksum (sha256) | | ---- | ----------------- | | spotbugs-4.0.4-javadoc.jar | 1662005c2ba2e8c9b4eff2e9c8554d61575271ec273dfccad66bcf115e4f4bea | | spotbugs-4.0.4-sources.jar | ae6f7109565e4c5a5b204569b41954bcd2f8d9badca2fc3e5cfdffe53576336f | | spotbugs-4.0.4.tgz | eff36aff1ce8d3326d317919aa0d7e92361d535b823befc26b7cf8e598ca660d | | spotbugs-4.0.4.zip | 204adbdaa0fa51fedf738b405a1fda65c693f39c66f754e8c4f93323a2c77a8d | | spotbugs-annotations-4.0.4-javadoc.jar | 9eea9f952c3e23e53479c4249318f219d188533eb43457a62d47f1c6c367a0cc | | spotbugs-annotations-4.0.4-sources.jar | b338136e3e82d585348cde58a8fe3a678e16f51a35c31c1463e05fefef557aad | | spotbugs-annotations.jar | 460da898f7696e40b109687a0099240ab36e8b442987df222454b0e5595f3c9d | | spotbugs-ant-4.0.4-javadoc.jar | 6b8b2d738e38fb0744e53b5480d7077b5076723f8c0fd08e9cff4a57bb0997f3 | | spotbugs-ant-4.0.4-sources.jar | c74dec42c0ed0dd1ae02a7410d8e0f0dbbee23e8e7da4a21910863677fcdbc8e | | spotbugs-ant.jar | a9f1c4ea228ce3c4bb11065b26806f5e2d4ffe457a95a012166b11a58164cc19 | | spotbugs.jar | 1388a164d1129508e780c9ba76f58c3ce8e36fa65d6824c4bbcbafe8e60dbf51 | | test-harness-4.0.4-javadoc.jar | dacb076e59e912be320cc269bb8a8411de8ccb156fb7017663bb748dc84cc559 | | test-harness-4.0.4-sources.jar | 2c1f5ef929453f3b682c7eb7c1e22db3082b5f74c5a5be439be5dc31dd7a31aa | | test-harness-4.0.4.jar | e6d72665dcaed1afd413541f211992924ffc2d4d64dc54f1a8f0bfa494853596 | | test-harness-core-4.0.4-javadoc.jar | 205a3a90820f4c4f6fb78ea061b56dd077eb7b9097dfe2c34e30bc7cc4b62b47 | | test-harness-core-4.0.4-sources.jar | f320f5eb4069e9686b760b2a6a0760989753225f9e9ce1226e3258ec64795d8a | | test-harness-core-4.0.4.jar | de97934146238f9ae23707bd14e3cea3f12bd89f3dde2b6b0648e41f11815418 | | test-harness-jupiter-4.0.4-javadoc.jar | 2cc61d478c2683a78f32323221b56b0154da5f46a66309a7dc953acd9592f6f4 | | test-harness-jupiter-4.0.4-sources.jar | 210353a57016e26b1a654d936a15f039613fa1ac532d485c1b1d03902f6c6315 | | test-harness-jupiter-4.0.4.jar | 17e8d78d1868f86e63f3e5e3d878e86f3d7fb1b8cf1a8d5f893333c982bfd3e2 |

    Source code(tar.gz)
    Source code(zip)
    spotbugs-4.0.4-source.zip(3.64 MB)
    spotbugs-4.0.4.tgz(23.12 MB)
    spotbugs-4.0.4.tgz.asc(821 bytes)
    spotbugs-4.0.4.zip(23.14 MB)
    spotbugs-4.0.4.zip.asc(821 bytes)
  • 4.0.3(May 12, 2020)

  • 4.0.2(Apr 15, 2020)

  • 4.0.1(Mar 18, 2020)

  • 4.0.0(Feb 16, 2020)

  • 4.0.0_rc3(Feb 8, 2020)

Java library for parsing report files from static code analysis.

Violations Lib This is a Java library for parsing report files like static code analysis. Example of supported reports are available here. A number of

Tomas Bjerre 127 Nov 23, 2022
The new home of the FindBugs project

FindBugs is now SpotBugs Old FindBugs site. New SpotBugs site. Project development continues here: https://github.com/spotbugs/spotbugs Please read th

The FindBugs project 721 Dec 21, 2022
:coffee: SonarSource Static Analyzer for Java Code Quality and Security

Code Quality and Security for Java This SonarSource project is a code analyzer for Java projects. Information about the analysis of Java features is a

SonarSource 976 Jan 5, 2023
An extensible multilanguage static code analyzer.

PMD About PMD is a source code analyzer. It finds common programming flaws like unused variables, empty catch blocks, unnecessary object creation, and

PMD 4.1k Jan 2, 2023
Inria 1.4k Dec 29, 2022
A static analyzer for Java, C, C++, and Objective-C

Infer Infer is a static analysis tool for Java, C++, Objective-C, and C. Infer is written in OCaml. Installation Read our Getting Started page for det

Facebook 13.7k Dec 28, 2022
Java bytecode static analyzer

This project is abandoned and unlikely will be supported in future HuntBugs 0.0.11 New Java bytecode static analyzer tool based on Procyon Compiler To

Tagir Valeev 302 Aug 13, 2022
Astra: a Java tool for analysing and refactoring Java source code

What is Astra? Astra is a Java tool for analysing and refactoring Java source code. For example: "References to type A should instead reference type B

Alfa 51 Dec 26, 2022
A tool to help eliminate NullPointerExceptions (NPEs) in your Java code with low build-time overhead

NullAway: Fast Annotation-Based Null Checking for Java NullAway is a tool to help eliminate NullPointerExceptions (NPEs) in your Java code. To use Nul

Uber Open Source 3.2k Dec 29, 2022
Reformats Java source code to comply with Google Java Style.

google-java-format google-java-format is a program that reformats Java source code to comply with Google Java Style. Using the formatter from the comm

Google 4.8k Dec 31, 2022
OpenGrok is a fast and usable source code search and cross reference engine, written in Java

Copyright (c) 2006, 2020 Oracle and/or its affiliates. All rights reserved. OpenGrok - a wicked fast source browser OpenGrok - a wicked fast source br

Oracle 3.8k Jan 8, 2023
Catch common Java mistakes as compile-time errors

Error Prone Error Prone is a static analysis tool for Java that catches common programming mistakes at compile-time. public class ShortSet { public

Google 6.3k Dec 31, 2022
A free injection hacked client for Minecraft using Java-agents

Swift Swift is a free and open-source injection hacked client base for Minecraft using Java-agents. Issues If you notice any bugs, you can let us know

static final 36 Oct 8, 2022
mobsfscan is a static analysis tool that can find insecure code patterns in your Android and iOS source code.

mobsfscan is a static analysis tool that can find insecure code patterns in your Android and iOS source code. Supports Java, Kotlin, Swift, and Objective C Code. mobsfscan uses MobSF static analysis rules and is powered by semgrep and libsast pattern matcher.

Mobile Security Framework 347 Dec 29, 2022
Code metrics for Java code by means of static analysis

CK CK calculates class-level and method-level code metrics in Java projects by means of static analysis (i.e. no need for compiled code). Currently, i

Maurício Aniche 286 Jan 4, 2023
Java library for parsing report files from static code analysis.

Violations Lib This is a Java library for parsing report files like static code analysis. Example of supported reports are available here. A number of

Tomas Bjerre 127 Nov 23, 2022
Android Resource Manager application to manage and analysis your app resources with many features like image resize, Color, Dimens and code Analysis

AndroidResourceManager Cross-Platform tools to manage your resources as an Android Developer, AndroidResourceManager - ARM provide five main services

Amr Hesham 26 Nov 16, 2022
The new home of the FindBugs project

FindBugs is now SpotBugs Old FindBugs site. New SpotBugs site. Project development continues here: https://github.com/spotbugs/spotbugs Please read th

The FindBugs project 721 Dec 21, 2022
For English vocabulary analysis and sentence analysis in natural language, model trainin

Sword Come ?? For English vocabulary analysis and sentence analysis in natural language, model training, intelligent response and emotion analysis rea

James Zow 2 Apr 9, 2022