Skip to content

Conversation

@renovate
Copy link
Contributor

@renovate renovate bot commented Nov 4, 2025

This PR contains the following updates:

Package Update Change
spegel-org/spegel minor 0.4.0 -> 0.5.1

Warning

Some dependencies could not be looked up. Check the Dependency Dashboard for more information.


Release Notes

spegel-org/spegel (spegel-org/spegel)

v0.5.1

Compare Source

Refer to the Changelog for list of changes.

v0.5.0

Compare Source

Added
  • #​1056 Send delete events for content by keeping content index.
Changed
  • #​1013 Refactor image parsing to include options.
  • #​1015 Remove explicit GOMAXPROCS
  • #​1017 Use prefer same node traffic distribution.
  • #​1018 Add optional default values when parting image reference.
  • #​1022 Refactor and rename fingerprint media type.
  • #​1024 Refactor OCI store to use descriptor.
  • #​1025 Add unit tests for serving manifests through mirror.
  • #​1026 Switch to using a generic functional options package.
  • #​1031 Report errors on debug web view.
  • #​1034 Refactor to use shared reference in image and distribution path.
  • #​1037 Change to returning balancer from router lookups.
  • #​1039 Add caching for balancers to reduce duplicate queries.
  • #​1049 Refactor filters to support more than only regex.
  • #​1047 Refactor mirrored registries to be applied with registry filters.
  • #​1046 Add GrafanaDashboard option to Helm chart.
  • #​1051 Refactor readiness probe and bootstrap to be separate.
  • #​1052 Replace client getter in Containerd with a single client.
  • #​1055 Immediately get features when creating Containerd store.
  • #​1061 Change OCI events to use references instead of key string.
  • #​1063 Replace transport with option to set OCI client.
  • #​1065 Move web to pkg and remove metrics dependency.
  • #​1066 Wait for router to be ready before tracking state.
  • #​1067 Keep files in registry directory when prepending to file.
  • #​1054 Extended the debug UI to provide more information.
Deprecated
Removed
  • #​1036 Remove is latest check in favor of registry filter.
  • #​1044 Remove unused routing discovery.
Fixed
  • #​1019 Fix media type strings to use constants.
  • #​1027 Fix OCI client to take range requests for HEAD requests.
  • #​1029 Fix range request handling and add tests for range requests.
  • #​1030 Fix panic in debug web view when metrics are not set yet.
  • #​1033 Fix measuring pulls using digests in debug web view.
  • #​1032 Fix measuring pulls in debug web view with non default registry address configured.
  • #​1035 Implement single registry filter using reference.
  • #​1040 Fix distribution regex to support consecutive dashes and underscores.
  • #​1048 Implement filtering of content in state tracking.
  • #​1059 Fix missing error return on Verify() failure in registry path.
  • #​1073 Collect advertise errors instead of immediately returning.
Security

v0.4.0

Added
  • #​1003 Add support for filtering registries/tags
  • #​905 Change mirror type to url and add byte range parameter.
  • #​909 Add base http client and transport.
  • #​910 Add drain and close function.
  • #​933 Verify that OCI volumes works with Sepgel in e2e tests.
  • #​949 Set timeout for mirror requests and switch to using OCI client.
  • #​951 Add tests for channel merge.
  • #​953 Add OCI errors to registry 4xx responses.
  • #​954 Allow setting _default mirrored registry.
  • #​962 Add optional liveness probe.
Changed
  • #​906 Replace HTTP header strings with httpx constants.
  • #​916 Refactor OCI client options and add header configuration.
  • #​931 Cleanup e2e tests to use more standardized node labels.
  • #​932 Switch to using spegel-org images in e2e tests.
  • #​957 Refactor memory store to include descriptor.
  • #​970 Refactor bootstraper to use address info instead of string.
  • #​975 Update Go to 1.25.0.
  • #​995 Cleanup http logger to allow generic attribute.
  • #​1000 Update Go to 1.25.1.
  • #​1008 Add options to state tracker.
  • #​1010 Enable debug web by default and add last successful mirror.
Deprecated
  • #​1009 Deprecate resolve latest in favor of registry filters.
