---
url: /changelog/v2025.9.x/patch-releases.md
---

# Patch Releases for Teamscale 2025.9

## Version 2025.9.17

::: details   Security Improvements
This version contains security improvements. If possible, please update to at least this version.
:::

### Improvements

* Security: Updated dependencies to mitigate [CVE-2026-33228](https://nvd.nist.gov/vuln/detail/CVE-2026-33228) and [CVE-2026-32141](https://nvd.nist.gov/vuln/detail/CVE-2026-32141)

***

## Version 2025.9.16

::: details   Security Improvements
This version contains security improvements. If possible, please update to at least this version.
:::

### Fixes

* Stale HTTP connections caused annotations and votes on merge requests in code collaboration platforms to fail
* Merge requests deleted in Gitea were not deleted in Teamscale
* Security: OpenID Connect configuration options were not validated sufficiently

***

## Version 2025.9.15

### Fixes

* Overlapping enablement of metric and critical change badges between projects was not detected
* Simulink: Datatype propagation did not work correctly when a library was included multiple times
* `NullPointerException` during coverage integration in rare edge cases

### Improvements

* Improved C/C++/Objective-C/++ scanner performance for some code patterns

***

## Version 2025.9.14

### Fixes

* *Instance Comparison*: File content differences were always shown for Simulink files, even when they were identical
* C/C++: Comments after preprocessor directives were not parsed correctly in some cases

***

## Version 2025.9.13

### Fixes

* *Tasks*: Links to findings did not work in task edit mode
* Code scope configuration was imported incorrectly if configuration lines ended with a comma

### Improvements

* The "Upload Commit Details" dialog now explains that displayed data covers all partitions when multiple are present

***

## Version 2025.9.12

### Fixes

* SwiftLint: `IllegalArgumentException` when parsing results
* Duplicate entries and incorrect role assignments were shown in the *Global Role Assignments* view when users shared multiple groups
* Merge request details were not shown in some cases
* Simulink: `Datatypes` in `Bus Selector` blocks could not be resolved when `Alias` types were used
* Objective-C: Instance method declaration lines were considered coverable in some cases
* `NullPointerException` in `ContentIndexSynchronizer` while resolving includes

### Improvements

* Improved error handling when a backup import from a remote Teamscale instance fails
* Reduced memory consumption when processing a lot of uploads during a backup import

***

## Version 2025.9.11

### Fixes

* GitHub Enterprise could not be configured due to `NullPointerException`
* False positives for "Usage of Abs Block" check for Simulink when setting block parameter "Saturate on integer overflow"

***

## Version 2025.9.10

### Fixes

* False positives for "Missing virtual destructor" check in C+b for stack-only classes with deleted `new` operators
* False positives for "Check usage of unconditional transitions in flow charts Correctness" check for Simulink
* False positives for "Check usage of Signal Routing blocks" check for Simulink

***

## Version 2025.9.9

### Fixes

* Golangci-lint: Configured options were not passed correctly
* False positives for "Don't use string in Matlab Function Blocks" Simulink check when function calls were used
* False positives for "Unauthorized Access Control Object" ABAP check when `#MANDATORY` annotation was used

### Improvements

* Improved GitHub connector validation speed for apps having access to a lot of repositories

***

## Version 2025.9.8

### Fixes

* `ClassCastException` in metrics handling for ABAP projects
* After external uploads, redundant revision lookups were performed in some cases
* Comments in anonymized code were not anonymized correctly
* Updates to existing cross-repository pull requests were not processed when no other branch changes occurred
* `NullPointerException` in plausibility check during path matching when processing "Testwise Coverage" reports
* `EOL` tokens were not fully cleared from the display when switching between token and AST representations
* Teamscale comments in Azure DevOps pull requests could not be displayed in Visual Studio

***

## Version 2025.9.7

### Fixes

* Legend colors in trend charts on the *Start* perspective were swapped
* Dashboards created from templates were created for the wrong project in some cases
* False positives for "Use of enclosing braces, partial array initialization, multiple initialization of array elements" check for C/C++ when using partial array initialization with `{NULL}` or `{nullptr}`
* False positives for "Methods should not be defined in a header file" check for C++/Objective-C/++ when using `__inline__`
* Trend chart failed to render for the ABAP "Creation Date" metric
* Extended code snippets in the *Finding Details* view did not use the available height in some cases
* Treemap colors were inconsistent for metrics with a fixed set of values (e.g. languages) when some values were not present in the project
* "No testwise coverage" was shown when coverage was actually present in some cases
* Jira connector did not accept valid URLs in some cases
* False positives for "Switch statements should not contain unexpected constructs" check for C/C++ when all conditional branches had exit statements

### Improvements

* Polling interval for external storage backends can now be configured with the system flag `com.teamscale.external-storage.polling-interval`
* Improved check description for "No call to external form routines" check

***

## Version 2025.9.6

### Fixes

* `NullPointerException` when a branch was resurrected with pruned commit nodes
* Testwise Coverage: Test names starting with "/" could not be parsed
* False positives for "Long Method" check for Swift when using nested methods
* GitHub: Diff links in the *Test Coverage* check run and in the *Merge Request* detail view did not consistently open the comparison view in the "line-based (ignore whitespace)" comparison mode
* Go: `IndexOutOfBoundsException` in "Hard-coded password" check
* False negatives for "Comment Completeness" analysis for Objective-C++
* False positives for "Comment Completeness" analysis for Python when using decorators
* Switching code scopes in *Checks* perspective reset any previously configured filters
* Autocomplete for `teamscale-dev` did not work for file paths in Zsh
* *Reports*: Switching to a tab with an open report caused the report to fully reload
* False positives for "Unused variable or parameter" check for C++

***

## Version 2025.9.5

### Fixes

* `NullPointerException` in `CppcheckSynchronizer` when analyzing files without extensions
* False positives for null-pointer analysis in C#
* Nesting depths in Objective-C code were computed incorrectly
* Clicking the "Review Settings" or "Accept" options in the default backup settings warning had no effect
* Role assignment table displayed the assigned role incorrectly after assigning a new role

***

## Version 2025.9.4

### Fixes

* False positives for "Unreachable code after exit statement" check for local functions in C#
* False positives for Java naming convention check when using unnamed (`_`) variables
* Fatal errors in `Flake8Synchronizer` due to `RecursionError`
* Generic error message when defining code scopes without selecting an analysis profile
* Clang-Tidy check `modernize-macro-to-enum` produced duplicated findings for C/C++/Objective-C/++
* Service to list local Git clone directories could not handle versioned clone directories

### Improvements

* Improved logging in case of failed SAML login

***

## Version 2025.9.3

### Fixes

* False positives for "Post-Operator in return statement" check static variables and block expressions for Objective-C/C++
* Architecture changes were accidentally overwritten without warning when saving while the project was in a rollback state
* GitHub login did not work in some cases

***

## Version 2025.9.2

### Fixes

* `StringIndexOutOfBoundsException` in "Avoid unused private methods in Java" check
* PL/SQL: Variables declared with `%ROWTYPE` were no longer reported by the "No SELECT \*" check
* TypeScript files were not anonymized correctly
* Objective-C: Parsing of class extensions resulted in incomplete AST nodes
* False positives for "SpEL expression should have a valid syntax" and "@Value annotation should inject property or SpEL expression" checks in java
* Swift: Certain regular expression definition could lead to parser issues
* Cppcheck: Findings for deleted files were not resolved
* Swift: Macros in closures could lead to parser errors
* Project permissions bound to alternative project ids were not taken into account
* False positives for "Avoid using cartesian queries" check for PL/SQL
* C#: `DataFlowFindinsSynchronizer` sometimes ran into errors regarding CFG cycles
* Uploading .NET ephemeral traces via REST endpoint targeting an external storage backend did not work
* *Parser* and *Interaction* logs were empty with the default logging configuration

### Improvements

* Added descriptions for Cppcheck MISRA checks
* C#: Improvements for the null-pointer analysis when `string.IsNullOrEmpty()` was called
* Performance improvements for `JFrogXraySynchronizer`
* Performance improvements for "Nonsensical Binary Operation" check

***

## Version 2025.9.1

### Fixes

* *Start* perspective did not consider the *Preselected UI Branch* of a project
* `NoSuchElementException` in `FindingBlacklistChangePersister`
* False positives for "Regex should not be overly complex" check for Java
* *Project Edit* view: Removing all secondary project IDs unexpectedly led to validation errors
* False positives for "Unreachable code after exit statement" check for TypeScript
* Test impact analysis services reported invalid metadata in some cases
* HANA SQLScript `?` operator was not supported
* False positives for "Methods should not be defined in a header file" check for C++ `constexpr` functions

### Improvements

* More configuration options for ABAPLint with the system properties `com.teamscale.abaplint-file-batch-size` and `com.teamscale.abaplint-node-max-old-space-size`
* Maximum allowed HTTP header size is now configurable in the `teamscale.properties` file with `server.max-header-size-kib` ([docs](../../reference/administration-ts-installation/#primary-settings-teamscale-properties))

***

## Version 2025.9.0

::: details   Bug Fixes

* 2025.9.0 contains all fixes from previous versions released on and before December 9th, 2025
* For brevity, only new features are included in the changelog
  :::
