Skip to content

Releases: Ericsson/codechecker

v6.27.4

23 Apr 09:20

Choose a tag to compare

This is a security release that fixes a critical authorization issue. Please, upgrade your servers as soon as possible.
Corresponding CVE ID: CVE-2026-25660

Thanks for @mtolley for reporting this issue.

  • Add missing VIEW permission check 7d60d1e
  • Additional logic for handling missing auth sessions 75b3913
  • Relax permissions requirements for task management fd9f405
  • [fix] Fix invisible chars in error plist (#4809)

Full Changelog: v6.27.3...v6.27.4

v6.27.3

13 Feb 10:39

Choose a tag to compare

  • Remove OAuth groups source requirements #4775

Full Changelog: v6.27.2...v6.27.3

v6.27.2

11 Feb 15:39

Choose a tag to compare

Bug fixes

  • Fix: Handle empty stdin gracefully in fixit command #4766
  • [fix] Can't list server instances at PyPI installation #4757
  • Fix fnmatch.translate() in skiplist handler #4754
  • [fix] Fix fnmatch regex generation assert #4753
  • [fix] "CodeChecker checkers" crash when infer used #4748
  • Fix the issue where the ReportTree component remains in a loading state when the result exceeds MAX_QUERY_SIZE #4747
  • [fix] Crash on non-existing variable #4742
  • Log full OS error message when the connection fails #4740

Enhancement

  • [fix] Add -j flag to "CodeChecker store"#4763
  • Added flags to set server processes #4772
  • Remove store_time.log #4770

Configuration

  • Add "-fdump-rtl.*" to ignored GCC compiler options#4765
  • [add] add severity for sarif #4761
  • [analyzer] Completely remove -analyzer-opt-analyze-headers #4760
  • [analyzer] Remove -analyzer-opt-analyze-headers flag #4752
  • Upgrade deps #4751
  • [fix] Missing OWASP Top10 link from checker labels #4749
  • Print analysis length with 2 decimals #4745
  • Upgrade SQLAlchemy to version 2.0 #4729
  • [refactor] Do not use pinned versions in requirements.txt #4714

v6.27.1

12 Dec 11:22

Choose a tag to compare

  • [fix] semver.Version doesn't have strip() #4728

Full Changelog: v6.27.0...v6.27.1

v6.27.0

08 Dec 15:35
c84d0ea

Choose a tag to compare

🌟 Highlights

Asynchronous Store

CodeChecker changes it's store execution model from synchronous to asynchronous mode.
The CodeChecker store command will not have to wait synchronously for the server to finish the storage procedure of the reports, but can seamlessly continue execution after the store process started. Then later, it can query the status of the storage task from the server.

This provides more stable report storage procedures as many users expereinced broken TCP connections during large analysis results storage batches.

CodeChecker will provide a command line utility for admins to query ongoing/finished/cancelled storage processes with filtering option.

❯ build/CodeChecker/bin/CodeChecker cmd serverside-tasks --enqueued-after 2024:08:19 --status cancelled
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Token                                                            | Machine            | Type                   | Summary                         | Status    | Product | User | Enqueued            | Started             | Last seen           | Completed           | Cancelled?
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
8b62497c7d1b7e3945445f5b9c3951d97ae07e58f97cad60a0187221e7d1e2ba | xxxxxxxxxxxxx:8001 | taskService::DummyTask | Dummy task for testing purposes | CANCELLED |         |      | 2024-08-19 15:55:34 | 2024-08-19 15:55:34 | 2024-08-19 15:55:35 | 2024-08-19 15:55:35 | Yes
6fa0097a9bd1799572c7ccd2afc0272684ed036c11145da7eaf40cc8a07c7241 | xxxxxxxxxxxxx:8001 | taskService::DummyTask | Dummy task for testing purposes | CANCELLED |         |      | 2024-08-19 15:55:53 | 2024-08-19 15:55:53 | 2024-08-19 15:55:53 | 2024-08-19 15:55:53 | Yes
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Detailed analysis status command

CodeChecker parse --status ./report_dir [--detailed] [-e json]

This command provides a clear overview of the current state of analysis results within the report directory, indicating which reports are up to date, which are outdated, which analyses have failed, and which files were never processed (e.g. skipped).

Example output:

----==== Summary ====----
Up-to-date analysis results
  clangsa: 311
  clang-tidy: 311
Outdated analysis results
Failed to analyze
  clangsa: 20
  clang-tidy: 20
Missing analysis results
  clangsa: 18
  clang-tidy: 18
  cppcheck: 349
Total analyzed compilation commands: 331
Total available compilation commands: 349
----=================----

The --detailed flag shows the exact files involved instead of just counts. For automated workflows, the -e json option provides the status info in a format that can be easily processed.

New Component Filter mode: single-origin-report

A new report filter option is introduced to CodeChecker: Single Origin mode. This option makes it possible to filter only those reports which are contained entirely within a source code component. To use it, select the "Single Origin" mode when editing the Source Component filter in the Reports view.

This new option is also available from the command line using the --single-origin-report argument. E.g:
CodeChecker cmd results --single-origin-report --component my_component ...

image

Highlight non-compliant guideline rules
Non-compliant rules are highlighed in the SEI-Cert statistics and compliant rules can be hidden.
image

[feat] Highlight non-compliant rules in the Guideline statistics by @noraz31 in #4616

Navigable numbers in the product statistics page
The values of the outstanding reports graph are now clickable.
image

[feat] Show found issues on a given date from statistics by @gulyasgergely902 in #4615

What's Changed

New Contributors

Full Changelog: v6.26.2...v6.27.0

v6.27.0-rc1

14 Oct 12:56

Choose a tag to compare

v6.27.0-rc1 Pre-release
Pre-release

🌟 Highlights

Asynchronous Store

CodeChecker changes it's store execution model from synchronous to asynchronous mode.
The CodeChecker store command will not have to wait synchronously for the server to finish the storage procedure of the reports, but can seamlessly continue execution after the store process started. Then later, it can query the status of the storage task from the server.

CodeChecker will provide a command line utility for admins to query ongoing/finished/cancelled storage processes with filtering option.

❯ build/CodeChecker/bin/CodeChecker cmd serverside-tasks --enqueued-after 2024:08:19 --status cancelled
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Token                                                            | Machine            | Type                   | Summary                         | Status    | Product | User | Enqueued            | Started             | Last seen           | Completed           | Cancelled?
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
8b62497c7d1b7e3945445f5b9c3951d97ae07e58f97cad60a0187221e7d1e2ba | xxxxxxxxxxxxx:8001 | taskService::DummyTask | Dummy task for testing purposes | CANCELLED |         |      | 2024-08-19 15:55:34 | 2024-08-19 15:55:34 | 2024-08-19 15:55:35 | 2024-08-19 15:55:35 | Yes
6fa0097a9bd1799572c7ccd2afc0272684ed036c11145da7eaf40cc8a07c7241 | xxxxxxxxxxxxx:8001 | taskService::DummyTask | Dummy task for testing purposes | CANCELLED |         |      | 2024-08-19 15:55:53 | 2024-08-19 15:55:53 | 2024-08-19 15:55:53 | 2024-08-19 15:55:53 | Yes
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

What's Changed

New Contributors

Full Changelog: v6.26.2...v6.27.0-rc1

v6.26.2

22 Sep 14:44

Choose a tag to compare

v6.26.1: [fix] Personal access token name fix

10 Jul 17:52

Choose a tag to compare

  • Install "requests" Python dependency #4596
  • [fix] Fix migration logging #4597
  • [fix] Add global view permission requirement for viewing products #4608
  • [feat] Sync group permissions with login provider to prevent out-of-sync groups. #4610
  • [fix] Significant speed-up for create_actions_map and start_workers #4611
  • Fix SeverityIcon color error #4618
  • [fix] Blank page on invalid session token #4622
  • [fix] Personal access token name fix #4628

Full Changelog: v6.26.0...v6.26.1

v6.26.0

09 Jun 18:51
0bbf351

Choose a tag to compare

🌟 Highlights

Ouath2 based Single Sign On Authentication

CodeChecker now provides Oauth2 based user authentication through various providers. It is now possible to configure up your CodeChecker server instance to accept user logins with their Google, Microsoft or GitHub accounts.
To enable this feature, you will first need to configure your CodeChecker server instance with the corresponding oauth provider and add a
new authentication method section in the codehchecker server configuration file.
If the user group memberships are managed by a Microsoft Entra identity server, these memberships will be fetched by CodeChecker through the graph API.

See CodeChecker authentication document document for configuration details.

The features was implemented in the following PRs:

  • Implementation of Oauth of Github, Google and Microsoft by @feyruzb in #4298
  • integrated signum fetching and using it as optional username by @feyruzb in #4517
  • Add paging to the graph API query by @dkrupp in #4532

image

Personal Access token Management

Personal access tokens are generated "passwords" which can be used to login to CodeChecker. If MultiFacor Authentication is enabled, it is the only way to authenticate through the CLI.

  • The personal access tokens now can be created on the GUI too, not only through the CLI.
  • It is accessible if you click on you user name in the top right corner.
    image

❗ Backward incompatible changes

  • The personal Access tokens cannot be viewed after creation. It was possible to list the values of the personal access tokens after creation, but after this version it will only be possible to view once at creation time.

💻 CLI/Server improvements

🔨 Other

🌳 Environment

Read more

v6.26.0-rc1

28 Apr 09:29

Choose a tag to compare

v6.26.0-rc1 Pre-release
Pre-release

🌟 Highlights

Ouath2 based Single Sign On Authentication

CodeChecker now provides Oauth2 based user authentication through various providers. It is now possible to configure up your CodeChecker server instance to accept user logins with their Google, Microsoft or GitHub accounts.
To enable this feature, you will first need to configure your CodeChecker server instance with the corresponding oauth provider and add a
new authentication method section in the codehchecker server configuration file.
If the user group memberships are managed by a Microsoft Entra identity server, these memberships will be fetched by CodeChecker through the graph API.

See CodeChecker authentication document document for configuration details.

The features was implemented in the following PRs:

  • Implementation of Oauth of Github, Google and Microsoft by @feyruzb in #4298
  • integrated signum fetching and using it as optional username by @feyruzb in #4517
  • Add paging to the graph API query by @dkrupp in #4532

image

Personal Access token Management

Personal access tokens are generated "passwords" which can be used to login to CodeChecker. If MultiFacor Authentication is enabled, it is the only way to authenticate through the CLI.

  • The personal access tokens now can be created on the GUI too, not only through the CLI.
  • It is accessible if you click on you user name in the top right corner.
    image

❗ Backward incompatible changes

  • The personal Access tokens cannot be viewed after creation. It was possible to list the values of the personal access tokens after creation, but after this version it will only be possible to view once at creation time.

💻 CLI/Server improvements

  • Cache __contains_no_intrinsic_headers and thus speedup parse_options ~2x by @irishrover in #4479
  • [analyzer] debug_analyzer log level for analyzer commands by @bruntib in #4473
  • [cmd] Emit errors instead of hiding flags by @Szelethus in #4465
  • fix(report-converter): Support null column in eslint reports by @SweetVishnya in #4497
  • [NFC] Eliminate the "W" form of clang-tidy warnings by @bruntib in #4438
  • [fix] Unique key constraint violation fix by @bruntib in #4505
  • [bugfix] Don't crash if clangsa binary is missing by @Szelethus in #4531
  • Fix serving Bad request pages in case of some HTTP errors by @Discookie in #4506
  • [feat] Display announcement message in the CLI by @noraz31 #4535

🔨 Other

🌳 Environment

New Contributors

Full Changelog: v6.25.1...v6.26.0-rc1