Fixed
  • #​911 Enforce use of request contexts and fix response closing.
  • #​914 Fix OCI client header parsing and improve tests.
  • #​935 Fix node selector in e2e pull test.
  • #​942 Skip writing headers and status code on mirror retries.
  • #​950 Fix lint errors and add forbidgo.
  • #​955 Cleanup and move set handler to handler functions.
  • #​956 Remove setting logger for klog.
  • #​984 Fix host matches to support dual stack deployments.
  • #​996 Return state context error and text shutdown exit code.

v0.3.0

Added
  • #​877 Add support for www authenticate header.
  • #​878 Add dial timeout configuration in Containerd mirror configuration.
  • #​889 Add support for content create events.
Changed
  • #​881 Add Variable for job name in Grafana Dashboard.
  • #​852 Remove use of Afero in Containerd config.
  • #​854 Implement unit tests for cleanup logic.
  • #​860 Update Go to 1.24.2.
  • #​864 Rename OCI client to store.
  • #​871 Implement OCI client and refactor debug web pulling.
  • #​873 Refactor web to use internal mux router.
  • #​875 Change debug unit formatting and add totals.
  • #​880 Refactor store advertisement to list content.
  • #​888 Refactor OCI events to support content events.
  • #​890 Refactor Containerd options to use config struct.
  • #​896 Rename package mux to httpx and refactor http helpers.
  • #​897 Add descriptor to header conversion.
Fixed
  • #​869 Fix request logging for redirects and not found pages.
  • #​872 Allow returning libp2p crypto priv key in linter.
  • #​894 Update Kind to v0.29.0 and Fix Containerd v2 support.
  • #​899 Handle situation where digest is missing in reigstry response header.
  • #​902 Disable data dir when running Spegel in Kubernetes.

v0.2.0

Added
  • #​832 Add delete hook to cleanup configuration from host when chart is uninstalled.
  • #​846 Build binaries as part of the release process.
  • #​848 Add support for a static bootstrapper.
  • #​850 Persist libp2p key to disk when data directory is set.
Changed
  • #​812 Upgrade to Go 1.24.1 and switch to use go tool for helm docs.
  • #​725 Remove use of httputil reverse proxy.
  • #​820 Switch to using new test context.
  • #​827 Add p2p options to router for optional configuration.
  • #​835 Refactor registry config to align with router config.
  • #​847 Set default values for address arguments.
Removed
  • #​831 Remove local address check when resolving peers.
Fixed
  • #​824 Fix improper image string formatting and expand tests.
  • #​825 Fix gopls modernize warnings.
  • #​826 Standardize router channel naming.
  • #​844 Fix p2p option naming to conform with the standard.
  • #​849 Fix libp2p options so field is exported in configuration.

v0.1.1

Fixed
  • #​807 Update golangci lint and fix new issues.
  • #​810 Increase timeout to avoid flakiness in conformance tests.
  • #​806 Fix verification of Containerd configuration with suffixes.

v0.1.0

Added
  • #​717 Extend tests for distribution.
  • #​753 Set GOMAXPROCS and GOMEMLIMIT when limits are set.
  • #​792 Add dev deploy recipe to simplify local development.
  • #​791 Add debug view to help validating Spegel.
Changed
  • #​747 Update Go to 1.23.6.
  • #​750 Rename append mirrors to prepend existing.
  • #​373 Apply mirror configuration on all registires by default.
  • #​762 Set appropriate buckets for response size
  • #​778 Replace interface{} with any alias.
  • #​784 Refactor distribution and move to OCI package.
  • #​787 Refactor OCI image to allow parsing without digest.
  • #​794 Set default memory request and limit in Helm chart.
Removed
  • #​796 Remove name from OCI image struct.
  • #​799 Remove Kubernetes bootstrapper.
Fixed
  • #​743 Remove metrics label from bootstrap service in Helm chart.
  • #​748 Fix topology annotation.
  • #​785 Fix verification of digests when parsing distribution path.
  • #​798 Restart Spegel if Containerd event subscription is disconnected.
  • #​800 Fix so that host is closed even when a bootstrap error occurs.
  • #​801 Fix helm values naming for additionalMirrorTargets and mirroredRegistries.

