Skip to content

Changelog for Teamscale 8.1

Newer Release Available

Our current release is available here.

New Features in This Release

Check out the Release Newsletter for Teamscale 8.1.

Java 17 Required (since Teamscale 7.7)

As of Teamscale 7.7, running the Teamscale server requires a Java Runtime Environment, Version 17 or later.

Changed startup on non-Docker Linux installations (since Teamscale 7.7)

As of Teamscale 7.7, Teamscale is no longer executed using nohup on non-Docker Linux installations. This requires manual intervention:

  • If you are using systemd to manage Teamscale as service, you have to change the startup type from Type=forking to Type=simple in the Teamscale systemd unit. Remember to reinstall the service.
  • For custom linux setups that depend on nohup, start Teamscale like: nohup ./ &.

In general, we strongly recommend running Teamscale on Linux with Docker.

Changed Teamscale systemd service type (since Teamscale 7.7)

As of Teamscale 7.7, the Teamscale systemd service type must be updated to type=simple, instead of the previous type=forking

Improved administration experience (since Teamscale 7.7)

Teamscale 7.7 features several changes that improve the default administration experience.

  • Breaking: Teamscale is no longer executed using nohup on non-Docker Linux installations. If nohup is required for your setup, start Teamscale like: nohup ./ & However, we strongly recommend running Teamscale on Linux with Docker or as Service.
  • The default location of storing backups is a folder named backup relative to the process working directory. Existing instances are not affected and the location previously configured will be set upon backup import.
  • The default location of cloning remote Git (or SAP) repositories is a folder named repo relative to the process working directory. Existing instances are not affected and the location previously configured will be set upon backup import. The option has been moved to Admin / Global Settings / Git.
  • The following JVM arguments are now always specified and can be removed from JVM_EXTRA_ARGS in -Djco.session_timeout=60 -XX:-OmitStackTraceInFastThrow -Dsvnkit.http.methods=Basic,Digest,Negotiate,NTLM
  • The Teamscale temporary directory is now configurable with the TEAMSCALE_TEMP environment variable. If you previously specified a custom temporary directory using, we recommend removing this JVM argument and using the environment variable instead. The directory may be relative to the process working directory and is created if it does not exist.
SAP Java Connector required for importing ABAP® code (since Teamscale 7.7)

As of Teamscale 7.7, exporting ABAP® code from SAP systems requires a manual installation of the SAP Java Connector (SAP JCo) 3.1 or later. For detailed information on the installation process, please refer to Installation of the SAP Java Connector (JCo).

Re-Analysis when Upgrading
  • When updating from 8.1.x, drop-in.
  • When updating from 8.0.x or earlier, a full re-analysis via backup is required.

Version 8.1.21

Security Improvements

This version contains security improvements. If possible, please update to at least this version.

Download Teamscale v8.1.21 (ZIP)
November 21st, 2022


Version 8.1.20

Download Teamscale v8.1.20 (ZIP)
November 8th, 2022


  • Snapshots in the Instance Comparison view, created by other users, were not visible
  • LDAP groups with more than 1.500 users could not be synced

Version 8.1.19

Download Teamscale v8.1.19 (ZIP)
October 31st, 2022


  • Edit buttons were cut off in the External Findings view for findings with long names
  • NullPointerException in PolarionSynchronizer


  • Support for "structure only" architectures
  • Permalink button in Metrics Table view is now easier to spot

Version 8.1.18

Download Teamscale v8.1.18 (ZIP)
October 25th, 2022


  • GitLab threads, that were resolved by a user, were marked as "unresolved" if the finding was still in the code

Version 8.1.17

Security Improvements

This version contains security improvements. If possible, please update to at least this version.

Download Teamscale v8.1.17 (ZIP)
October 20th, 2022


  • False positives in "Logical block performs numerical operation with non-boolean data type as input" check for Simulink


  • Updated Apache Commons Text dependency to version 1.10

Version 8.1.16

