kkRepo v0.2.0 is the first feature release after v0.1.0. It promotes Docker/OCI and Cargo/Rust to implemented repository formats, expands Nexus migration across source generations, adds real client E2E compatibility coverage, and updates quickstart to the new public image.
Compare: v0.1.0...v0.2.0
Quick Start
curl -fsSL https://raw.githubusercontent.com/klboke/kkrepo/main/scripts/quickstart.sh | bashThe quickstart now defaults to ghcr.io/klboke/kkrepo:0.2.0.
Download
kkrepo-0.2.0.zip: archive installer for Linux/macOS style deployments.kkrepo-0.2.0.tar.gz: tarball installer with the same runtime layout.kkrepo-0.2.0.sha256.txt: SHA-256 checksums for the release archives.
Container Image
docker pull ghcr.io/klboke/kkrepo:0.2.0
docker pull ghcr.io/klboke/kkrepo:latestImage digest:
ghcr.io/klboke/kkrepo:0.2.0@sha256:c4d665783842be60c30dcb9cbede25687e1f5338eeec31aad0b73f705da55c04
The image is published for linux/amd64 and linux/arm64.
Added
- Docker / OCI hosted, proxy, and group repositories, including Registry HTTP API V2 login, push/pull, manifest/tag/blob handling, blob upload sessions, cross-repository blob mounts, proxy cache, group resolution, connector-port access, OCI referrers, cleanup workers, browse metadata, metrics, and OCI conformance workflow coverage. (#39)
- Cargo / Rust hosted, proxy, and group repositories using sparse registries, including
cargo publish, fetch/download, yank/unyank, Cargo search,CargoTokenauthentication, UI/API.crateupload, metrics, and Nexus 3.77.x+ compatibility coverage. (#49, #52) - Cargo repository migration for datastore-era Nexus Repository sources, including generated
config.jsonvisibility in browse and repository responses. (#62) - Multi-version Nexus migration with source profiles, adapter-specific migration planning, source/plan hashes, and an E2E matrix for Nexus 3.29.2, Nexus 3.77.2 H2 datastore, and Nexus 3.77.2 PostgreSQL datastore. (#51, #62)
- Real client E2E compatibility suite covering Maven, npm, PyPI, Go, Helm, Cargo/Rust, NuGet, RubyGems, Yum, and Docker/OCI clients. (#57)
- Exposed
RubyGemsApiKeyandGenericTokentoken types in user and admin token dropdowns, including documented GenericToken header/bearer usage. (#60) - MySQL-backed UI language settings for browser-following, English, and Chinese display across replicas. (#43)
Improved
- Quickstart, Docker Compose quick trial, Dockerfile defaults, and deployment docs now use the 0.2.0 release version.
- Admin sidebar groups are collapsible, persisted per browser, and easier to use on dense admin pages. (#53)
- Admin forms now show required markers and perform submit-time validation more consistently, including OIDC and migration settings. (#42, #44)
- Anonymous access and realm settings now keep the
Localrealm/source fixed across UI and backend API paths. (#45) - Packaged async request timeout is now 10 minutes in runtime and archive distribution defaults. (#37)
- Aliyun OSS client pooling now honors configured max connections and connection acquisition timeout. (#32)
- README, compatibility matrix, client recipes, monitoring, troubleshooting, migration, security, Cargo, Docker/OCI, Maven, and PyPI docs were expanded in English and Chinese. (#46, #52, #57, #60, #62)
Fixed
- Fixed CodeQL-reported security issues around component-search tokenization, proxy remote URL construction, browse-listing HTML escaping, and OIDC endpoint validation. (#41)
- Fixed Docker/OCI edge cases around referrer metadata, OCI conformance setup, group cache invalidation, remote client behavior, and migration paths. (#39)
- Fixed Cargo index alignment, clean missing-index 404 behavior, upload/auth review issues, and Cargo/RubyGems rebuild handling. (#49, #57)
- Fixed NuGet and RubyGems real-client E2E issues around endpoint variants, API keys, source ordering, install metadata, and isolated installs. (#57)
- Fixed Helm, npm, Cargo, and Docker/OCI client E2E setup issues, including Helm output directories, npm publish directories, Cargo credentials, and relative ORAS artifact paths. (#57)
- Fixed migration E2E blob-storage race conditions discovered while expanding the Nexus version matrix. (#62)
Upgrade Notes
- Existing v0.1.0 deployments can upgrade in place. Back up MySQL before production upgrades.
- This release adds Flyway migrations for Docker registry metadata, Docker connector-port uniqueness, and shared UI settings.
- Docker/OCI and Cargo/Rust are new public capabilities; validate repository configuration, anonymous access, token types, connector ports, and proxy/group behavior in staging before opening them to production clients.
SHA-256
7a3b8ca66ad2bfc38abcad66312c5e28fe8d9265e71ca11c3c5a95031d91587f kkrepo-0.2.0.tar.gz
38dd17964b28f6b8768121d5bee5dac4886bb743899bfeb784460ddace3703e2 kkrepo-0.2.0.zip