Changelog for Teamscale 6.1
Newer Release Available
Our current release is available here
Deprecated REST XML Interface
- As of Teamscale 6.0, Teamscale's REST XML interface has been deprecated. Accordingly, any existing scripts should be migrated to the new public API.
Changed loading of configuration files and locating relative paths
- As of Teamscale 6.0, all configuration files are loaded using the same logic. In particular configuration files in the process working directory take precedence over ones in the Teamscale installation.
- Relative paths specified in configuration files will always be resolved to the working directory. The working directory usually equals the installation directory unless explicitly changed.
- Custom check JAR files can be deployed in a directory relative to the working directory and installation directory.
- Searching for a Teamscale configuration file
teamscale-config.properties
in the installation root directory. Use the fileteamscale.properties
in one of the config directories. - Searching for a license in the installation root directory or a directory specified by the Java system property
teamscale.license.path
is no longer supported. Use the environment variableTEAMSCALE_CONFIG
to specify a separate configuration directory or pass the license using theTS_LICENSE
environment variable if you cannot place the license in one of the config directories. - The administrative service to read and write configuration files via the Web API (
config-files
) has been removed.
Changed System Requirements
- As of Teamscale 5.6, running the Teamscale server on Windows requires the Microsoft Visual C++ Redistributable for Visual Studio 2015, 2017 and 2019 to be installed.
Update from Older Version
- When updating from 6.1.x, drop-in.
- When updating from 6.0.x or earlier, a full re-analysis via backup is required.
Version 6.1.10
Fixes
- False positives in "Assignment of a variable to itself" check for JavaScript
Version 6.1.9
Fixes
IllegalStateException
inFindingsTracker
in case the same finding was merged from several branches into one merge commit- Some triggers were rescheduled with empty deltas
- Merge request findings churn sometimes showed findings that were already removed from the target branch
- Architecture editor incorrectly displayed the current user as creator, if no information about the actual creator was available
Version 6.1.8
Fixes
- Findings tracking did not work for Simulink findings in some cases
- False positives in null pointer analysis in C/C++ when using implicit conversion to
bool
- Null pointer analysis for C/C++ missed dereferences in some comparisons
- Structuring analysis errors occurred in some cases for syntactically incorrect source files
NullPointerException
in AzureDevOpsGitMergeRequestAnnotationTrigger when updating pull request comments
Version 6.1.7
Fixes
- CppCheck reports could not be parsed if they contained the
<symbol>
tag - Zooming in on trend chart widgets led to "Data is unavailable" errors
where
was wrongly classified as a keyword in C code- The y-axis start value for the Single Metric Trend Chart widget was fixed at zero, making some graphs hard to read
- C++ raw strings containing closing parentheses were not processed correctly
Version 6.1.6
Fixes
- Dashboard branch selector displayed wrong branches
- Connection status to the Teamscale server in IntelliJ and NetBeans plug-ins was not always updated
- Quick edit button for dashboard widgets was sometimes not rendered
- False positives in commented out code analysis in C# for some comments
NullPointerException
when editing a task- Simulink: Action ports in If Action Subsystems were not correctly handled
- False positives for "No C-Style casts" check in C++ when using chained function calls
- Duplicated entries in the findings table in some cases
- Empty analysis groups were visible in the analysis profile editor
- False negatives for "Use ES6 keywords for variable declarations (not 'var')" check in JavaScript in case of require statements
- False positives for "Non-void function should return a value" check in C++ in case of user-defined conversion functions
NullPointerException
in "Names must not only differ in casing" check- Some preprocessor tokens could not be expanded in the code view
- User Filter in the Activity perspective sometimes included wrong results
- Redundant View Findings button was displayed in the Test Results view
Version 6.1.5
Fixes
- Architectures could not be saved anymore if the project had an alias
- Inconsistent method counts in TGA trend and treemap if part of the code was marked as test code
- Treemap tooltips could sometime prevent selecting other treemap elements with the mouse
- False-positive for "Null pointer dereference" check in certain arithmetic expressions
- Simulink findings imported from Artifactory were not removed if their location was in a referenced library
- SAML validation could fail for systems whose default encoding was not set to UTF-8
- When creating a new report based on an old report as template the dialog did not autofill all the old fields correctly
- The database-compaction service crashed when using LevelDB on Windows
- Creating a support request failed when statistics contained an empty
User-Agent
string
Improvements
- New
com.teamscale.project-creation-blacklist
system property to prevent creation of specific projects
Version 6.1.4
Fixes
- Browser cache was not invalidated after performing minor Teamscale update
- Teamscale backup import failed with error "Analysis profile not consistent (Unknown global option Enable Redundant Literal Analysis)"
- Tooltips in connector configurations on Project Edit view were no longer shown
- A recovery update of ABAP code removed all Code Inspector findings
- Default logging configuration did not produce any log when running Teamscale as systemd service
- C# methods with nullable return types were incompletely parsed
- False positives for "Interface Comment Missing" check in TypeScript
- Coverage setup generation wizard does not pick up project alias if configured
- Test Gap delta analysis did not respect Teamscale architectures
- Validation status of User & Group Import dialogs were not reset after import error
- Logging very large messages resulted in
OutOfMemory
error - False positives for "Empty Block: if" check in C++
- False positives for "Avoid unused private methods" check in Java
- Clang-Tidy checks could not run because of failure in loading the Clang native library
- Duplicate metric names created in the Configure Metric Table dialog when exposing absolute test coverage metrics
- Jira findings count was not updated after a finding had been marked as false-positive or tolerated
- Gerrit branches were wrongly labelled if Gerrit change was deleted and project imported from backup
IndexOutOfBoundsException
was thrown in "Avoid usingout
on parameters" check in C#- Definition for Macro
__unused
was absent in C/C++ default analysis profile - False positives for "Null Pointer Dereference" check when struct member has same name as other variable in C++
- False positives for "Null Pointer Dereference" check when checking for null with
object?
syntax in C# - False positives for "Avoid using ternary operators" check for nullish coalescing in TypeScript
- Python line coverage metric was incorrect in some cases
- Fortran 77 line continuation caused parser error
- Findings about unused parameter were lost in case there was another unused parameter in the same method signature
- Xodus database crashed if deleting and then recreating a project with the same name
Version 6.1.3
Fixes
- Fortran parser errors in line comments and step definitions of
do
-loops - Fortran parser errors in
do
-loops terminating withcontinue
token - PL/SQL parser errors for
DEFINE
,SET ESCAPE
, andSET CONCAT
statements - JavaScript parser errors when using generator functions
- TypeScript parser errors when using generics and complex type annotations
- Instance Comparison view gave no visual feedback when creating new snapshots
NullPointerException
in "Names must not only differ in casing" checkIndexOutOfBoundsException
in "Don't assign to wider essential type" check- Multiple MAAB checks were missing when importing Model Advisor reports
- Check description showed raw HTML tags in tooltips
- GitHub access to authentication tokens no longer uses deprecated API endpoint
- Red error page if trend/treemap dialog closed before loading was done
- MC/DC coverage was not shown in case of uploads in different disjoint partitions
- Findings descriptions were cut off even when there was enough space
Improvements
- "Modifiers must be in the right order" check is no longer enabled by default
Version 6.1.2
Fixes
- Analysis-profile validation errors were not shown to the user
- Clicking on an architecture file in the findings list opened the code view showing XML instead of the architecture viewer
- Subpaths of test execution metrics thresholds were not resolved correctly
- Fields of title slides were overwritten after changing report settings
- Test gap treemap did not load in the Delta view due to a JavaScript error
NullPointerException
inTestImpactSynchronizer
- Pressing »Enter« in Instance Comparison view opened Timetravel dialog
Version 6.1.1
Fixes
- Visual Studio Plugin crashed sometimes after clicking on findings in the Findings view
- Dashboard selection dropdown sometimes did not consider the selected project and incorrectly displayed all the available dashboards
- False positives for "Do not repeat the name of a class in its members" check in C#
- False positives for "Non-empty switch clauses have to be terminated unconditionally" check in C++
- Switch case statements with type casts caused parser errors in Java
- Upload of large backups failed
- Sorting findings by Finding Group and Type in the Findings perspective was incorrect
- Affected Files table was not correctly displayed or aligned in issue details view.
- Parser errors section in the right-side bar in the code view was not collapsible
Version 6.1.0
Major Features
- Dashboard Perspective Redesign
- SCM-Manager Pull-Request Integration
- Reports: Slide configuration menu has been moved to the right sidebar
New Checks
- "Macros should adhere to formatting conventions" check (C++)
- "Macro names should consist of uppercase characters and underscores only" check (C++)
IDE Integrations
- Visual Studio plug-in now considers Git history when determining changes for pre-commit analysis
Administration
- "Allow simple ternary operators" check is now enabled by default