Security Improvements

This version contains security improvements. If possible, please update to at least this version.

Download Teamscale v8.1.16 (ZIP)
October 18th, 2022


  • "Throw of generic exception in CS" check had default enablement YELLOW instead of RED
  • Editing a project overwrote empty options with their default values
  • False positives in "Calling equals()/toString() on array" check
  • Switch-label probes were not supported in Bullseye coverage report parser
  • Some treemaps were cut off at the bottom


  • Login with GitHub now requires that the user is a member of the GitHub organization

Version 8.1.15

Download Teamscale v8.1.15 (ZIP)
October 11th, 2022


  • Artifact store connections logged excessive warnings
  • Simulink Annotation block position was computed incorrectly for mdl files
  • False positives in "Statements in Conditional Expression are equal" check for Objective-C due to code comments
  • Internal ESLint configuration did not detect built-in ES6 types
  • The Open Method link in TGA Treemaps sometimes led to the Compare tab instead of the Method history tab
  • NullPointerException in TestMetricsAndContentSynchronizer

Version 8.1.14

Download Teamscale v8.1.14 (ZIP)
October 4th, 2022


  • Exclusion rules in Simulink Model Advisor reports were parsed as findings

Version 8.1.13

Security Improvements

This version contains security improvements. If possible, please update to at least this version.

Download Teamscale v8.1.13 (ZIP)
September 27th, 2022


  • PolarionSynchronizer could fail due to rare race-condition
  • Code References and Test References columns were always empty in the Requirements Tracing view
  • Specification item code references were bound to low-level code entities (e.g. local variable, statement)
  • Polarion: Specification items in recycle bin were not deleted from Teamscale
  • Reports: Missing error message if the finding of a findings detail slide could not be found


  • Security: Input fields no longer send data to third parties for spell checking (Google/Microsoft)

Version 8.1.12

Download Teamscale v8.1.12 (ZIP)
September 19th, 2022


  • Findings Detail view did not directly display the affected block for large Simulink models
  • RaexFindingSynchronizer failed due to missing DLL file
  • NumberFormatException when parsing JUnit reports which contained numbers using commas as decimal separators
  • Legacy Teamscale links did not redirect to their corresponding pages


  • Calculating unlinked changes no longer blocks loading of the Test Gaps > Issues view
  • Tables on Tests by Spec Item and Spec Items by Test views are now sortable
  • Added support to disable Switch statement without default case check in case for switches over enums

Version 8.1.11

Security Improvements

This version contains security improvements. If possible, please update to at least this version.

Download Teamscale v8.1.11 (ZIP)
September 13th, 2022


  • SimulinkUseOfSwitchBlockCheck did not consider data dictionaries for its criteria port
  • False positives for "Each variable should be declared in a separate statement" check in C++ when using generic as the name of a function or class
  • False positives for "Multiple statements in same line" check in C++ when calling constructors with curly brackets
  • Introduction date in findings table was cut off on narrow screens


Version 8.1.10

Download Teamscale v8.1.10 (ZIP)
September 6th, 2022


  • False positives for "Avoid usage of implicit int" check for C/C++
  • Link to specification item was included in the Merge Request view even if the item did not exist
  • Gerrit connector voted +1 in case of yellow findings and the option "Ignore Yellow Findings For Votes" enabled


  • Artifact connectors: Revisions can now be excluded if certain ZIP files are not present

Version 8.1.9

