LTS to LTS release upgrade notes
These Upgrade Notes are intended for users who are directly upgrading from SonarQube 8.9 LTS. 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-16565, SONAR-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)
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)
- If you are using Microsoft SQL Server with Integrated Authentication, you will need to replace the
mssql-jdbc_authdll file on your
mssql-jdbc_auth-11.2.2.x64.dllfrom the Microsoft SQL JDBC Auth 11.2.2 package. See Install the server for more information.
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 LTS 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_URLvariables have been removed. See Environment variables for up-to-date configuration variables.
ltstag on Docker images is replaced with the new LTS release. If you want to avoid any automatic major upgrades, we recommend using the corresponding
9.9-<edition>tag instead of
Change in the database connection pool (9.7)
The database connection pool has been replaced for better performance. The
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=falseto 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=trueto the JDBC URL connection string.
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).
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.
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-14925, SONAR-14885).
© 2008-2023, SonarSource S.A, Switzerland. Except where otherwise noted, content in this space is licensed under a Creative Commons Attribution-NonCommercial 3.0 United States License. SONARQUBE is a trademark of SonarSource SA. All other trademarks and copyrights are the property of their respective owners.