Release notes for Codecov v4.6.6

New Features

This release brings two new features: an updated PR comment users can opt-in to seeing, and -- for self-hosted -- a mechanism to control timeouts of the Notify task in the event that PR comments and statuses are not being properly and reliably posted to PRs.

New PR Comment

As part of out ongoing efforts to improve user experience in the Pull Request, Codecov has updated the PR comment. Currently this is opt-in and the new comment can be viewed by updating either an install yaml (for self-hosted), team yaml, or repo yaml with the following:

comment:
   layout: "newheader, {any other valid layout options}, newfooter"
   hide_comment_details: true

The above configuration will result in the following PR layout:

10041004

The updated PR comment with additional details hidden in a rollup, hide_comment_details: false in the yaml will expand those details by default.

If it is preferred to retain the old layout, the following settings can be supplied:

comment:
   layout: "header, {any other valid layout options}, footer"
   hide_comment_details: true

Over time, the new layout will become the default PR Comment experience for Codecov. However, in v4.6.6, the old PR comment will be delivered by default unless the yaml is updated.

(Self-Hosted) Notification Task Timeout Configuration

For some self-hosted users, the asynchronous worker task that pushes notifications to the upstream repo provider can timeout. This can prevent Codecov pull request comments and/or statuses from being written to pull requests. If you are experiencing this scenario and your logs contain output like the following:

"Soft time limit (45s) exceeded for app.tasks.notify.Notify"

You may be experiencing this problem and increasing the timeout of the Notify task can help. Both the soft and hard time limits for the notify task can be set as follows

SETUP__TASKS__NOTIFY__SOFT_TIMELIMIT=45 #default is 45s
SETUP__TASKS__NOTIFY__HARD_TIMELIMIT=60 #default is 60s

These settings are only modifiable via environment variable for the web container and will not be respected if used in the codecov.yml.

V4.6.6 Full Changelog

New

  • (Self-Hosted) The notification task timeout can now be configured via an environment variable.
  • Updated the PR Comment's design and functionality.

Fixes

  • GitLab integration now properly handles expiry and refreshing of oauth tokens based on Gitlab's new oauth token expiration scheme.
  • GitLab integration no longer uses public bots to post commit statuses on public repos, as this behavior is now invalid in the GitLab API.
  • Gitlab integration will not properly support API calls that contain files, folders, and branches with spaces in the file name.
  • Fixed an issue that can cause simplecov report processing to fail in some scenarios.
  • Fixed an issue causing the ! operator in the branches section of the codecov.yml to be ignored.
  • (Self-Hosted only) Fixed an issue where it was possible to exceed the seat count, thus unintentionally limiting functionality.

Minor

  • Errors with the Team Bot and Repo YAML are now persisted to the database. These errors will be surfaced in the UI in a future update.

Docker Image Information

The following Docker digests comprise this release:

  • codecov/enterprise-web:v4.6.6 - sha256:ff74f412cddcc64063dd503064a2ccb1d841a55180e863c2e8b3a2b8dcc9f42a
  • codecov/enterprise-worker:v4.6.6 - sha256:6eaed78c94f2b7274559d44327a45d7f3817b4eb65caf0e6b1ab9c31b82a7691
  • codecov/enterprise-api:v4.6.6 - sha256:cab535810aac25fbde4b251317ec63fa1ed9bbe94051a7ed4ce7a6641ee89eaa
    These are also the digests referenced by the latest-stable tag.