Skip to content

chore(release): 4.7.0

Nigel Kukard requested to merge nkukard/container-registry:nkupdates into main

What does this MR do?

chore(release): 4.7.0

4.7.0 (2024-8-1)

Features

  • add option to filter by exact string to the /gitlab/v1/../tags/list/ endpoint (70b873a)
  • cache: use Redis repository cache for the check blob operation (5df1e7c)
  • datastore: add database load balancing service discovery (4e47073)
  • datastore: introduce database load balancer entity (b070146)
  • datastore: periodically refresh DB replica list during load balancing (8dc9a5a)
  • db: add db queries for bbm (2709a2c)
  • importer: stop importing all repositories if tags table is not empty (0e78c82)
  • registry: remove inventory tool (d662c6a)
  • registry: remove require empty database option (45ef380)

🐛 Bug Fixes 🐛

  • handlers: remove traces of v1/import route (37636fa)

️ Performance Improvements

  • redis: Temporary revert of !1683 (9d179a1)
  • redis: add Redis caching to get manifest endpoint (96cffcc)
  • redis: add support for caching repository data in tags list API endpoint (10fa925)
  • redis: Temporary revert of !1679 (ca00a18)

️ Build

  • deps: switch from github.com/golang/mock to go.uber.org/mock (cd46439)
  • deps: update dependency danger-review to v1.4.1 (44e71d3)
  • deps: update module cloud.google.com/go/storage to v1.43.0 (82f22fc)
  • deps: update module github.com/alicebob/miniredis/v2 to v2.33.0 (e8cef95)
  • deps: update module github.com/cenkalti/backoff/v4 to v4.3.0 (467b9e5)
  • deps: update module github.com/getsentry/sentry-go to v0.28.1 (82b334a)
  • deps: update module github.com/prometheus/client_golang to v1.19.1 (d1c9170)
  • deps: update module github.com/redis/go-redis/v9 to v9.5.3 (7504003)
  • deps: update module github.com/redis/go-redis/v9 to v9.5.4 (25b1c01)
  • deps: update module github.com/redis/go-redis/v9 to v9.6.0 (615cfbf)
  • deps: update module github.com/redis/go-redis/v9 to v9.6.1 (f6477e3)
  • deps: update module github.com/rubenv/sql-migrate to v1.7.0 (c4ede5b)
  • deps: update module github.com/schollz/progressbar/v3 to v3.14.4 (2108236)
  • deps: update module github.com/spf13/cobra to v1.8.1 (d066f8d)
  • deps: update module github.com/spf13/viper to v1.19.0 (71ae4b1)
  • deps: update module github.com/xanzy/go-gitlab to v0.107.0 (56552ed)
  • deps: update module golang.org/x/crypto to v0.25.0 (1742972)
  • deps: update module google.golang.org/api to v0.189.0 (302327b)

Related to

Author checklist

  • Feature flags
    • Added feature flag:
    • This feature does not require a feature flag
  • I added unit tests or they are not required
  • I added documentation (or it's not required)
  • I followed code review guidelines
  • I followed Go Style guidelines
  • For ~database changes including schema migrations:
    • Manually run up and down migrations in a postgres.ai production database clone and post a screenshot of the result here.
    • If adding new queries, extract a query plan from postgres.ai and post the link here. If changing existing queries, also extract a query plan for the current version for comparison.
      • I do not have access to postgres.ai and have made a comment on this MR asking for these to be run on my behalf.
    • Do not include code that depends on the schema migrations in the same commit. Split the MR into two or more.
  • Ensured this change is safe to deploy to individual stages in the same environment (cny -> prod). State-related changes can be troublesome due to having parts of the fleet processing (possibly related) requests in different ways.

Reviewer checklist

  • Ensure the commit and MR tittle are still accurate.
  • If the change contains a breaking change, apply the ~"breaking change" label.
  • If the change is considered high risk, apply the label ~high-risk-change
  • Identify if the change can be rolled back safely. (note: all other reasons for not being able to rollback will be sufficiently captured by major version changes).

If the MR introduces ~database schema migrations:

  • Ensure the commit and MR tittle start with fix:, feat:, or perf: so that the change appears on the Changelog
If the changes cannot be rolled back follow these steps:
  • If not, apply the label ~"cannot-rollback".
  • Add a section to the MR description that includes the following details:
    • The reasoning behind why a release containing the presented MR can not be rolled back (e.g. schema migrations or changes to the FS structure)
    • Detailed steps to revert/disable a feature introduced by the same change where a migration cannot be rolled back. (note: ideally MRs containing schema migrations should not contain feature changes.)
    • Ensure this MR does not add code that depends on these changes that cannot be rolled back.

Merge request reports

Loading