v0.0.30

Changed
  • #​694 Replace IP in multi address with manet.
  • #​693 Add commonLabels for pods.
  • #​699 Remove as mismatch error and replace with errors as.
  • #​701 Rewrite e2e tests in Go.
  • #​704 Update Containerd client to v2.
Fixed
  • #​689 Make cluster domain configurable.
  • #​696 Fix DNS bootstrap self check.
  • #​702 Refactor and add tests for p2p ready.
  • #​703 Fix p2p router close panic and add tests.

v0.0.29

Added
  • #​678 Add support for setting common labels in Helm chart.
  • #​681 Add import as linter.
Changed
  • #​683 Change bootstrapper to allow returning multiple peers.
  • #​684 Allow bootstrappers to return multiaddress only containing IP.
  • #​680 Switch to using headless service for bootstrapping.

v0.0.28

Added
  • #​576 Add support for range requests for blobs.
  • #​621 Added Mermaid diagrams documentation to help explain Spegel's inner workings.
  • #​629 Document how to use multiple Spegel deployments in the same cluster.
  • #​661 Add allocs to pprof endpoints.
Changed
  • #​608 Use custom proxy transport and increase idle connections per host.
Fixed
  • #​651 Fix Containerd CRI config verification.
  • #​660 Add accept ranges header to blob HEAD request.

v0.0.27

Fixed
  • #​603 Fix append to backup always happening.
  • #​604 Create empty backup directory when mirror directory is empty.

v0.0.26

Removed
  • #​596 Remove throttling from blobs.
Fixed
  • #​601 Fix Containerd host mirror ordering.

v0.0.25

Added
  • #​578 Add possibility to override environment variable NODE_IP.
Changed
Fixed
  • #​581 Skip status response verification for containerd v2

v0.0.24

Added
  • #​538 Replace mock OCI client with in memory client.
  • #​552 Add support for VerticalPodAutoscaler in the Helm chart.
  • #​556 Add configuration for revisionHistoryLimit in the Helm Chart.
  • #​573 Use buffer pool for proxy copying data.
Changed
  • #​518 Extend tests for image.
  • #​519 Extend tests for containerd.
  • #​520 Add tests for metrics.
  • #​536 Update Go version to 1.22.5.
  • #​547 Set blob content type to disable detection.
  • #​553 Re-use resources value for initContainer in the Helm Chart.
Deprecated
Removed
  • #​517 Remove deprecated CopyLayer function.
Fixed
  • #​535 Fix Docker build casing checks.
Security

v0.0.23

Added
  • #​388 Add support for deploying the Grafana dashboard with the Helm chart.
Changed
  • #​475 Move resolving ref to digest to manifest handler.
  • #​477 Refactor distribution ref to simplify registry routing.
  • #​479 Enable goimports linter and fix errors.
  • #​480 Enable ireturn linter and fix errors.
  • #​481 Enable perfsprint linter and fix errors.
  • #​482 Enable gocritic linter and fix errors.
  • #​483 Update errcheck linter configuration and fix errors.
  • #​487 Move mirror metrics code to mirror handler.
  • #​488 Update existing registry errors and add more detail.
  • #​495 Modify e2e tests to allow reusing the same kind cluster.
  • #​498 Update to Go 1.22.
  • #​499 Add paralleltest linter and set all unit tests to run in parallel.
  • #​501 Rename mock router to memory router and add tests.
  • #​507 Change default resolve timeout to 20ms.
Fixed
  • #​460 Fix environment variable for http-bootstrap-addr flag.
  • #​471 Fix handler key in request logging.
  • #​490 Close immediate channel after writing to it to close wait group in merge logic.
  • #​491 Fix so that resolve timeout does not cancel mirroring attempts.
  • #​496 Fix p2p bootstrap to run on failed readiness check.

v0.0.22

Added
  • #​435 Add pprof endpoints to enable profiling.
  • #​434 Add optional Containerd local content store to increase serve performance.
  • #​438 Set host path type for Containerd socket.
  • #​449 Replace zapr with slog and add log level configuration.
