Patch Releases for Teamscale 9.1
Version 9.1.18
sha256: fe429953ee2f2f7fd17bed81ca1fd359e54c14e57bc2a01bc29fa04426f595da
Fixes
- Teamscale used .gitconfig files from the user directory and system profile, leading to unexpected behavior in some cases
Version 9.1.17
sha256: 09ae908dc48e71ec857bc2d81a4dd5a2c246c8c085ae164b6c7f02e22fca8691
Fixes
- False positives for "Use only one font in a Simulink model" check for branched signals
Version 9.1.16
Security Improvements
This version contains security improvements. If possible, please update to at least this version.
sha256: bc971fed5a623bb81c42121dd230512601542c5501f8cb42ca9d790f18999a5c
Fixes
NullPointerException
when parsing XCTest reports- Security: Users with the permission "Create Groups" could add themselves to the "Administrators" group
Version 9.1.15
sha256: 9380ea5fc820b86a24d43754a4f50d1844a3dde93dc98cf5e02ca090a9d34c05
Fixes
- False positives in several Swift checks due to parsing errors when using
package
access modifiers - Coverage reports were not processed correctly if their content remained unchanged in subsequent commits
- Unlinked Changes view showed a warning about missing coverage even when the project had coverage
Improvements
- Commit tree debug dumps now open in a new tab
Version 9.1.14
sha256: fb4a8fdfc07a8d1d0340ae76ca9b611248d69943efbadaa720eeca9339d5b091
Fixes
- False positives for “Use only one font in a Simulink model” check in Simulink for signals without label
- Matlab code with inline comments in Simulink models led to parsing errors
Version 9.1.13
sha256: e1309465b31e3aff2a95be7e39466815353fceeb47b446386d1fb144114bab26
Fixes
- Opening files at the file system root in the Code view whose name started with
.
caused a "resource not found" error - Table in Tasks view was not sortable by the Findings summary column
- Architectures were not processed if they were deleted and recreated before the start revision
- Text in fields in the issue details view could overflow its container
- Links in the Instance Comparison view were not truncated properly
Version 9.1.12
sha256: a1cd67e119faf434df6c5f56af3092840667bdc95e01dfc264a624acb87c96cc
Fixes
- Findings for statement-based method length violations were duplicated if the method started with a comment
Improvements
- Improved findings description for "Methods should not be defined in a header file" check
- Improved loading time of the Merge Requests detail view
Version 9.1.11
sha256: ef63a44e255c780df56d7b72765eb37ba10762789bbd0baa1d56bf2be7c570f3
Fixes
- Legend colors in the Delta > Change Treemap view did not match with the treemap colors
- Overly long paths could overflow in the Detailed Log dialog
- Objective-C object messaging statements were not reported as coverable
- Merge request detail view did not load for merge requests whose analysis was still in progress
ClangTidySynchronizer
blocked workers without doing any work- Backup import and export could fail due to a store inconsistency
Improvements
- Improved description for "Do not shadow built-ins" check for Python
- Dashboards: Project and path selector now shows a warning that the branch selector is only used during path selection, but is not stored
Version 9.1.10
Security Improvements
This version contains security improvements. If possible, please update to at least this version.
sha256: 4b90f2832307f9541d21e2a0ff09af1bd24fe647aa219113afc50d0ced8cc64f
Fixes
- Dashboard: Test Gap Treemap widget subtitles were sometimes hidden behind the treemap
- ABAP metadata files were visible in the affected files of a commit
- Security: Project ID resolution service returned IDs of projects not visible to the user
- Incompletely parsed node errors for
switch-case
statements in PowerShell in case of optional string quotes NullPointerException
when analysing non-program ABAP objects- CORS documentation showed incorrect example settings
Version 9.1.9
Fixes
- Dashboard: Scrolling did not work in the "Create dashboard from template" dialog
- Git garbage collection was not scheduled correctly
- False positives for "Own header should be included first" check in C/C++
- Reports:
AssertionError
for specific cases when opening slides - False positives for "Check the usage of merge blocks" check for Simulink
- "Simulink signal appearance" check (jmaab.db_0032) did not report overlapping lines if only one of them was horizontal or vertical
Version 9.1.8
Fixes
- C/C++ dependency extraction was very slow
- Specification item code references from Python line comments were not counted correctly
- Exporting a quality report via Chrome's "print as PDF" feature did not work
- C/C++:
NullPointerException
in architecture analysis for include-directive corner cases - Automatic garbage collection maintenance trigger was not running garbage collections correctly
- Task Details slide: Finding markers in manually added code segments were sometimes off
- Clang-Tidy analyses timed out when file paths contained space characters
- False negatives for "Usage of For Iterator blocks" check for Simulink
Improvements
- Updated Visual Studio Plugin documentation
Version 9.1.7
Fixes
- C/C++ preprocessor failed for conditions with very large numbers
- External Report Uploads view could not be opened without "Edit Server Options" permission
- Opening findings from the Task Detail or Edit view used the same tab, discarding possible changes
NumberFormatException
while processing uploaded Gcov reports containing C++ namespacesNullPointerException
when resolving C/C++/Objective-C/Objective-C++ include-directives with macros- Big treemaps were shown blurry and cut off on the Dashboard perspective
- Pre-viewing repository files for ABAP Connectors did not work
- Some methods were erronously treated as covered by Bullseye reports
- False positives for "Suspicious usage of CALL system function" check in ABAP for excluded functions
- Retrospectives view did not warn when navigating away without saving
- Methods opened from the TGA treemap slides referenced wrong commits
IndexOutOfBoundsException
andLanguage not supported by Condition Parser
errors while uploading CTC++ reports- Check Explorer showed a blank page while fetching checks after adjusting languages or tools
- Validation of Git connectors with SSH URLs failed in some cases
- Support link in "About Teamscale" dialog was broken
- Azure DevOps integration: Findings marked as tolerated were not removed from pull requests
- Identical architecture uploads were not properly skipped
- External report uploads did not get scheduled in some cases
Improvements
- Improved page loading time of top navigation bar for very large projects
- Improved rendering of Delta findings view when a lot of findings were shown
- Improved logging of parsing errors for the option "Language Mapping" during pre-commit
Version 9.1.6
Fixes
- XCResult reports with test status "Expected Failure" could not be processed
- Architecture paths were not completely shown in treemap tooltips
NullPointerException
when rendering Simulink models containing mathematical equations- Project analyses were stuck in case Teamscale could not find file content for a specific Git revision
- Stalled clone analyses in rare circumstances
- Wrong header files were selected when using angle-bracket include directives in C/C++
NullPointerException
inCloneDetectionResultSynchronizer
- Missing findings for uploaded jQAssistant reports
- Issue hierarchy in the Issue Detail view displayed incorrect statuses for parent issues
- Architecture findings were not added to the correct lines in the Azure DevOps pull request diff view
- Teamscale created multiple users for single LDAP users with multiple UIDs
Improvements
- Improved C++ Parser performance on very large files
- Support prefixing Teamscale Prometheus metrics using environment variable
TS_PROMETHEUS_METRICS_PREFIX
Version 9.1.5
Fixes
- Projects with a Bitbucket Server connector could not be saved in some cases due to an incorrect validation error
- Very long error messages resulted in UI glitch in the Worker Log view
- An unnecessary leading slash was added to the upload path prefix of external storage backends
- Expanded macros did not have syntax highlighting
- Test Gap Treemap slide showed wrong data when the selected path was a prefix of another path
- External upload service was doing an expensive storage lookup when called with an empty revision string
- Snippet Analysis had no error feedback if the file extension was not supported by the project
- Finding Detail slides could not be rendered in some cases if the code range of the slide did not include the location of a finding
- External uploads for projects with voting connectors failed if Teamscale had not yet fetched the Git revision passed in the upload request parameters
Improvements
- Added support for Extended Structured Query Language (ESQL), including scanning, parsing, clone detection and 25 checks
- Reduced memory consumption of findings tracking
- Improved performance of automatic Git garbage collection
- Improved error logging for HTTP 431 errors
- Improved error logging in case the local Git clone does not receive updates correctly anymore
Version 9.1.4
Security Improvements
This version contains security improvements. If possible, please update to at least this version.
Fixes
- Default branch name was incorrectly required for issue and requirements management connectors
- Backup import failed if it contained code-to-simulink mappings from MAT files
- Test Gaps > Files table did not consider the selected Coverage sources
- Instance comparison finding list redirection did not work if other instance had a version older than 9.1
- Prometheus metrics sometimes had incorrect labels
- Check explorer did not show enablement of rules for project view
- Project option "Maximum upload age" for external uploads was not considered for .NET traces
- Path selector in Findings perspective contained path types which do not support filtering of findings
- Commits section in the merge request detail view did not display the correct findings churn for the commits
- Reports were sometimes not downloadable after uploading them to Teamscale
- Long merge request titles overflowed causing some buttons to be unclickable in the merge request detail view
- Security: Users could gain access to quality reports without permission
- False positives for "Multiple statements in same line" check for Objective-C++ in case of constructor initializer lists
- False positives for "Each variable should be declared in separate statement" check for Objective-C++ in case of lambdas defined as properties
IndexOutOfBoundsException
in "Hard-coded user name" check in ABAP- Finding messages in tooltips contained incorrectly escaped characters in some cases
- Header files in Objective-C were incorrectly classified as C files in some cases
- False positives for multiple checks, e.g. "Methods should not have too many parameters" check, for Objective-C++ with the
@property
keyword
Version 9.1.3
Fixes
AssertionError
inCoverageUnitIntegrator
- Parser errors in Kotlin for char literals
- Parser errors in TypeScript when leaving out the left operand in expressions with the
|
or&
operator NullPointerException
inAbapTaintSinkRecognizer
for user-definedGUI_UPLOAD
method- IntelliJ Plugin: Findings state widget broke when toggling its visibility
- False negatives for "Entry versus propagation of signal labels" check for Simulink in case no label was entered on signals from library-subsystem inports
- Incorrect parsing of double quote char inside string interpolations for C#
- False positives in "Unused variable or parameter" check for C# when using tuple deconstruction
- Metrics defined in a base configuration were not shown in the reporting editor when using the "Project Default" threshold profile
- False positives for "Methods should not be defined in a header file" check for Objective-C when using
inline
andconst
keywords
Version 9.1.2
Security Improvements
This version contains security improvements. If possible, please update to at least this version.
Fixes
- False positives for "Interface comment missing" check for annotated methods and attributes in Java
- Backup import failed if it contained external metric uploads
- Parser errors in Java if
permits
was used as field name OutOfMemoryException
inCoverageUnitIntegrator
when uploading big coverage reports- Instance comparison incorrectly showed findings with the same location as removed and added
- False positives for "Unreachable code after exit statement" check in TypeScript for getter and setter methods with an access modifier
- Simulink: Checks hisl_0008 and hisl_0017 in Model Advisor reports could not be parsed
- False positives for "Redundant parentheses" check in Python for
match
function calls in conditional statements - False positives for "Adding a list to itself" check in Java
- False positives for "Avoid using ternary operators" check for variables with array type
- Merge Requests view broke when clicking on a column header to sort the table
- False positives for "Non-void function should return a value" check for functions with
auto
return type - Voting connectors did not include submodules configured with SSH URLs in some cases
- False negatives for "A compatible declaration shall be visible with external linkage" check for global variables
- Misleading message was shown in issue details view in case of flagged findings
- False positives for "Control flow depending on system variable (SY-...)" check in ABAP for conditional operator statements
- Security: Updating an external account URI was possible without providing the password
- False positive for "Unnecessary exit statement" check in C++ when using a macro before a break statement in a default section
- Wrong project could be shown in some situations when having multiple open tabs with different projects
- Automatic Git garbage collection ran even if the option was disabled
Improvements
- ABAP: Updated documentation about Teamscale checks on transport release
- Improved error message in case Repository name option was not set during project creation
Version 9.1.1
Fixes
- False positives for "Unused Import" check for Java
- Instance comparison snapshot computation failed for projects with analysis profile option "Disable LOC metrics" enabled
- Prometheus metrics were sometimes not reported correctly after an instance restart
- In the Spec Item Findings view, clicking button Export as CSV exported a list of code findings
- Teamscale Integration for Visual Studio IDE now identifies itself in the
User-Agent
HTTP header - False positives for "Interface Comment Missing" check for Java
StorageException
when changing the regex mapping of a group on the External Finding view- False positives for "Long Method" check in Objective C++ when using blocks
- Synched scrolling in clone compare view did not work with findings in the last line
- The automatic Git garbage collection maintenance did not run any garbage collections
- C# architecture analysis did not consider transitive project references for SDK-style projects
- Editing a project with absolute date in a field caused re-analysis when user had a time zone with a large offset
- Non-admin users with group edit rights could not access the group edit view
Improvements
- Documentation: added explanations for Maven plugin options
- Documentation: corrected link to Maven plugin maven repository
- Reduced log level for unresolved issue references from error to warning
Version 9.1.0
Bug Fixes
- 9.1.0 contains all fixes from previous versions released on and before August 29th, 2023
- For brevity, only new features are included in the changelog