All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog.
v0.3.0 - 2026-08-29
- Container image now runs
serveby default and loads bundled config from$KO_DATA_PATH PKGPROXY_TRUST_PROXYenv var (and--trust-proxyflag) to opt in to X-Forwarded-For trustPKGPROXY_HOSTenv var to set the listen address without passing--hoston the command linePKGPROXY_CACHEDIRenv var to set the cache directory without passing--cachediron the command line
- Breaking:
remote_ipin access logs now reflects the direct connecting peer by default; setPKGPROXY_TRUST_PROXYto restore XFF-based IP extraction when running behind a reverse proxy - Upgraded Echo web framework to v5.3.1
- Config-file errors now list all default paths attempted, not just the last one
HEADrequests to the landing page now return 200 instead of 405, so health checks work
v0.2.0 - 2026-04-06
- Per-repository
excludeconfig field to prevent specific filenames or suffixes from being cached - Support caching Gentoo distfiles with
suffixes: ["*"]wildcard andexcludelist - Gentoo e2e test using
emerge --fetchonlyin agentoo/stage3container
v0.1.2 - 2026-03-28
- Disable Echo v5's default 30-second
WriteTimeoutwhich killed streaming responses for large package files
v0.1.1 - 2026-03-25
- End-to-end tests using real package managers (dnf, apt, pacman) in containers via
make e2e ubuntu-securityrepository in default configuration
- Cache-miss responses are now streamed directly to a temp file on disk instead of being buffered in memory, eliminating memory spikes for large packages
Content-Lengthis validated before committing cached files, preventing truncated upstream responses from being cached- Client disconnects no longer prevent caching — if a client aborts mid-download, the upstream response is still fully received and cached
- Landing page snippets for Debian/Ubuntu use
<release>placeholder instead of hardcoded codenames - README client configuration examples updated to current stable releases (Debian trixie, Ubuntu noble)
v0.1.0 - 2026-03-20
- Caching forward proxy for Linux package repositories
- Support for RPM-based distributions: Fedora, CentOS, CentOS Stream, AlmaLinux, Rocky Linux, and EPEL/COPR
- Support for DEB-based distributions: Debian (including security updates) and Ubuntu
- Support for Arch Linux repositories
- YAML-based configuration of repositories, upstream mirrors, and cacheable file suffixes
- Automatic failover across multiple configured upstream mirrors with optional retry on 5xx responses
- HTTP landing page listing all configured repositories with ready-to-use client configuration snippets for supported package managers
- Cache invalidation via HTTP
DELETErequests to remove individual cached files - Multi-architecture container image (amd64 + arm64) published to GitHub Container Registry, signed with cosign via GitHub OIDC