Repository navigation
Releases: The127/dockyard
Release list
v0.0.15
Bug Fixes
- fix(oci): register manifest blobs in
repository_blobson push — Podman (via containerd) fetches sub-manifests referenced in an OCI Image Index viaGET /v2/{name}/blobs/{digest}. Manifest blobs were never inserted intorepository_blobs, causingBlobsDownloadto return 404 for them. This manifested as "could not fetch content descriptor ... not found" on pull.
What's Changed
Full Changelog: v0.0.14...v0.0.15
v0.0.14
Bug Fixes
- fix(oci): return 404 instead of 400 for MANIFEST_UNKNOWN — HEAD/GET on a non-existent tag or manifest digest was returning
400 Bad Requestinstead of the404 Not Foundrequired by the OCI Distribution Spec.
What's Changed
Full Changelog: v0.0.13...v0.0.14
v0.0.13
Bug Fixes
- fix(oci): support single-post blob upload — Docker 23+ BuildKit uses single-post upload for small blobs (image config). The registry was returning
400 UNSUPPORTED, causing containerd to silently skip the config blob upload, which resulted inunknown bloberrors on pull. The fix implements single-post upload inBlobsUploadStart, adds idempotentrepository_blobsinserts, and fixes missingreturnstatements inBlobsDownload.
What's Changed
Full Changelog: v0.0.12...v0.0.13
v0.0.12
fix(oci): check for existing manifest before insert to fix re-push FK violation
Pushing the same image twice panicked with a FK violation because the tag was created with a new UUID before the manifest upsert resolved to the existing row's id. Fix: query for the existing manifest first and reuse it, so the tag always references a valid manifest id.
What's Changed
Full Changelog: v0.0.11...v0.0.12
v0.0.11
fix(oci): upsert manifests and tags on push to handle re-pushes
Pushing the same image or tag twice caused a 500 panic due to unique constraint violations. Manifest insert now ignores conflicts (content-addressed, no update needed). Tag insert now updates the manifest reference on conflict so re-pushing a tag always resolves to the latest image.
What's Changed
Full Changelog: v0.0.10...v0.0.11
v0.0.10
fix(oci): store manifests with correct mediaType in blob storage
Fixes Docker pull error 'if present, mediaType in manifest should be...' caused by DownloadBlob overriding the Content-Type header with the hardcoded OCI manifest type. Manifests are now stored in blob storage with their actual mediaType.
What's Changed
Full Changelog: v0.0.9...v0.0.10
v0.0.9
v0.0.8
v0.0.7
What's Changed
- chore(deps): bump docker/build-push-action from 6 to 7 by @dependabot[bot] in #32
- Kkostial/smal refactorings by @The127 in #41
- Kkostial/smal refactorings by @The127 in #42
- Architecture tests and code quality fixes by @The127 in #43
- Architecture tests for package boundaries, backends, mutation tracking, and error handling by @The127 in #44
- chore(deps): bump softprops/action-gh-release from 2 to 3 by @dependabot[bot] in #46
- chore(deps): bump dependabot/fetch-metadata from 2 to 3 by @dependabot[bot] in #45
- chore(deps): bump github.com/coreos/go-oidc/v3 from 3.17.0 to 3.18.0 by @dependabot[bot] in #47
- chore(deps): bump github.com/huandu/go-sqlbuilder from 1.40.1 to 1.40.2 by @dependabot[bot] in #48
- fix(oci): set Content-Type and Docker-Content-Digest on manifest responses by @The127 in #49
Full Changelog: v0.0.4...v0.0.7