Changed
  • #​439 Update Go version and fix toolchain version.
Fixed
  • #​452 Fix Containerd Subscribe returning on any error.
Security
  • #​451 Bump golang.org/x/net from 0.21.0 to 0.23.0.

v0.0.21

Added
  • #​421 Add conformance tests to e2e test.
  • #​424 Add option to append mirror configuration instead of overwriting.
  • #​429 Add metrics to measure duration to resolve peers.
Changed
  • #​395 Replace Gin with standard lib HTTP handler.
  • #​430 Replace XenitAB Kubernetes pkg with internal package.
Fixed
  • #​431 Fix import error caused by invalid file name.

v0.0.20

Added
  • #​416 Add image and Helm chart signing with Cosign.
Changed
  • #​411 Replace XenitAB pkg with internal package.
Fixed
  • #​412 Fix http bootstrapper arg annotation.
Security

v0.0.19

[!IMPORTANT]
The Spegel repository has been moved from XenitAB to a new GitHub organization.
Make sure to update the organization in the image and chart references.

Added
  • #​335 Add k3s to compatibility guide.
  • #​359 Extend OCI client tests.
  • #​365 Add support for throttling blob write speed.
  • #​386 Add contributing guide.
  • #​391 Add documentation for EKS specific Containerd configuration.
  • #​393 Add environment variable configuration support.
  • #​394 Add cgr.dev to default registry mirrors in the Helm chart.
  • #​398 Document DigitalOcean incompatibility.
Changed
  • #​355 Rename OCI function names.
  • #​356 Refactor OCI client test to simplify testing multiple implementations.
  • #​357 Replace mock Containerd store with real upstream store.
  • #​367 Update Go image to 1.21.7.
  • #​376 Change go directive to 1.21.
  • #​383 Bump libp2p to v0.33.0, replace deprecated Pretty function
  • #​397 Replace CopyLayer with GetBlob.
  • #​400 Update org imports from xenitab to spegel-org.
  • #​402 Update tests to use spegel-org instead of xenitab.
Deprecated
Removed
  • #​371 Remove state track retry on error.
Fixed
  • #​396 Fix missing metrics when registering.
  • #​408 Fix int overflow for ARM builds.
Security

v0.0.18

Added
  • #​331 Document possible modifications required for k8s-digester.
  • #​337 Add HTTP bootstrapper.
  • #​340 Add Talos to compatibility.
  • #​343 Implement image event and add support for delete events.
  • #​344 Add support for multi arch images.
  • #​347 Add support for a custom http transport when proxying requests.
  • #​352 Add lip2p options to router.
Changed
  • #​319 Move metrics definitions to separate package.
  • #​322 Refactor type of router resolve.
  • #​325 Refactor bootstrap to exit on error.
  • #​326 Clean up routing interface.
  • #​328 Move remaining packages to pkg.
  • #​342 Defer Containerd client creation until first accessed.
  • #​348 Change registry configuration to options.
  • #​349 Adjust router peer channel buffer size.
Removed
  • #​327 Remove ConfigMap from RBAC.

v0.0.17

Added
  • #​299 Add update strategy configuration to Helm chart.
Changed
  • #​291 Move OCI package to pkg.
  • #​306 Realign the structs in attempt to minimise memory usage.
Fixed
  • #​309 Fix label selectors on service monitors and metrics service.
  • #​279 Fix broken default value for additional mirror registries.
  • #​284 Fix Spegel support for ipv6.

v0.0.16

Fixed
  • #​276 Fix Golang image digest to use manifest list instead of AMD64.

v0.0.15

Added
  • #​270 Add tests for local and external service port.
  • #​262 Enable misspell linter and fix spelling mistakes.
  • #​263 Enable testifylint linter and fix errors.
  • #​269 Set Go image version with digest in Dockerfile.
Changed
  • #​253 Set klog logger to standardize output format.
Fixed
  • #​271 Fix Spegel running on IPVS cluster.

v0.0.14

Added
  • #​237 Verify discard unpacked layers setting.
Fixed
  • #​241 Fix missing return on resolve error.
  • #​223 Propagate closing channel before resolve timeout.
