Releases: google/go-containerregistry
v0.15.2
What's Changed
- Make 403 non-fatal for manifest existence checks by @jonjohnsonjr in #1691
- Do not reuse pushers for pullers by @jonjohnsonjr in #1701
Full Changelog: v0.15.1...v0.15.2
v0.15.1
Changelog
- e2620e5 Actually retry retryable status codes (#1618)
- afd15f1 Add --all-tags flag to crane cp (#1682)
- 69d1a19 Add
mutate
--ports
option to set the exposed ports (#1677) - 65e78dc Add partial.Manifests for lazy index access (#1631)
- 3228a60 Add ppc64le to .goreleaser.yml (#1680)
- 0b12f56 Add ppc64le to all binaries (#1688)
- d958444 Add remote.Descriptor.Schema1() (#1626)
- 07c767c Add remote.Puller (#1644)
- 005bb71 Add remote.Reuse for Pusher/Puller (#1672)
- 21ac1b2 Adding
mutate
--workdir
option to set the working directory (#1615) - 0962e29 Allow remote config layers to be lazy fetched (#1634)
- 53189d3 Bump actions/setup-go from 3 to 4 (#1602)
- 54e3f49 Bump actions/stale from 7 to 8 (#1616)
- 07eb440 Bump codecov/codecov-action from 3.1.1 to 3.1.2 (#1650)
- 58bd35b Bump codecov/codecov-action from 3.1.2 to 3.1.3 (#1668)
- e055961 Bump peter-evans/create-pull-request from 4 to 5 (#1642)
- b8d1c0a Bump slsa-framework/slsa-verifier from 2.0.1 to 2.1.0 (#1621)
- 375fb61 Bump slsa-framework/slsa-verifier from 2.1.0 to 2.2.0 (#1649)
- 9aa45a1 Change return type of remote.Referrers (#1652)
- 2ccd41c Cleanup: Switch the debug image to
cgr.dev/chainguard/busybox
(#1638) - 93be9c4 Don't export whiteouts for single layers (#1629)
- b7c6e9d Fall back to puller if reusing pusher fails (#1676)
- 370e8a5 Fix a few lint issues (#1684)
- bc990d6 Fix fetching referrers error handling (#1648)
- aee00b1 Fix race in mutate (#1627)
- 4a79e94 Fix race in stream (#1632)
- 6743ec9 Implement remote.Pusher (#1633)
- 3120ba5 Keep order of env in crane mutate (#1683)
- 6ac92e8 Refactor fetcher, writer, and progress (#1625)
- 249d7e1 Refresh authn.DefaultKeychain creds every 5 min (#1624)
- ad695c0 Replace deprecated command with environment file (#1667)
- ed5c185 Retry net.ErrClosed (#1637)
- 43710a9 Retry without mount if auth fails (#1681)
- 2435320 Revert "Cleanup: Switch the debug image to
cgr.dev/chainguard/busybox
(#1638)" (#1641) - 27a6ad6 Revert "authn: Add NewConfigKeychain to load a config from explicit path (#1603)" (#1664)
- a34235c Support
Warning
header aggregation and reporting incrane
(#1604) - 01bbd53 Update release.yml (#1601)
- df518f9 add crane auth logout (#1589)
- 5438948 add registry.Repo("foo") (#1671)
- 3706061 allow pkg/v1/random to accept a RNG source (#1675)
- 1cb7e13 authn: Add NewConfigKeychain to load a config from explicit path (#1603)
- 348cd86 bump deps using ./hack/bump-deps.sh (#1659)
- 691004b bump deps using ./hack/bump-deps.sh (#1685)
- df72a9a crane push: print pushed ref@digest to stdout (#1663)
- 0577676 crane: ignore buildx attestations in flatten (#1630)
- 217318c deprecate estargz (#1660)
- 9f68710 feat(daemon): generate config file from Docker Engine API (#1130)
- 52d59d1 feat(remote): make retryStatusCodes configurable (#1635)
- 6f96bba gcrane: Use page size of 10,000 for googley things (#1645)
- 0f2db49 release: use ko 0.13.0 to build images (#1607)
- d64f9e0 remove time from random.Image history (#1678)
- 46488f7 retry HTTP 499 errors by default (#1612)
- ace7be7 update GCR quotas (#1619)
- d1c4e9f verify provenance (#1611)
Container Images
https://gcr.io/go-containerregistry/crane:v0.15.1
https://gcr.io/go-containerregistry/gcrane:v0.15.1
For example:
docker pull gcr.io/go-containerregistry/crane:v0.15.1
docker pull gcr.io/go-containerregistry/gcrane:v0.15.1
v0.15.0
Add `mutate` `--ports` option to set the exposed ports (#1677)
v0.14.0
Changelog
- 9306eba Allow crane edit to generate non-image artifacts (#1545)
- de35f0f Allow setting Content-Type in crane edit manifest (#1551)
- 4b081f8 Avoid v1.Manifest in crane edit config (#1583)
- 1cfe1fc Bump aws-actions/configure-aws-credentials from 1.7.0 to 2.0.0 (#1593)
- da1008f Bump golangci/golangci-lint-action from 3.3.1 to 3.4.0 (#1548)
- 86be45f Bump goreleaser/goreleaser-action from 4.1.0 to 4.1.1 (#1547)
- 62f183e Bump goreleaser/goreleaser-action from 4.1.1 to 4.2.0 (#1556)
- 1b8dc2b Bump slsa-framework/slsa-github-generator from 1.2.2 to 1.5.0 (#1580)
- 11843ba Enforce proper sha256 usage (#1544)
- 2ceebaa Implement crane index subcommand (#1561)
- 9f42e02 Set mediaType for empty.ImageIndex in RawManifest (#1562)
- 759b19f Support artifactType, for images whose config.mediaType is not a config (#1541)
- b3c23b4 Support for OCI 1.1+ referrers via API (#1546)
- 061ee6b Support for OCI 1.1+ referrers via fallback tag (#1543)
- 6770304 Update descriptor "data" field (when valid) during "crane edit config" (#1584)
- 76bac93 Update release.yml (#1540)
- eb7d746 authn: also read mount secrets (#1560)
- e94d408 bump deps using ./hack/bump-deps.sh (#1592)
- 4e95ae2 crane: add --flatten for index append (#1566)
- ff810c1 crane: add serve subcommand (#1586)
- 8ea5e0e crane: support --omit-digest-tags in crane ls (#1528)
- 824efc7 fix(mutate): also set timestamps only present in some formats (#1550)
- e04520b fix: Fix the crane release url and add more steps (#1532)
- d872232 hash: use generic instantiation (#1538)
- 57f010d replace manual slsa-verifier installation with action (#1585)
- 9cd098e skip tls verification if default transport is used with insecure option (#1559)
- 3624968 tarball: pass imageToTags (#1563)
Container Images
https://gcr.io/go-containerregistry/crane:v0.14.0
https://gcr.io/go-containerregistry/gcrane:v0.14.0
For example:
docker pull gcr.io/go-containerregistry/crane:v0.14.0
docker pull gcr.io/go-containerregistry/gcrane:v0.14.0
v0.13.0
What's Changed
- Bump slsa-framework/slsa-github-generator to 1.2.2 by @jonjohnsonjr in #1489
- Features: Allow eliding
serviceaccount
lookups. by @mattmoor in #1490 - Bump golangci/golangci-lint-action from 3.3.0 to 3.3.1 by @dependabot in #1491
- add source archive checksum into the checksums.txt by @developer-guy in #1492
- Fix calculating tarball size when duplicated layers exist by @tydra-wang in #1495
- Add support for zstd compression by @LFrobeen in #1487
- docs: pull latest instead of debug by @AndrewCharlesHay in #1497
- Make credential warning slightly more accurate by @jonjohnsonjr in #1499
- Make unit tests substantially faster by @jonjohnsonjr in #1498
- Use the default retry predicate in transport by @jonjohnsonjr in #1502
- Revert "docs: pull latest instead of debug (#1497)" by @jonjohnsonjr in #1504
- Update Arch Linux install instructions by @kpcyrd in #1508
- Fix various lints by @jonjohnsonjr in #1507
- Fix missing doc comment by @jonjohnsonjr in #1509
- Treat empty registry config as anonymous by @lcarva in #1512
- Bump goreleaser/goreleaser-action from 3.2.0 to 4.1.0 by @dependabot in #1511
- Bump actions/stale from 6 to 7 by @dependabot in #1519
- Race http fallback ping by @jonjohnsonjr in #1521
- FIX mutate.Time not respecting history by @miguelvalerio in #1520
- test: use
T.TempDir
to create temporary test directory by @Juneezee in #1522 - crane: add digest --full by @imjasonh in #1524
- Hack around DockerHub plugin scope handling by @jonjohnsonjr in #1527
- crane: support --full-ref for crane ls by @imjasonh in #1525
- Revert plugin scope hack by @jonjohnsonjr in #1531
- clarify crane download readme by @dtanner in #1533
New Contributors
- @LFrobeen made their first contribution in #1487
- @AndrewCharlesHay made their first contribution in #1497
- @kpcyrd made their first contribution in #1508
- @miguelvalerio made their first contribution in #1520
- @Juneezee made their first contribution in #1522
- @dtanner made their first contribution in #1533
Full Changelog: v0.12.1...v0.13.0
v0.12.1
Changelog
- 426de7d Bump golangci/golangci-lint-action from 3.2.0 to 3.3.0 (#1475)
- 6442b02 Bump goreleaser/goreleaser-action from 3.1.0 to 3.2.0 (#1476)
- 76ae819 Fix context.DeadlineExceeded comparison (#1488)
- 1711cef Fix missing body.Close() in bearer auth (#1482)
- 02f47e1 bump version of slsa generator (#1468)
- 353a117 crane: add catalog argument use annotation (#1473)
- a0cca8a k8schain: Log and proceed if secret or SA are not found (#1472)
Container Images
https://gcr.io/go-containerregistry/crane:v0.12.1
https://gcr.io/go-containerregistry/gcrane:v0.12.1
For example:
docker pull gcr.io/go-containerregistry/crane:v0.12.1
docker pull gcr.io/go-containerregistry/gcrane:v0.12.1
v0.12.0
Changelog
- 9b4fdd5 Bump actions/setup-go from 2 to 3 (#1463)
- 7268da0 Bump actions/stale from 5 to 6 (#1452)
- 7196cf3 Bump aws-actions/configure-aws-credentials from 1.6.1 to 1.7.0 (#1424)
- 8eae069 Bump codecov/codecov-action from 3.1.0 to 3.1.1 (#1453)
- 969699e Bump deps using ./hack/bump-deps.sh (#1467)
- c1f9836 Bump opencontainers/image-spec (#1423)
- 49cdb8b Correct usage of authn.NewKeychainFromHelper in docs (#1419)
- 3ba4c51 Fix tar PAX format handling (#1414)
- 24a1c33 Ignore docker config if it's a directory (#1420)
- a0f6687 Make ErrBadName checkable via errors.Is() (#1462)
- 19e3eff Retry ECONNRESET errors (#1415)
- 5749ee6 Support the platform specific authentication of krane in "auth get" command (#1413)
- e3b94c7 allow remote.DefaultTransport to be overridden by an http.RoundTripper (#1449)
- f981b4c deps: update goreleaser-action for bug (#1444)
- 771a9b4 e2e: pull and export stdin and stdout (#1436)
- 87b3a79 feat: Add krane to release archive (#1443)
- 2859a0d feat: generate slsa provenance on github release artifacts (#1438)
- 9a5c14a fix crane's root.go after DefaultTransport change (#1450)
- 2b54510 fix: consider base image media type when appending layers (#1437)
- d3ed408 registry: implement blob deletion (#1432)
- 3413eb6 registry: implement pagination (#1430)
- e2d575c update crane installation instructions and release verification (#1440)
Container Images
https://gcr.io/go-containerregistry/crane:v0.12.0
https://gcr.io/go-containerregistry/gcrane:v0.12.0
For example:
docker pull gcr.io/go-containerregistry/crane:v0.12.0
docker pull gcr.io/go-containerregistry/gcrane:v0.12.0
v0.11.0
Changelog
- b7b4ead Add unit test covering .dockerconfigjson secrets (#1335)
- 31786c6 Bump deps using ./hack/bump-deps.sh (#1410)
- f79ec21 Deprecate transport.New (#1337)
- 2b1087a Do not check /v2 endpoint on registry when RoundTripper is provided (#1396)
- 59b5c06 Don't annotate refs by default, switch to OCI key (#1401)
- ddd39fb Fall back to no mount if registry misbehaves (#1406)
- d187a71 Implement crane edit (#1403)
- 4d7b65b Include builds for Go 1.18 in CI matrixes (#1319)
- 03194c5 Preserve descriptors when writing to layout (#1400)
- 53e6bea Redact sensitive information in redirected URLs (#1408)
- ae256b5 Use go-digest to validate digests (#1395)
- 86f0c4a Wrap progress updates in a mutex (#1402)
- e7a9f2b bump deps using ./hack/bump-deps.sh (#1389)
Container Images
https://gcr.io/go-containerregistry/crane:v0.11.0
https://gcr.io/go-containerregistry/gcrane:v0.11.0
For example:
docker pull gcr.io/go-containerregistry/crane:v0.11.0
docker pull gcr.io/go-containerregistry/gcrane:v0.11.0
v0.10.0
Changelog
- 9006ebf Add debug logs to google.Keychain (#1390)
- 03a77f4 Allow config files to be mounted (#1387)
- b17c48b Bump goreleaser/goreleaser-action from 2 to 3 (#1370)
- 623023e Implement cross-registry blob mounting experiment (#1388)
- 2a21d4f Set GetBody on blob uploads (#1391)
- f74686f bump deps using ./hack/bump-deps.sh (#1371)
- 7fc806e feat(cache): cacheable v1.ImageIndex (#1380)
- 0c40ec8 feat(crane): add option to allow pushing non-distributable layers (#1348)
- 12aeccc fix(crane): just need cobra.MinimumNArgs(1) instead of cobra.MaximumNArgs(1). (#1384)
- 84eb526 k8schain: prioritize imagePullSecrets over implicit auth (#1368)
Container Images
https://gcr.io/go-containerregistry/crane:v0.10.0
https://gcr.io/go-containerregistry/gcrane:v0.10.0
For example:
docker pull gcr.io/go-containerregistry/crane:v0.10.0
docker pull gcr.io/go-containerregistry/gcrane:v0.10.0
v0.9.0
What's Changed
- pkg/v1/mutate: fill in mediaType for OCI by @maisem in #1236
- Start testing ECR authentication. by @mattmoor in #1237
- Pin the version of AWS actions we use by @mattmoor in #1238
- Add pkg/authn/kubernetes by @imjasonh in #1234
- Use Temp File For
layout.{Write,Append,Replace}
Image/Index Methods by @ben-krieger in #1226 - Update README.md by @bobychaudhary in #1239
- fix k8schain go.mod by @dprotaso in #1242
- fix cmd/krane/go.mod and include it in hack/presubmit.sh by @imjasonh in #1240
- return transport errors that support errors.Is by @dprotaso in #1244
- Bump ecr-login to v0.6.0 by @imjasonh in #1243
- pkg/authn: return Anonymous on podman auth.json errors by @vdemeester in #1248
- Bump acr cred helper dep by @imjasonh in #1247
- krane: drop k8schain, use cred helper directly w/o k8s by @imjasonh in #1250
- Ensure that layer is closed before renaming file in layout by @ben-krieger in #1254
- Bump aws-actions/configure-aws-credentials from 1.6.0 to 1.6.1 by @dependabot in #1259
- Fix krane:debug image to include shell by @imjasonh in #1264
- Fix NewKeychainFromHelper by @imjasonh in #1265
- Fix issue templates by @imjasonh in #1266
- Update k8schain README -- don't recommend modifting authn.DefaultKeyc… by @imjasonh in #1267
- Add EOF to remote default retry predicate by @jonjohnsonjr in #1268
- Bump containerd by @imjasonh in #1271
- Implement Platform.String and v1.ParsePlatform by @imjasonh in #1270
- Eagerly fetch image ID in daemon.Image by @jonjohnsonjr in #1272
- Add pkg/authn/github.Keychain to authenticate with ghcr.io by @imjasonh in #1252
- Fallback to anonymous if env or gcloud are not configured by @imjasonh in #1279
- Add one-time workflow to push an image to ghcr.io by @imjasonh in #1281
- remove push-image workflow by @imjasonh in #1282
- Pass gcloud stderr to logs.Warn by @imjasonh in #1284
- Add tarball.WithMediaType to specify layer media type by @imjasonh in #1286
- LayerFromReader: buffer contents to a temp file instead of in memory by @imjasonh in #1285
- Check docker config auths for repo and registry by @imjasonh in #1280
- Bump deps, add script to make it easier by @imjasonh in #1260
- Fix Windows e2e test by @imjasonh in #1292
- Update ecr-login dep to fix logspam issue by @imjasonh in #1294
- authn/kubernetes - fix auth config lookup by @dprotaso in #1299
- authn/kubernetes - fix index.docker.io case by @dprotaso in #1300
- Take advantage of Chainguard maintained versions of various actions. by @mattmoor in #1301
- Cover a couple special paths in keychain unit tests. by @mattmoor in #1302
- Add output option to mutate to save to a tar file and not push to a registry (same as append) by @ehmm in #1257
- Add GitHub Action to automatically bump deps by @imjasonh in #1291
- Include blob existence checks in retries by @jonjohnsonjr in #1307
- Bump golangci/golangci-lint-action from 2 to 3.1.0 by @dependabot in #1308
- Add rebase_test.sh to hack/presubmit.sh by @imjasonh in #1304
- crane export: Support reading tarball from a stream by @abitrolly in #1274
- Don't parse challenge's scopes, put them first by @jonjohnsonjr in #1312
- Bump actions/checkout from 2 to 3 by @dependabot in #1315
- Fix isolation of presubmit tools by @abitrolly in #1306
- Bump deps, fix ecr-login API change by @imjasonh in #1310
- Add --user flag to crane mutate by @matthewrobertson in #1316
- Bump peter-evans/create-pull-request from 3 to 4 by @dependabot in #1327
- Bump actions/setup-go from 2 to 3 by @dependabot in #1340
- Bump actions/stale from 4 to 5 by @dependabot in #1342
- Bump codecov/codecov-action from 2.1.0 to 3.0.0 by @dependabot in #1341
- use k8s keychain first by @dprotaso in #1346
- fix(v1/random): set MediaType in
randomIndex.manifest
by @estroz in #1343 - fix(v1/remote): return an error if both auth and keychain are set by @estroz in #1334
- AuthConfig now supports json (un)marshalling by @dprotaso in #1350
- authn.kubernetes.Resolve now behaves exactly like Kubernetes by @dprotaso in #1349
- bump require blocks to point to latest main (892d7a8) by @dprotaso in #1351
- update go action to always get the latest available and other updates by @cpanato in #1352
- Bump codecov/codecov-action from 3.0.0 to 3.1.0 by @dependabot in #1353
- Bump github/codeql-action from 1 to 2 by @dependabot in #1357
- transport: Don't pass default service if unset by @imjasonh in #1360
- fix(ConfigFile): Add Variant by @lippertmarkus in #1362
- Bump deps, fix issues by @imjasonh in #1317
- feat(crane): allow setting the repository to push by digest by @lippertmarkus in #1323
- Bump golangci/golangci-lint-action from 3.1.0 to 3.2.0 by @dependabot in #1365
- Bump deps using ./hack/bump-deps.sh by @imjasonh in #1366
New Contributors
- @ben-krieger made their first contribution in #1226
- @bobychaudhary made their first contribution in #1239
- @abitrolly made their first contribution in #1274
- @matthewrobertson made their first contribution in #1316
- @estroz made their first contribution in #1343
- @lippertmarkus made their first contribution in #1362
Full Changelog: v0.8.0...v0.9.0