Download Teamscale v8.1.9 (ZIP)
August 30th, 2022


  • "Default branch not yet set" error on every page if the first project (alphabetically) had validation errors during import
  • Test Gap treemaps showed too many files for architecture paths if the selected folder was a prefix of a sibling folder
  • Precommit: Per-user call-rate limiting included calls that failed because of "too many files"
  • NullPointerException in DataflowAnalysisSynchronizer concerning DivisionByZeroAnalysis for C#
  • C/C++: StackOverflowError in Dataflow analysis for switch without braces in lambda function
  • Objective-C blocks were incorrectly parsed
  • False positives for "Comment Completeness" analysis for C/C++ due to Doxygen comment identification
  • Large values formatted with SI prefixes were displayed with three decimal places in metric trend chart slides
  • SCM Manager credentials: Passwords with non-ASCII characters did not work correctly
  • S3 and Artifactory connectors ignored archive deletion events
  • Failures in CodeChangeIndexSynchronizer due to changes in shallow parser implementations
  • PolarionSynchronizer performed too many logins, leading to session problems

Version 8.1.8

Download Teamscale v8.1.8 (ZIP)
August 23rd, 2022


  • The JVM flag for disabling automated web hook creation was not working
  • External uploads indicated misleading "changed" or "deleted" files in repository logs
  • NullPointerException in BitBucketServerMergeRequestAnnotationTrigger when merge request was deleted
  • Teamscale failed to update Bitbucket Server pull requests in case of out-of-date information and when someone replied to a comment
  • In reports, introduction diffs for some findings were not rendered
  • Clone compare slide did not correctly show clones for same file
  • False positives for "Commented-out code" check in Java
  • False positives for "Do not put multiple statements in a Lambda expression" check in Java
  • Gosu parser error in case of nested lambdas
  • Rendering of findings descriptions in the Check Explorer included too many line breaks
  • IntelliJ plugin: NullPointerException when fetching findings

Version 8.1.7

Download Teamscale v8.1.7 (ZIP)
August 16th, 2022


  • NullPointerException in ArtifactoryContentUpdater in case of concurrent modification of stored artifacts
  • Redundant "Teamscale Info" header in Jira issue annotations
  • S3 connector did not collect all items in large buckets
  • TGA coverage sources chooser was inconsistent with latest upload in some rare cases
  • Number of loadable custom checks per location was wrong on System Information page
  • URLs did not contain branch name for default branch which made them inadequate for sharing
  • Tests that did not exist in the selected partitions were still shown in the Test Metrics view with count zero
  • Counting the number of committers did not take commit type and aliases into account
  • Selection of integrated GitHub app was undeterministic when two apps had the same id but different URLs


  • Backup minimizer now supports branch include and exclude patterns

Version 8.1.6

Download Teamscale v8.1.6 (ZIP)
August 9th, 2022


  • False positives for "Unused variable or parameter" check in C++ for lock guard objects
  • False positives for "Multiple statements in same line" check in Groovy
  • Incorrect nesting depth findings in Groovy
  • JiraIssueUpdatePostAnalysisTrigger was unnecessarily executed even for pre-commit changes
  • Empty Jira update notifications were sent by Teamscale
  • Jira connector blocked analysis if many requests were sent in a short time frame
  • Analysis of Bitbucket project stopped due to many merge request annotation triggers and lots of activities on Bitbucket server
  • Voting failed in some rare branch scenarios
  • Slashes in the default branch name caused errors when using Git connectors
  • The .NET version check required an installed SDK although .NET Runtime should have been sufficient
  • False positives in JavaScript naming convention check for React components
  • Simulink: Root-level model findings popup was obscured by the browser's top bar and findings were not clickable
  • Preprocessor-generated tokens of C/C++ were handled wrong in several analyses
  • Some SVN forks were not correctly detected
  • False positives for check "Non-void function should return a value" in C++ in case of unresolved macros
  • False positives for "Comments should not contain nested comments" check in Python when comments contained URLs with #


  • Improved performance for Dashboard perspective for instances with many projects
  • System view now displays committers of the last 90 days
  • Support for setting a credentials process for S3 connector through a configuration property

Version 8.1.5