Security
  • #​249 Bump google.golang.org/grpc from 1.55.0 to 1.56.3

v0.0.13

Added
  • #​195 Fix daemonset argument namespace to use helper-defined namespace value.
Changed
  • #​164 Update Go to 1.21.
  • #​211 Replace factory with adress filter to remove loopback addresses.
  • #​219 Use release name instead of namespace for name of leader election configmap.
  • #​215 Support for servicemonitor labels, interval and timeout in helm chart.
Fixed
  • #​233 Fix address filtering to remove localhost from host.
Security
  • #​235 Bump golang.org/x/net from 0.14.0 to 0.17.0.

v0.0.12

Added
  • #​182 Add lscr.io as default registry.
Fixed
  • #​181 Fix mirroring images using index files without a media type.
  • #​191 Fix Containerd config path verification.
Security
  • #​184 Bump github.com/libp2p/go-libp2p from 0.27.7 to 0.30.0.

v0.0.11

Added
  • #​170 Backup existing Containerd mirror configuration.
  • #​171 Add option to disable resolve.
Changed
  • #​174 Modify error handling in state tracking to avoid exiting.

v0.0.10

Added
  • #​145 Add new field to override Helm chart namespace.
  • #​153 Add option to disable resolving latest tags.
  • #​156 Add validation of mirror configuration on start.
Changed
  • #​151 Refactor containerd mirror tests and remove utils package.
Removed
  • #​160 Remove X-Spegel-Registry header.
  • #​161 Remove X-Spegel-Mirror header.
  • #​162 Remove X-Spegel-External header.
Fixed
  • #​152 Fix image parsing to allow only passing digest through image reference.
  • #​158 Fix Containerd verify with check for empty configuration path.
  • #​163 Remove unneeded namespace in role binding.

v0.0.9

Changed
  • #​138 Set image digest in Helm chart.
Fixed
  • #​141 Fix platform matching and add tests for getting image digests.

v0.0.8

Added
  • #​125 Add retry mirroring to new peer if current peer fails.
  • #​127 Add configuration for resolve retry and timeout.
Changed
  • #​107 Refactor image references with generic implementation.
  • #​114 Move mirror configuration to specific OCI implementation.
  • #​117 Update Containerd client to 1.7.
  • #​126 Refactor registry implementation to not require separate handler.
  • #​132 Extend tests to validate single node and mirror fallback.
  • #​133 Use routing table size for readiness check.
Removed
  • #​113 Remove image filter configuration.

v0.0.7

Changed
  • #​82 Filter out localhost from advertised IPs.
  • #​89 Remove p2p route table check on startup.
  • #​91 Adjust tolerations and node selector.

v0.0.6

Changed
  • #​42 Only use bootstrap function for initial peer discovery.
  • #​66 Move mirror configuration logic to run as an init container.
Fixed
  • #​71 Fix priority class name.

v0.0.5

Added
  • #​29 Make priority class name configurable and set a default value.
  • #​49 Add registry.k8s.io to registry mirror list.
  • #​56 Add gcr.io and k8s.gcr.io registries to default list.
Changed
  • #​32 Update Go to 1.20.
  • #​33 Remove containerd info call when handling manifest request.
  • #​48 Replace multierr with stdlib errors join.
  • #​54 Refactor metrics and add documentation.
Fixed
  • #​51 Filter tracked images to only included mirrored registries.
  • #​52 Return error when image reference is not valid.
  • #​55 Fix filters by merging them into a single statement.
  • #​53 Include error from defer in returned error.

v0.0.4

Fixed
  • #​26 Replace topology keys with optional topology aware hints.

v0.0.3

Added
  • #​18 Add support to use Spegel instance on another node.
Changed
  • #​21 Allow external mirror request to resolve to mirror instance.

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot force-pushed the renovate/spegel-org-spegel-0.x branch from eab1d9d to 6a862ab Compare November 5, 2025 19:25
@renovate renovate bot changed the title chore(deps): update dependency spegel-org/spegel to v0.5.0 chore(deps): update dependency spegel-org/spegel to v0.5.1 Nov 5, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant