Update Notices for Teamscale 9.4
Updated requirements in version 9.4
The minimal system requirements for web browsers have been updated to:
- Chrome version 108+
- Firefox version 101+
- Edge version 108+
- Safari version 15.4+
The minimal requirements for the IntelliJ plugin have been updated to version 2020.3.
Deprecated feature: XPath-based entity selection in version 9.4
From version 9.4, using XPath for selecting entities is deprecated. This affects those instances where the users implemented their own custom checks using XPath selection. The entity selection in these should be replaced by Java code. Please contact Teamscale support if you need help with updating your custom checks.
Content Security Policy changed for version 9.4
From version 9.4, Teamscale's Content Security Policy (CSP) prevents embeddings in an <iframe>
element of unknown origins by default. This is a proactive security measure to prevent clickjacking. To allow embeddings from other origins, you can set the com.teamscale.server.csp-frame-ancestors
JVM property to a valid "frame-ancestors" CSP value. The default is 'self' https://dev.azure.com https://cqsegmbh.gallerycdn.vsassets.io https://*.visualstudio.com
The last three origins ensure that the embedded parts of Teamscale's Azure DevOps Extension continue to work. Note that the JVM flag will completely overwrite this setting, including the defaults.
Permissions to create dashboard templates might be missing for
version 9.4 In 9.4 the CREATE_DASHBOARD
permission was removed along with the "Dashboard Creator" role. Now all users have the permission to create dashboards by default again. Users might lose the permission to create dashboard templates, in this case it can be readded in the Admin > Roles view.
Removed feature: Avatar images via Gravatar
Due to privacy concerns, the ability to fetch avatar images via the external Gravatar service was deprecated since version 9.2 and was removed in Teamscale 9.4. Please upload your avatar directly to Teamscale.
Custom log configurations have to be updated for version 9.3
If you use a custom log configuration, you have to add new filters to still collect the Parse Log errors. Please contact Teamscale support for details.
Deprecated feature: Issue id parameter in Test Gap Treemap
widgets The "issue id" parameter of the Test Gap Treemap widget is deprecated and will be removed in Teamscale 9.1. Please use the Test Gaps > Issues perspective instead.
Added parameter support for abapLint checks as of version 8.9
Analysis profiles which specify an abapLint configuration file need to be manually migrated. This can be done by importing the abapLint configuration file via the Analysis Profiles view. The import will create a Teamscale analysis profile with the settings from the imported abapLint configuration file.
Action Required: Updated default CORS configuration as of version
8.9 The default configuration was changed to not allow any CORS requests. If you are using the Azure DevOps Integration or integrate Teamscale dashboards within other websites (e.g. Jira), you have to manually change the CORS configuration. Please refer to Configuring CORS Settings for more information.
New cache for AnalysisReportPersister
since 9.4.14
To reduce the memory usage we restructured the code and introduced a new size based cache in the AnalysisReportPersister
. This improved performance by roughly 2-3x and significantly reduces memory usage. By default, the cache is set to use a maximum size of 1GB, which should easily cover most cases. In case the cache size is not sufficient, a warning will be logged as part of the execution of AnalysisReportPersister
. This includes a message on how big the cache should be and how to configure it. If your projects contain many (and large) external reports (such as test coverage, test executions or external findings), keep an eye on the logs, as a small cache will strongly hamper analysis performance.
Re-Analysis when Upgrading
- When updating from 9.4.x, drop-in.
- When updating from 9.3.x or earlier, a full re-analysis via backup is required.
What's New for Teamscale 9.4
GitHub Integration: Forked Pull Requests
Starting this release, Teamscale can now analyse and vote on pull requests from forked repositories in GitHub. With this change, now one of the most common workflows for open source projects is supported in Teamscale.
Web UI & Accessibility
In this release, we have continued our efforts to improve the UI and make Teamscale more accessible and usable by as many people as possible. These improvements include the following:
- Improved layout of the Check Explorer
- External links in check descriptions are now marked with an icon
- Improved layout of Users view on large screens
- Architecture editor now automatically inserts bend points when components have dependencies in both directions
- Assessment bars are now accessible for screen readers and display additional information in their tooltips
- Status of projects, connectors and uploads is now also indicated by icons in addition to colour
- Colours in finding badges are now easier to distinguish
- Improved layout of several widgets when using zoom
Test Intelligence
- Teamscale Maven Plugin was extended with a goal to upload Jacoco reports
- New installer for the Java profiler
- Ability to configure the Teamscale JaCoCo Agent via the Teamscale UI
Requirements Tracing
This release introduces new requirements tracing features:
- Requirements can now be filtered based on issue queries, using the new keywords issue_query, likeIn, **like_in ** and ~in
- Specification items that represent tests can now be explicitly imported as such
Embedded Development & C/C++
C/C++
- Architecture analysis for C/C++ is now based on preprocessed code (i.e., ignores excluded code). You can read more about this here. If you still need dependencies from excluded code (i.e. old behaviour), then please enable the analysis-profile option "Search for dependencies in excluded code" in the architecture group.
Simulink
- Added parsing of "Dimensions" and "DimensionMode" from data dictionaries, where this information can now be used in custom checks.
New Checks
ABAP
- "Unauthorized Access Control Object" check
- "Optional Parameter" check
- "Checks for missing or obsolete ABAP doc" check
C/C++
- "Avoid Exceptions and Exception Handling" check
- "Non-ASCII characters" check for comments
Java, JavaScript, C#, Objective-C & Python
- "Non-ASCII characters" check for comments
IDE Integrations
Eclipse
- Easier and better access to the Teamscale preferences from the main menu
IntelliJ
- Long finding messages are now displayed across multiple lines
Additional Improvements
- IntelliJ, Eclipse, Visual Studio Code plugins and the teamscale-dev CLI client will now warn if the server requires a newer plugin or client version
- Improved feedback for pre-commit when the project is in history analysis or in a rollback
Administration & Operation
This release comes with a number of administrative features to make operating a Teamscale instance easier.
Instance Comparison
- Instance comparison snapshots can now be exported and imported between instances
- Instance comparison now allows to optionally select a branch
Project Configuration
- New checks are stored as "undecided" in analysis profiles until they are explicitly configured
- JavaScript/TypeScript: Source maps are now excluded by default in project configurations
Additional Improvements
- Extended log levels with level FATAL