9.9 | Setup and upgrade | LTA to LTA release upgrade notes

Was this page helpful?

On this page

Start Free

LTA to LTA release upgrade notes

These Upgrade Notes are intended for users who are directly upgrading from SonarQube 8.9 LTA. Just upgrading a few minor versions? Refer to the regular upgrade notes.


Token expiry (9.6)
New tokens can now have an optional expiration date. Expired tokens cannot be used and must be updated. With Enterprise Edition and above, system administrators can set a maximum lifetime for new tokens. See Security documentation for more information. (SONAR-16565SONAR-16566).

Project analysis token (9.5) 
You can now generate tokens of different types and can create a different analysis token for every specific project. The new tokens will include a prefix to help you quickly identify SonarQube tokens and their type. The usage of project analysis tokens is encouraged to limit the access this token has. See Generating and Using Tokens documentation for more information. (SONAR-16260).

Bitbucket Cloud authentication now built-in (9.2)
Support for Bitbucket Cloud authentication is now built-in. If you were using the Bitbucket Cloud authentication plugin before, you need to remove it from SonarQube before upgrading.

SonarQube uses the same settings as the plugin, so you do not need to update them. The Teams restriction has been replaced with the Workspaces restriction and is migrated accordingly.

Password of old inactive account needs reset (9.4)
The support for SHA1 hashed password has been removed. This algorithm was replaced by a stronger hashing algorithm since version 7.2. As a result, local accounts that did not log in since 7.2 will be forced to have their password reset by a SonarQube administrator. Accounts using external authentication such as SAML, LDAP, GitHub authentication, etc., are not impacted. Information about the possibly impacted accounts will appear in the logs during the upgrade. (SONAR-16204).


Updated built-in Quality Profiles (9.0-9.9)

The built-in Quality Profiles for each language have been updated, meaning rules may have been added, changed, deprecated or dropped. If you are using or extending any of the “Sonar way” built-in Quality Profiles, make sure to check their Changelog to see what has changed.

SonarScanner for .NET compatibility (9.9)

Incremental analysis of C# / VB.NET in SonarQube requires SonarScanner for .NET 5.11+.

New main branch names default to “main” (9.8)
In the past, newly created projects and applications would have a main branch called “master”. This has now been changed to “main”. The default value for a newly created main branch name can be changed under Administration > General > Default main branch name. See the branch analysis documentation for more information. (SONAR-17524)

JavaScript, TypeScript, and CSS analysis now requires Node.js 14.17+ (9.7)
In order to analyze Javascript, Typescript, and CSS code, Node.js 14.17+ must be installed on the machine running the scan. We recommend that you use the latest Node.js LTS, which is currently Node.js 18.

Secured settings no longer available in web services and on the scanner side (9.1) 
This change especially affects the analysis of SVN projects but also, possibly, the use of some 3rd-party plugins. Secured settings required to perform the analysis now need to be passed to the scanner as parameters.

Custom measures feature has been dropped (9.1) 
The custom measures feature, which was previously deprecated, has been removed. (SONAR-10762).

Scanners require Java 11 (9.0) Java 11 is required for SonarQube scanners. Use of Java 8 is no longer supported. See the documentation on Scanner Environment for more information.

Reporting Quality Gate status on GitHub branches requires an additional permission (9.0) 
When working in private GitHub repositories, you need to grant read-only access to the Contents permission on the GitHub application that you're using for SonarQube integration. See the GitHub integration documentation for more information.


SonarQube server requires Java 17 (9.9) 
Java 17 is required for SonarQube server. Use of Java 8 and Java 11 is no longer supported. See the documentation on prerequisites for more information.

Microsoft SQL Server with Integrated Authentication changes in configuration (9.9)

Database support updated (9.9)

  • SonarQube no longer supports Oracle version 12C and 18C.
  • Oracle version 21C is now supported.
  • SQL Server 2022 is now supported.