Download Teamscale v8.1.5 (ZIP)
August 2nd, 2022


  • Possible NullPointerException in JavaScript/TypeScript comment analysis if statements other than declarations were used at the root level
  • Treemaps were hard to read due to extensive borders in case of large code bases
  • Preview repository files dialog failed for local ABAP-Git repositories
  • C++ method parameters were incorrectly retrieved in certain cases
  • Merge commits showed findings that already existed on the target branch before the merge
  • Swift long method findings had wrong locations
  • "Save anyway" button did not save project after project validation error
  • Kotlin try/catch/finally constructs were not parsed correctly
  • abap-findings service missed findings from (transitive) includes
  • Activity > Issues view did not correctly handle clicking the "Show trend and treemap" button on invalid issue queries
  • JsonSerializationException in LoadAndIntegrateSapTestwiseCoverageTrigger
  • License was not valid on the last day of the license period
  • Rendering the verification matrix blocked UI for multiple seconds on huge data sets
  • Teamscale added badges to merge requests that had no relevant changes


  • Provide debug service to list/download/remove temporary files

Version 8.1.4

Download Teamscale v8.1.4 (ZIP)
July 26th, 2022


  • Architecture editor: changed mapping was not saved consistently in Firefox after component lost focus
  • False positives for "Using threads is forbidden for Java EE containers" check in case of Runnables
  • Guideline names on findings reported by CppCheck had wrong casing
  • BackupMinimizer did not delete temporary storage directory after its execution
  • Changing the project used by a widget redirected the user without saving
  • Widget path chooser did not work correctly when value was removed
  • When code review findings were enabled, opening a non-existing file led to a red error page
  • NumberFormatException in division by zero analysis
  • Uploaded external findings got lost in cases where analyses had not reached the target commit
  • Font color UI glitch in left sidebar


  • Improved loading of System Log views
  • Improved finding description for "Avoid conditional expressions of the form if (true)" check
  • Updated dependencies in docker image to latest version

No longer supported

  • Disabled new division-by-zero dataflow analysis for C/C++

Version 8.1.3

Security Improvements

This version contains security improvements. If possible, please update to at least this version.

Download Teamscale v8.1.3 (ZIP)
July 19th, 2022


  • ABAP .CCAU and .T99 test code files were excluded by default in new projects
  • Finding description of the "Usage of the var keyword" check in C# contained typo
  • Polarion modules without IDs caused NullPointerExceptions
  • Annotating merge requests with line comments and findings badges could not be configured independently
  • NullPointerException in GerritAnalysisResultUploadTrigger
  • Global keyboard shortcuts did no longer work
  • hasParent() operator in issue queries always returned an empty result
  • Slow Teamscale backup import due to incorrectly configured Xodus database-memory setting
  • Contents of some dashboard widgets were not properly adjusted after browser window resize
  • Treemap in Commit Details view did not show up sometimes
  • "Too much data to show" error displayed when viewing large treemaps
  • Delta view of merge requests could not be opened in a new tab
  • Parsing errors for annotations on Java arrays
  • HDL Code Advisor checks could not be parsed from a Model Advisor report
  • Ordering and searching Simulink findings by location were not working properly
  • Badges were not shown for GitHub pull requests that had no findings
  • Connectors were shown as part of repositories they did not belong to
  • New commits were sometimes not analyzed if there were no commits during the initial analysis
  • NoSuchPullRequestException for merge requests in Teamscale that have already been deleted in Bitbucket
  • False positive for "Assignment of a variable to itself" check in Swift
  • Eclipse Plugin: NullPointerException while loading findings


  • Updated Node.js to the latest version to fix potential remote code execution

Version 8.1.2

