Release Notes for Codecov v4.5.7

4.5.7 Changelog

New

  • (Enterprise Only) Added two additional metrics to the worker: services.archive.read_file and worker.tasks.{self.name}.process_report. These metrics measure the time to read a file from the storage archive and the time taken to process a report for a particular processor respectively. These metrics are exposed via StatsD and should be accessible in prometheus, grafana, datadog, etc.
  • Logging now exposes some issues that can occur when communicating with repository providers, making it easier to troubleshoot potential API/connectivity issues.

Fixes

  • Fixed a database migration issue that led to missing enum values in the database. See the Migration Updates section below for more details.
  • Increased the cache ttl for the GitHub App Integration token, resolving issues that can occur when the token expires before Codecov is finished using it.

Minor

  • Performance and memory management improvements to the worker, particularly related to file parsing.
  • Improved caching strategy for PR based comparisons loaded in the Compare page, potentially resulting in improved load times of the Compare page. This improvement lays the groundwork for further performance enhancements related to the Compare page in the future.
  • Better error handling in the worker when receiving GitHub App Integration "installation token suspended" 403 errors.
  • Removed the # preceding flag names in the Codecov Comment.
  • Added GitHub Checks status to the GitHub Status notification, better exposing pass/fail outcome for a GitHub Check at the status check level.

Migration Updates

An error was found in the Codecov Enterprise v4.5.1 database migration files that led to three enum values not being properly stored. This error results in failed writes of notification statuses to the database when GitHub Checks are used.

This error was fixed such that new Codecov Enterprise users starting from version 4.5.7 and onward will not encounter this issue. However, if you are upgrading to 4.5.7 from earlier versions of Codecov, the following manual migrations are recommended:

ALTER TYPE notifications ADD VALUE IF NOT exists 'checks_patch';
ALTER TYPE notifications ADD VALUE IF NOT exists 'checks_project';
ALTER TYPE notifications ADD VALUE IF NOT exists 'checks_changes';

It is recommended to make a backup of your database before running any manual migrations, the above included. However, we have tested this migration internally and have discovered no issues.

Who should run these migrations?

It's recommended that these migrations be run for every Codecov Enterprise installation upgrading to 4.5.7 from an earlier version. This is particularly necessary for those enterprise customers planning to use GitHub Checks.