Single Helm chart for Community, Developer, and Enterprise Edition (9.9)

The sonarqube-lts Helm chart is no longer maintained. Please use the sonarqube Helm chart to install SonarQube 9.9 LTA Community, Developer, or Enterprise Edition. The Data Center Edition is available with the sonarqube-dce Helm chart. Refer to the upgrade guide for more information.

Docker images updated (9.9)

  • Recommended Docker Engine version is 20.10 and later.
  • If you use self-signed certificates, you may need to adjust your Docker configuration: the path of the Java installation has changed to /opt/java/openjdk. See Install the server for more information. 
  • The deprecated SONARQUBE_JDBC_USERNAME, SONARQUBE_JDBC_PASSWORD, and SONARQUBE_JDBC_URL variables have been removed. See Environment variables for up-to-date configuration variables.
  • The lts tag on Docker images is replaced with the new LTA release. If you want to avoid any automatic major upgrades, we recommend using the corresponding 9.9-<edition> tag instead of lts-<edition>.

Change in the database connection pool (9.7)
The database connection pool has been replaced for better performance. The sonar.jdbc.maxIdlesonar.jdbc.minEvictableIdleTimeMillis and sonar.jdbc.timeBetweenEvictionRunsMillis properties no longer have any effect and should be removed from the configuration. Also, the JMX information that is provided to monitor the connection pool has evolved. See the Monitoring documentation for more information. (SONAR-17200).

Running SonarQube as a Service and Java version selection (9.6)

  • To install, uninstall, start or stop SonarQube as a service on Windows, now you should use %SONARQUBE-HOME%\bin\windows-x86-64\SonarService.bat install. See Operating the Server and Upgrade Guide for more information.
  • If there are multiple versions of Java installed on your server, to select specific Java version to be used, set the environment variable SONAR_JAVA_PATH. Read more here.

Microsoft SQL Server changes in configuration and Integrated Authentication (9.6) 

  • If your Microsoft SQL Server doesn't support encryption, you will need to add encrypt=false to the JDBC URL connection string. (SONAR-16249).
  • If your Microsoft SQL Server requires encryption but you don't want SonarQube to validate the certificate, you will need to add trustServerCertificate=true to the JDBC URL connection string.

User Interface

Portfolio overview now shows ratings on both New Code and Overall Code (9.3)
The Portfolio overview and project breakdown have been redesigned to provide a high-level view on project health according to your New Code definition as well as Overall Code. New Code ratings are shown for Reliability, Security Vulnerabilities, Security Review, and Maintainability. To see these ratings on New Code, Portfolios need to be recomputed after upgrading to 9.3.

Along with this redesign, Portfolios and Applications no longer show users information on projects they don't have access to, and Application administration has been moved out of the Portfolio administration UI.

Support for Internet Explorer 11 dropped (9.0)
Support for Internet Explorer 11 and other legacy browsers has been dropped. (SONAR-14387).

Web/Plugin API

Deprecated WebAPI endpoints and parameters removed (9.1)
The WebAPI endpoints and parameters deprecated during the 7.X release cycle have been removed. For a complete list of removed endpoints and parameters see SONAR-15313.

JavaScript custom rule API removed (9.0)
The JavaScript custom rule API, which was previously deprecated, has been removed. Plugins can no longer use this API to implement custom rules. See the JavaScript documentation for more information. (SONAR-14928).

Deprecated Plugin Java API dropped (9.0)
Parts of the Java API for plugins that were deprecated before SonarQube 7.0 have been dropped. You should compile plugins against SonarQube 9.0 to ensure they're compatible and to check if they're using a deprecated API that has been dropped. (SONAR-14925SONAR-14885).

© 2008-2024 SonarSource SA. All rights reserved. SONAR, SONARSOURCE, SONARLINT, SONARQUBE, SONARCLOUD, and CLEAN AS YOU CODE are trademarks of SonarSource SA.

Creative Commons License