Download Teamscale v8.1.2 (ZIP)
July 12th, 2022


  • External Findings view was very slow when showing a large number of descriptions
  • Architecture overview page showed wrong setting for Findings Creation during first analysis of recently added architecture
  • Simulink signal was not correctly propagated if input was directly connected to reference block and renamed the signal
  • File regexes could not be deleted in Metric File Distribution widget
  • Saving a GitHub connector always caused re-analysis
  • Git repository synchronization failed if the default branch was removed
  • Teamscale did not vote on GitHub pull requests without any findings
  • Rollback was unnecessarily postponed after specification items were manually cleaned
  • NullPointerException in SwiftLintOutputParser
  • Metric File Distribution widget could not show specification items metrics if there were multiple folders for one part of the path
  • IndexOutOfBoundsException in "Bad assignments" check for Objective-C
  • ArrayIndexOutOfBoundsException in BitbucketServerMergeRequestSynchronizer after multiple retries
  • False positives for "Assignment of variable to itself" check for multi-line assignments in Swift


  • A warning is now shown if time travel is active and a review finding is being created
  • Improved multiple findings descriptions
  • Backup Minimizer only supported in-memory storage systems

Version 8.1.1

Download Teamscale v8.1.1 (ZIP)
July 5th, 2022


  • Backups with activated StyleCop could not be imported (.Net)
  • CodeFileToCoverageReportIndex failed with NullPointerException when trying to delete a coverage report entry for a removed file
  • System information was duplicated after restarting Teamscale
  • Staked Bar Chart widget did not link to a project
  • Check Explorer: Deselecting all languages also removed all selected tools
  • Compare view scroll synchronization was inconsistent when scrolling horizontally
  • Sorting the rows in the Test Gaps perspective tables by 'Test Gap', 'Execution', or 'Churn' did not work correctly
  • Race condition in ESLintFindingsSynchronizer could lead to missing npm modules and corresponding worker log errors
  • Missing code location column in table on Test Filter view
  • GitHubMergeRequestSynchronizer could run indefinitely
  • False-positives for "Assert statement without ID" check for ABAP
  • False-positives for "Avoid usage of implicit int" check for C/C++
  • Rare NullPointerException in ArtifactoryContentUpdater when updating existing archives in Artifactory
  • Number of specification items did not correctly account for multiple changes for the same item in merge requests
  • Projects or branches in the "recent" section of the selection dropdown where not shown in the full list below
  • Branch of the revision was not selected when time travelling to it
  • Connector status was green even when the default branch was deleted on the server
  • Tooltip text size for tree maps was dependent on the screen resolution


  • Better performance of GerritChangeRetriever for large amounts of Gerrit changes
  • Improved wording for TGA badges in merge requests
  • Improved descriptions for multiple C/C++ checks

Version 8.1.0

Bug Fixes
  • 8.1.0 contains all fixes from previous versions released on and before June 28th, 2022
  • For brevity, only new features are included in the changelog
Download Teamscale v8.1.0 (ZIP)
June 28th, 2022

Web UI

  • Improved loading performance of the test gap analysis issue overview
  • Partition selection now supports an arbitrary amount of hierarchy levels
  • Stored queries can now be referenced in other queries with query(<query name>)
  • Pareto Ranking: Added display for relative coverage after adjusting the test budget
  • Pareto Ranking: Added a tree map with the coverage produced based on a test budget and Pareto ranking
  • Multiple widgets now contain clickable drill-down links
  • Global analysis profile options are now shown in the Check Explorer
  • Architecture editor components and policies can now be added via right-click context menus
  • Method History view now shows the complete history up to the selected baseline and whether the method has any history on other branches
  • Tooltips for methods in test gap treemaps now show the date and time of the last modification and execution of a test
  • Timetravel widget now shows the name of the selected baseline

New Checks

  • Python check for missing prefixes for string literal interpolation
  • Cppcheck including the MISRA add-on as an internal tool
  • Detection of classes with identical names in different packages

Check improvements

  • Simulink: Propagation of signal labels into libraries can now be resolved
  • Migration of deprecated StyleCop to StyleCop Analyzers

IDE Integrations

  • Visual Studio: Improved pre-commit user experience for TFS server-workspaces


  • E-mail notifications: Added blacklisting information for findings
  • E-mail notifications: Added violated architecture names to subject line
  • New option to allow creation of a web hook on a per connector basis
  • REST API requests logging now includes response time information


  • How-to setup for Teamscale