Simon Chrzanowski
cbbeed423b
Cache RPM packages under their full path
...
RPM packages were cached under their bare filename. With upstream.rpm
pointing at a mirror root that serves several distributions, Rocky and
Alma both publish bash-5.1.8-9.el9.x86_64.rpm with different bytes, and
whichever was fetched first was served for both, so dnf failed the
checksum or signature check.
Use the path under the upstream as the cache filename, as the APK and
Arch handlers do. Packages cached before this change are no longer
found and are fetched again once; retention still matches them by
package name.
2026-11-08 07:56:52 +01:00
..
static
Review fixes for the project inventory
2026-10-27 20:23:14 +01:00
templates
Keep the Projects link on an empty projects page
2026-11-04 16:16:35 +01:00
analytics.go
Separate artifact and metadata cache metrics on /metrics and the analytics page ( #463 )
2026-10-20 11:25:33 +01:00
analytics_coverage_test.go
Follow npm and Packagist change feeds to revalidate changed metadata
2026-10-27 16:31:47 +01:00
analytics_donut.go
Add the /ui/analytics page
2026-10-01 16:15:03 +02:00
analytics_donut_test.go
Add the /ui/analytics page
2026-10-01 16:15:03 +02:00
analytics_failures_test.go
Update x/net and remove unused production helpers
2026-10-19 08:35:46 +01:00
analytics_runtime.go
Follow npm and Packagist change feeds to revalidate changed metadata
2026-10-27 16:31:47 +01:00
analytics_runtime_test.go
Follow npm and Packagist change feeds to revalidate changed metadata
2026-10-27 16:31:47 +01:00
analytics_test.go
Separate artifact and metadata cache metrics on /metrics and the analytics page ( #463 )
2026-10-20 11:25:33 +01:00
api.go
Test available_at through the API and drop FillVersionPublishedAt
2026-11-03 14:39:36 +01:00
api_cooldown_test.go
Test available_at through the API and drop FillVersionPublishedAt
2026-11-03 14:39:36 +01:00
api_test.go
Validate package paths before database lookups ( #109 )
2026-05-03 09:14:18 +01:00
apk_snapshots.go
Serve dated snapshots of Alpine APK indexes
2026-10-27 16:18:26 +01:00
apk_snapshots_test.go
Serve dated snapshots of Alpine APK indexes
2026-10-27 16:18:26 +01:00
breakers.go
Report upstream circuit breaker state in /health and /metrics ( #275 )
2026-09-02 12:52:32 +01:00
breakers_test.go
Share upstream rate-limit holds across instances
2026-10-25 17:34:08 +01:00
browse.go
Refuse framing of the web UI
2026-10-24 07:48:08 +02:00
browse_archive.go
Use shared archives browser for cached artifacts ( #512 )
2026-10-20 11:41:18 +01:00
browse_archive_test.go
Use shared archives browser for cached artifacts ( #512 )
2026-10-20 11:41:18 +01:00
browse_bench_test.go
Avoid repeated content type path lookup
2026-08-01 11:22:13 +01:00
browse_test.go
Refuse framing of the web UI
2026-10-24 07:48:08 +02:00
cache_api.go
Delete cached artifacts through the API and the UI ( #491 )
2026-10-20 11:35:08 +01:00
cache_api_test.go
Delete cached artifacts through the API and the UI ( #491 )
2026-10-20 11:35:08 +01:00
change_feeds.go
Read change feeds through git-pkgs/registries
2026-10-30 10:09:21 +01:00
change_feeds_test.go
Read change feeds through git-pkgs/registries
2026-10-30 10:09:21 +01:00
cooldown_patterns_test.go
Add cooldown package pattern overrides ( #407 )
2026-10-04 20:48:41 +01:00
cooldown_profiles.go
Add cooldown profiles selected by registry URL
2026-11-05 21:42:44 +00:00
cooldown_profiles_test.go
Add cooldown profiles selected by registry URL
2026-11-05 21:42:44 +00:00
cooldown_view.go
Show versions held back by cooldown on the package page and in the API
2026-10-30 13:54:24 +01:00
cooldown_view_test.go
Show versions held back by cooldown on the package page and in the API
2026-10-30 13:54:24 +01:00
dashboard.go
Cover Fedora updates and Conda defaults in setup docs
2026-11-07 09:46:54 +00:00
detached_fetch_test.go
Give the detached fetch test time on slow runners
2026-10-14 18:14:06 +02:00
dot_segments_test.go
Ignore path parameters when checking for dot segments
2026-10-23 09:47:07 +02:00
ecosystem_cache.go
Separate artifact and metadata cache metrics on /metrics and the analytics page ( #463 )
2026-10-20 11:25:33 +01:00
ecosystem_cache_test.go
Separate artifact and metadata cache metrics on /metrics and the analytics page ( #463 )
2026-10-20 11:25:33 +01:00
ecr_auth.go
Add ECR auto-refreshing upstream authentication ( #278 )
2026-09-02 12:43:43 +01:00
ecr_auth_test.go
Add ECR auto-refreshing upstream authentication ( #278 )
2026-09-02 12:43:43 +01:00
errors.go
Require a JSON content type to start mirror jobs
2026-10-24 07:48:08 +02:00
errors_test.go
Structured JSON error responses for API endpoints ( #110 )
2026-05-03 09:42:03 +01:00
eviction.go
Merge main. Main now records UpsertArtifact and its queue entry in one transaction itself, so that part of this branch is gone; ClearArtifactCache, eviction and the unrecorded refetch remain, and an unrecorded refetch counts as failed for instances waiting on its lease.
2026-10-26 08:57:26 +01:00
eviction_metadata_test.go
Count cached metadata against max_size and evict it LRU ( #507 )
2026-10-20 10:22:55 +01:00
eviction_test.go
Merge main. Main now records UpsertArtifact and its queue entry in one transaction itself, so that part of this branch is gone; ClearArtifactCache, eviction and the unrecorded refetch remain, and an unrecorded refetch counts as failed for instances waiting on its lease.
2026-10-26 08:57:26 +01:00
exclusive.go
Coordinate instances sharing a Postgres database
2026-10-23 16:15:24 +02:00
exclusive_test.go
Coordinate instances sharing a Postgres database
2026-10-23 16:15:24 +02:00
git_test.go
Mirror pkg:git commits into the git cache
2026-11-06 07:48:51 +01:00
go_sumdbs_test.go
Serve the Go checksum database from its own URL
2026-10-13 16:41:53 +02:00
go_vulndb_test.go
Serve the Go vulnerability database at /go/vulndb
2026-10-27 16:16:04 +01:00
gradle_cache_eviction.go
Merge pull request #572 from simonchrz/fix/flaky-tests
2026-10-24 11:33:34 +01:00
gradle_cache_eviction_test.go
add Gradle Build Cache support with handler and tests ( #87 )
2026-05-04 11:15:16 +01:00
gradle_read_only_test.go
Build with Go 1.27.3 everywhere
2026-10-23 09:57:37 +02:00
head_request_test.go
Answer HEAD on a cached artifact without opening it
2026-10-25 17:27:05 +01:00
health.go
Hold requests to an upstream that rate limits the proxy
2026-10-14 21:35:17 +01:00
health_test.go
Widen wall-clock bound in flaky probe timeout test
2026-09-22 08:46:40 +01:00
helm_test.go
fix(helm): support OCI references in HTTP repository indexes
2026-09-19 14:39:29 +05:30
hosted_api.go
Never let a cache fill replace a pushed artifact
2026-10-21 12:24:04 +02:00
hosted_api_test.go
Build with Go 1.27.3 everywhere
2026-10-23 09:57:37 +02:00
hosted_archives_test.go
Read the package manifest of pushed archives
2026-10-14 13:23:19 +02:00
hosted_auth.go
Add a hosted config block and a bearer token check for writes
2026-10-14 13:23:19 +02:00
hosted_auth_test.go
Fix leftover /api/packages references to the hosted endpoints
2026-10-14 13:23:19 +02:00
layout.go
Add a project inventory built from uploaded SBOMs
2026-10-27 19:30:34 +01:00
metadata_backfill.go
Count cached metadata against max_size and evict it LRU ( #507 )
2026-10-20 10:22:55 +01:00
middleware.go
Add cooldown profiles selected by registry URL
2026-11-05 21:42:44 +00:00
middleware_test.go
Proxy FreeBSD pkg repositories at /freebsd/{name}/
2026-10-22 12:36:27 +02:00
mirror_api.go
Require a JSON content type to start mirror jobs
2026-10-24 07:48:08 +02:00
mirror_api_test.go
Merge pull request #574 from simonchrz/fix/mirror-csrf-ui-framing
2026-10-24 11:35:18 +01:00
mirror_apk_test.go
Test that apk index errors leave out the URL
2026-11-05 12:34:32 +01:00
mirror_composer_test.go
Mirror Composer releases
2026-10-25 14:36:43 +01:00
mirror_conda_test.go
Mirror conda packages
2026-10-25 14:27:47 +01:00
mirror_cran_test.go
Fetch archived CRAN versions unchecked and drop the version dedup
2026-10-28 15:17:49 +00:00
mirror_fetch_test.go
Mirror Alpine packages
2026-11-04 15:44:01 +01:00
mirror_helm_test.go
Mirror Helm charts
2026-10-25 19:37:22 +01:00
mirror_julia_test.go
Mirror Julia packages
2026-10-25 19:37:46 +01:00
mirror_proxy_test.go
proxy mirror and the mirror API now pre-fetch container images from pkg:docker and pkg:oci PURLs: the mirror walks index, platform manifests (with their attestations) and blobs through the container handler, so a later pull is served from cache even when the upstream is down. A --platform filter (platforms in the API) limits multi-arch images, repository_url only resolves to configured registries, and names, tags and digests are validated before anything is fetched.
2026-10-12 00:20:10 +02:00
mirror_pypi_test.go
Check mirrored files against their own SHA-256
2026-10-25 14:25:35 +01:00
mirror_resolver.go
Mirror packages from the configured upstreams
2026-10-22 16:06:56 +02:00
mirror_schedule.go
Merge remote-tracking branch 'origin/main' into fix/mirror-upstream-versions
2026-10-24 19:18:21 +02:00
mirror_schedule_test.go
Re-mirror container images on a schedule ( #508 )
2026-10-18 18:33:13 +01:00
mirror_swift_test.go
Check cached Swift documents against their digest and resolve source PURLs
2026-10-26 16:43:42 +01:00
mirror_versions.go
Mirror pkg:git commits into the git cache
2026-11-06 07:48:51 +01:00
mirror_versions_test.go
Merge remote-tracking branch 'origin/main' into mirror-swift
2026-10-27 11:00:10 +01:00
oci_mirrors_test.go
Route containerd ns mirror requests to configured registries ( #405 )
2026-10-10 07:35:50 +01:00
package_routes_test.go
Add package routes for private Composer and npm registries ( #426 )
2026-10-11 18:06:18 +01:00
packages_list_page_test.go
Filter cached packages by ecosystem using pills ( #319 )
2026-10-05 08:20:36 +01:00
packages_list_test.go
Fix all golangci-lint issues across the codebase ( #32 )
2026-03-18 10:59:29 +00:00
projects_api.go
Start project pruning with the project API and move enrichment routes out of serve
2026-10-30 19:29:11 +01:00
projects_api_test.go
Review fixes for the project inventory
2026-10-27 20:23:14 +01:00
projects_prune.go
Add a project inventory built from uploaded SBOMs
2026-10-27 19:30:34 +01:00
projects_prune_test.go
Add a project inventory built from uploaded SBOMs
2026-10-27 19:30:34 +01:00
projects_ui.go
Keep the Projects link on an empty projects page
2026-11-04 16:16:35 +01:00
projects_ui_test.go
Keep the Projects link on an empty projects page
2026-11-04 16:16:35 +01:00
query_in_path_test.go
Ignore path parameters when checking for dot segments
2026-10-23 09:47:07 +02:00
reclaim.go
Fetch each cache miss once across instances
2026-10-23 16:54:54 +02:00
reclaim_test.go
Clear before deleting on eviction, and requeue failed reclaims
2026-09-29 10:24:22 -07:00
registry_policies_test.go
Share upstream rate-limit holds across instances
2026-10-25 17:34:08 +01:00
relay_test.go
fix: centralize pass-through response relaying
2026-09-26 15:44:28 +05:30
request_timeouts_test.go
Make response write and artifact download timeouts configurable ( #531 )
2026-10-19 08:54:21 +01:00
resolve.go
fix: decode PURL percent-encoding in versions and package paths ( #244 )
2026-08-14 10:38:08 +01:00
resolve_test.go
fix: decode PURL percent-encoding in versions and package paths ( #244 )
2026-08-14 10:38:08 +01:00
retention.go
Accept Swift source repository PURLs in the denylist and retention rules ( #641 )
2026-10-31 11:34:05 +00:00
retention_alpine_test.go
Enable storage retention for alpine
2026-10-12 10:23:27 +02:00
retention_cargo_test.go
Enable storage retention for cargo
2026-10-12 16:16:22 +01:00
retention_composer_test.go
Enable storage retention for composer
2026-10-12 16:23:36 +01:00
retention_conan_test.go
Enable storage retention for conan
2026-10-12 16:29:59 +01:00
retention_conda_test.go
Cache conda packages per subdir
2026-10-22 20:42:17 +02:00
retention_cran_test.go
Enable storage retention for cran
2026-10-12 10:23:27 +02:00
retention_deb_test.go
Enable storage retention for deb
2026-10-13 20:08:24 +02:00
retention_gem_test.go
Enable storage retention for gem
2026-10-12 15:24:20 +02:00
retention_generic_test.go
Add opt-in retention for generic artifacts ( #513 )
2026-10-19 08:43:57 +01:00
retention_golang_test.go
Preserve Swift and Go compatibility when upgrading PURL ( #642 )
2026-10-31 09:49:35 +00:00
retention_helm_test.go
Enable storage retention for helm
2026-10-12 15:24:20 +02:00
retention_hex_test.go
Enable storage retention for hex
2026-10-12 19:56:45 +02:00
retention_julia_test.go
Enable storage retention for julia
2026-10-12 15:24:20 +02:00
retention_maven_test.go
Enable storage retention for maven ( #444 )
2026-10-12 12:58:09 +01:00
retention_npm_test.go
Enable storage retention for npm ( #440 )
2026-10-12 13:21:38 +01:00
retention_nuget_test.go
Store mirrored NuGet ids lowercased
2026-10-12 19:56:38 +02:00
retention_oci_test.go
Enable storage retention for oci ( #443 )
2026-10-12 13:00:57 +01:00
retention_pub_test.go
Enable storage retention for pub
2026-10-12 15:24:21 +02:00
retention_pypi_test.go
Enable storage retention for pypi ( #441 )
2026-10-12 13:06:37 +01:00
retention_rpm_test.go
Cache RPM packages under their full path
2026-11-08 07:56:52 +01:00
retention_swift_test.go
Accept Swift source repository PURLs in the denylist and retention rules ( #641 )
2026-10-31 11:34:05 +00:00
retention_test.go
Add opt-in retention for generic artifacts ( #513 )
2026-10-19 08:43:57 +01:00
server.go
Merge pull request #667 from simonchrz/feat/mirror-git
2026-11-07 14:58:02 +00:00
server_test.go
Redact storage passwords in startup logs
2026-11-06 09:20:43 +00:00
sources.go
Proxy FreeBSD pkg repositories at /freebsd/{name}/
2026-10-22 12:36:27 +02:00
sources_test.go
Proxy FreeBSD pkg repositories at /freebsd/{name}/
2026-10-22 12:36:27 +02:00
static.go
Add Container, Debian, RPM handlers and enrichment API
2026-01-29 19:35:15 +00:00
stats_test.go
Remove connection details from stats response
2026-11-05 15:09:16 +00:00
swagger_gen.go
Add pre-cache artifact scanning hook (trivy/ClamAV/Wiz/custom) ( #298 )
2026-09-03 10:06:44 +01:00
swift_sources.go
Accept Swift source repository PURLs in the denylist and retention rules ( #641 )
2026-10-31 11:34:05 +00:00
swift_vulns_test.go
Preserve Swift and Go compatibility when upgrading PURL ( #642 )
2026-10-31 09:49:35 +00:00
templates.go
Filter cached packages by ecosystem using pills ( #319 )
2026-10-05 08:20:36 +01:00
templates_handlers_test.go
Stop interpolating archive paths into inline handlers
2026-10-14 08:37:40 +02:00
templates_test.go
Show versions held back by cooldown on the package page and in the API
2026-10-30 13:54:24 +01:00
transport_test.go
fix(server): tune the shared upstream transport defaults ( #351 )
2026-09-16 08:11:06 +01:00
untrusted_content_test.go
Sandbox upstream content on package routes
2026-10-14 17:53:48 +02:00
upstream_auth_redirect_test.go
Stop forwarding custom auth headers across redirects
2026-10-14 08:38:51 +02:00