Change8

v3.18.0

📦 quay-ioView on GitHub →
5 features🐛 23 fixes🔧 11 symbols

Summary

This release includes several bug fixes, dependency updates, and new features such as enhanced action logs and manifest track visualization. It also introduces a new `quay serve` command for a minimal OCI Go-based container registry.

Migration Steps

  1. Disable supervisord logfile writing. If log file writing is critical, re-enable it.
  2. The IP resolver has been refactored to replace GeoLite2 with IPLocate. Ensure any custom IP resolution logic is compatible with the new IPLocate implementation.

✨ New Features

  • Enhance action logs with detailed request context for Splunk/ESS EOI compliance (PROJQUAY-9794).
  • Add manifest track visualization for tags (PROJQUAY-9592).
  • Add Go config parser and offline validator (PROJQUAY-10615).
  • Add `quay serve` cmd to minimal OCI Go-based container registry (PROJQUAY-12412).
  • Add OrganizationContactEmail table and migration (PROJQUAY-10588).

🐛 Bug Fixes

  • Prevent SSRF in org mirroring API (PROJQUAY-10572).
  • Freeze clock in expiration test to avoid midnight wrap.
  • Use resolvable hostname in org mirror E2E tests (PROJQUAY-10630).
  • Fall back to pure-Python rsa for CloudFront signing (PROJQUAY-10609).
  • Fix log_action failed error message losing all context (PROJQUAY-10604).
  • Use dynamic redirect URL for OIDC validation (PROJQUAY-1920).
  • Use RE2 engine for immutability policy regex to prevent ReDoS (PROJQUAY-10573).
  • Preserve site-packages in PYTHONPATH for alembic migrations (PROJQUAY-10656).
  • Catch all react rewrite (PROJQUAY-10625).
  • Use string-based tab IDs in Settings (PROJQUAY-10574).
  • Harden Dockerfile with DROP ALL alignment (PROJQUAY-10168).
  • Block manifest deletion by digest when tags are immutable (PROJQUAY-10504).
  • Remove unbounded user cache in Splunk log mapper (PROJQUAY-10665).
  • Revert use RE2 engine for immutability policy regex to prevent ReDoS (PROJQUAY-10573).
  • Add org_mirror events to Usage Logs chart (PROJQUAY-10674).
  • Replace N+1 query with batch SELECT+INSERT in sync_discovered_repos (PROJQUAY-10691).
  • Fix datetime serialization in audit logs (PROJQUAY-10586).
  • Use PYTHONPATH env var in supervisord config (PROJQUAY-10788).
  • Add missing change_tag_immutability log description (PROJQUAY-10779).
  • Use local time in formatDateForInput (PROJQUAY-10789).
  • Omit public param when authenticated in orgmirror (PROJQUAY-10675).
  • Grant superusers full visibility on foreign orgs and repos (PROJQUAY-7025).
  • Replace datetime-local with DatePicker+TimePicker (PROJQUAY-10739).

Affected Symbols