Releases: oras-project/oras-dotnet
Releases Β· oras-project/oras-dotnet
v0.4.0
The NuGet package is available at nuget.org.
Breaking Changes
DescriptorExtensionis no longer publicly accessible- Move
OrasProject.Oras.Registry.Remote.ResponseException.ErrortoOrasProject.Oras.Registry.Remote.Error - Move exception types into dedicated namespaces (see #247 for details)
- Rename extension classes for API consistency (see #246 for details)
New Features
- Add
IMemoryCacheinjection support toAuthClientfor configurable caching - Improve
ResponseExceptionmessage formatting for clearer diagnostics
Bug Fixes
- No longer throw an exception when
serviceis missing in theWww-Authenticateheader
Other Changes
- Add example usages to documentation
- Update dependencies
Detailed Commits
- build(deps): Bump Microsoft.NET.Test.Sdk and xunit.runner.visualstudio by @dependabot[bot] in #223
- Bump System.Text.Json from 9.0.5 to 9.0.6 by @dependabot[bot] in #224
- Bump System.Text.Json from 9.0.6 to 9.0.7 by @dependabot[bot] in #229
- docs: add sample usages by @pat-pan in #227
- Bump xunit.runner.visualstudio from 3.1.1 to 3.1.2 by @dependabot[bot] in #231
- docs(oci): add documentation with OCI image spec v1.1.0 references by @sajayantony in #230
- chore: fix lint errors in the code base by @wangxiaoxuan273 in #236
- build: configure centralized code analysis with Directory.Build.props by @sajayantony in #237
- feat!: make DescriptorExtension internal by @sajayantony in #239
- Bump xunit.runner.visualstudio from 3.1.2 to 3.1.3 by @dependabot[bot] in #240
- chore: add superlinter by @wangxiaoxuan273 in #235
- Bump Microsoft.CodeAnalysis.NetAnalyzers from 8.0.0 to 9.0.0 by @dependabot[bot] in #242
- build(deps): Bump super-linter/super-linter from 6 to 7 by @dependabot[bot] in #243
- build(deps): Bump super-linter/super-linter from 7 to 8 by @dependabot[bot] in #245
- chore: fix editoconfig and disallow consecutive blank lines by @sajayantony in #238
- refactor!: move Error type out from nested class by @wangxiaoxuan273 in #244
- refactor!: move Exceptions into separate namespaces by @wangxiaoxuan273 in #247
- refactor!: rename extension classes by @wangxiaoxuan273 in #246
- Bump System.Text.Json from 9.0.7 to 9.0.8 by @dependabot[bot] in #248
- build(deps): Bump actions/checkout from 4 to 5 by @dependabot[bot] in #250
- Bump xunit.runner.visualstudio from 3.1.3 to 3.1.4 by @dependabot[bot] in #251
- build(deps): Bump actions/upload-pages-artifact from 3 to 4 by @dependabot[bot] in #254
- refactor: use IMemoryCache for auth client cache by @Wwwsylvia in #255
- build(deps): Bump actions/setup-dotnet from 4 to 5 by @dependabot[bot] in #257
- Bump Microsoft.Extensions.Caching.Abstractions and Microsoft.Extensions.Caching.Memory by @dependabot[bot] in #260
- Bump System.Text.Json from 9.0.8 to 9.0.9 by @dependabot[bot] in #261
- docs: demonstrate how to use SingleRegistryCredentialProvider in examples by @Wwwsylvia in #258
- docs: fix toc links by @Wwwsylvia in #264
- docs: fix toc links again by @Wwwsylvia in #269
- docs: add copilot knowledge base by @shizhMSFT in #271
- fix: do not throw exception when
serviceis missing in Www-Authenticate header by @Wwwsylvia in #273 - feat: format the exception message for ResponseException by @Wwwsylvia in #274
Full Changelog: v0.3.0...v0.4.0
v0.3.0
The NuGet package is available at here.
Breaking Changes
- Refactor several API signatures to align with .NET conventions
- Remove
HttpClientWithBasicAuth
New Features
- Conform to
image-spec v1.1.1anddistribution-spec v1.1.1- Support mounting a blob from one repository to another in the same remote registry
- Support Referrers API and Referrers Tag Schema
- Add
PackManifestAsyncfor packing OCI manifests - Introduce a comprehensive authentication client supporting both basic auth and bearer auth
- Enable concurrency control via
CopyGraphOptions.MaxConcurrencyfor for copy operations and enhance performance - Add a repository option
MaxMetadataBytesfor limiting the maximum size of response that can be loaded into memory
Bug Fixes
- Fix #205: Null tag list was not handled in
ListTagsAsync
Other Changes
- Clean up code
- Update dependencies
Detailed Commits
- build(deps): Bump xunit from 2.9.1 to 2.9.2 in /tests/OrasProject.Oras.Tests by @dependabot in #146
- build(deps): Bump System.Text.Json from 8.0.4 to 8.0.5 in /tests/OrasProject.Oras.Tests by @dependabot in #148
- build(deps): Bump System.Text.Json from 8.0.4 to 8.0.5 in /src/OrasProject.Oras by @dependabot in #147
- chore(workflow): set code coverage threshold to 80% by @Wwwsylvia in #151
- feat: Implement Pack Manifests by @nhu1997 in #149
- feat(repository): mounting support by @leonardochaia in #152
- build(deps): Bump System.Text.Json from 8.0.5 to 9.0.0 in /src/OrasProject.Oras by @dependabot in #156
- build(deps): Bump Microsoft.NET.Test.Sdk from 17.11.1 to 17.12.0 in /tests/OrasProject.Oras.Tests by @dependabot in #166
- refactor: overload DoPushAsync by @Wwwsylvia in #165
- ci(codecov): change codecov argument due to upgrade to v5 by @pat-pan in #169
- chore: adds CA2007 warning by @leonardochaia in #170
- build(deps): Bump xunit.runner.visualstudio from 2.8.2 to 3.0.0 in /tests/OrasProject.Oras.Tests by @dependabot in #172
- build(deps): Bump coverlet.msbuild from 6.0.2 to 6.0.3 in /tests/OrasProject.Oras.Tests by @dependabot in #173
- feat(referrers): push manifest with subject by @pat-pan in #163
- build(deps): Bump xunit from 2.9.2 to 2.9.3 in /tests/OrasProject.Oras.Tests by @dependabot in #175
- build(deps): Bump xunit.runner.visualstudio from 3.0.0 to 3.0.1 in /tests/OrasProject.Oras.Tests by @dependabot in #176
- build(deps): Bump System.Text.Json from 9.0.0 to 9.0.1 in /src/OrasProject.Oras by @dependabot in #177
- build(deps): Bump System.Text.Json from 9.0.0 to 9.0.1 in /tests/OrasProject.Oras.Tests by @dependabot in #178
- build(deps): Bump coverlet.msbuild from 6.0.3 to 6.0.4 in /tests/OrasProject.Oras.Tests by @dependabot in #179
- build(deps): Bump xunit.runner.visualstudio from 3.0.1 to 3.0.2 in /tests/OrasProject.Oras.Tests by @dependabot in #181
- build(deps): Bump Microsoft.NET.Test.Sdk from 17.12.0 to 17.13.0 in /tests/OrasProject.Oras.Tests by @dependabot in #183
- build(deps): Bump System.Text.Json from 9.0.1 to 9.0.2 in /tests/OrasProject.Oras.Tests by @dependabot in #185
- build(deps): Bump apache/skywalking-eyes from 0.6.0 to 0.7.0 by @dependabot in #182
- feat(referrers): delete manifest with subject by @pat-pan in #174
- feat(referrers): support referrers API by @pat-pan in #180
- build(deps): Bump System.Text.Json from 9.0.2 to 9.0.3 in /src/OrasProject.Oras by @dependabot in #186
- refactor!: refactor code to align with dotnet standards by @pat-pan in #190
- chore(tests): clean up compiler warnings by @sajayantony in #191
- chore(refactor): removed warnings and minor refactoring by @sajayantony in #195
- chore: fix line endings and bom by @sajayantony in #198
- build(deps): Bump System.Text.Json from 9.0.3 to 9.0.4 in /tests/OrasProject.Oras.Tests by @dependabot in #201
- refactor: fix and reduce reference parsing exceptions by @sajayantony in #197
- build(deps): Bump xunit.runner.visualstudio from 3.0.2 to 3.1.0 in /tests/OrasProject.Oras.Tests by @dependabot in #208
- docs: add auth model design by @pat-pan in #188
- fix: support image spec and distribution spec v1.1.1 by @pat-pan in #211
- feat(auth): implement bearer token authentication client by @pat-pan in #200
- chore: clean up code to fix warnings by @Wwwsylvia in #214
- feat(repository): implement MaxMetadataBytes by @wju-MSFT in #216
- feat(copy): improve copy performance by @pat-pan in #213
- refactor: refactor credential resolver for auth client by @Wwwsylvia in #217
- refactor: optimize stream usage by @Wwwsylvia in #215
- build(deps): Bump System.Text.Json from 9.0.4 to 9.0.5 by @dependabot in #220
- fix: test null tags that may be return for repo without tags by @Fassino in #206
New Contributors
- @Wwwsylvia made their first contribution in #151
- @nhu1997 made their first contribution in #149
- @leonardochaia made their first contribution in #152
- @pat-pan made their first contribution in #169
- @wju-MSFT made their first contribution in #216
- @Fassino made their first contribution in #206
Full Changelog: v0.2.1...v0.3.0
v0.2.1
NuGet package is available at nuget.org.
Bug Fixes
- Fix #132: The
_statequery parameter from the blob upload response was accidentally discarded - Fix #133, #143: The
Docker-Content-Digestheader was not properly checked
Detailed Commits
- build(deps): Bump xunit from 2.6.5 to 2.6.6 in /tests/OrasProject.Oras.Tests by @dependabot in #107
- build(deps): Bump codecov/codecov-action from 3 to 4 by @dependabot in #108
- build(deps): Bump Microsoft.NET.Test.Sdk from 17.8.0 to 17.9.0 in /tests/OrasProject.Oras.Tests by @dependabot in #109
- build(deps): Bump xunit.runner.visualstudio from 2.5.6 to 2.5.7 in /tests/OrasProject.Oras.Tests by @dependabot in #113
- build(deps): Bump coverlet.msbuild from 6.0.0 to 6.0.1 in /tests/OrasProject.Oras.Tests by @dependabot in #114
- build(deps): Bump xunit from 2.6.6 to 2.7.0 in /tests/OrasProject.Oras.Tests by @dependabot in #112
- build(deps): Bump System.Text.Json from 8.0.1 to 8.0.2 in /tests/OrasProject.Oras.Tests by @dependabot in #110
- build(deps): Bump actions/configure-pages from 4 to 5 by @dependabot in #118
- build(deps): Bump coverlet.msbuild from 6.0.1 to 6.0.2 in /tests/OrasProject.Oras.Tests by @dependabot in #117
- build(deps): Bump System.Text.Json from 8.0.2 to 8.0.3 in /tests/OrasProject.Oras.Tests by @dependabot in #115
- bump(ci): add codecov token by @wangxiaoxuan273 in #120
- build(deps): Bump xunit from 2.7.0 to 2.7.1 in /tests/OrasProject.Oras.Tests by @dependabot in #121
- build(deps): Bump apache/skywalking-eyes from 0.5.0 to 0.6.0 by @dependabot in #119
- build(deps): Bump xunit.runner.visualstudio from 2.5.7 to 2.5.8 in /tests/OrasProject.Oras.Tests by @dependabot in #122
- build(deps): Bump xunit.runner.visualstudio from 2.5.8 to 2.8.0 in /tests/OrasProject.Oras.Tests by @dependabot in #123
- build(deps): Bump xunit from 2.7.1 to 2.8.0 in /tests/OrasProject.Oras.Tests by @dependabot in #124
- build(deps): Bump xunit from 2.8.0 to 2.8.1 in /tests/OrasProject.Oras.Tests by @dependabot in #127
- build(deps): Bump xunit.runner.visualstudio from 2.8.0 to 2.8.1 in /tests/OrasProject.Oras.Tests by @dependabot in #126
- build(deps): Bump Microsoft.NET.Test.Sdk from 17.9.0 to 17.10.0 in /tests/OrasProject.Oras.Tests by @dependabot in #125
- build(deps): Bump System.Text.Json from 8.0.3 to 8.0.4 in /src/OrasProject.Oras by @dependabot in #130
- build(deps): Bump xunit from 2.8.1 to 2.9.0 in /tests/OrasProject.Oras.Tests by @dependabot in #128
- build(deps): Bump xunit.runner.visualstudio from 2.8.1 to 2.8.2 in /tests/OrasProject.Oras.Tests by @dependabot in #129
- fix: use existing query params from blobstore response by @daniel-pebble in #136
- chore: add editorconfig to enforce private and public member naming convention by @daniel-pebble in #137
- build(deps): Bump Microsoft.NET.Test.Sdk from 17.10.0 to 17.11.0 in /tests/OrasProject.Oras.Tests by @dependabot in #138
- build(deps): Bump Moq from 4.20.70 to 4.20.71 in /tests/OrasProject.Oras.Tests by @dependabot in #139
- build(deps): Bump Microsoft.NET.Test.Sdk from 17.11.0 to 17.11.1 in /tests/OrasProject.Oras.Tests by @dependabot in #140
- build(deps): Bump Moq from 4.20.71 to 4.20.72 in /tests/OrasProject.Oras.Tests by @dependabot in #141
- build(deps): Bump xunit from 2.9.0 to 2.9.1 in /tests/OrasProject.Oras.Tests by @dependabot in #142
New Contributors
- @wangxiaoxuan273 made their first contribution in #120
- @daniel-pebble made their first contribution in #136
Full Changelog: v0.2.0...v0.2.1
v0.2.0
NuGet Package is available at nuget.org.
New Features
- BREAKING CHANGE: Reshaped
oras-dotnet.- Classes are refactored to the namespace
OrasProject.Orasand kept the similar structure asoras-go. - .NET Target framework is bumped to
net8.0. - Code is upgraded to leverage the C# 12.0 language features.
- Interfaces are re-designed to match dotnet / C# convention.
- Classes are refactored to the namespace
- New
Registrytarget implementation, interacting with the remote repository.- Only basic auth is supported in this release.
- Token auth will be supported in future releases and is tracked in #36.
Other Changes
- API documentation is available.
- Improved general performance on the digest utility.
Detailed Commits
- feat: Added IRepository by @sammychinedu2ky in #20
- feat: Registry by @sammychinedu2ky in #21
- feat: added support for basic auth by @sammychinedu2ky in #23
- fix: resolved digest retrieval issue by @sammychinedu2ky in #28
- feat: Added docs using DocFx by @sammychinedu2ky in #29
- docs: Added reference for API docs by @sammychinedu2ky in #30
- docs: fixed logo link and typo by @sammychinedu2ky in #31
- refactor: removed test warnings and minor refactor by @sajayantony in #32
- refactor: Update GenerateDescriptor with Async suffix by @sajayantony in #33
- chore: use compiled regex by @sajayantony in #67
- docs: add code of conduct by @shizhMSFT in #68
- docs: add security policy by @shizhMSFT in #69
- docs: add PR template by @shizhMSFT in #70
- docs: add issue templates by @shizhMSFT in #71
- refactor: package publishing building blocks by @sajayantony in #34
- bump!: target .net 8.0 by @shizhMSFT in #75
- refactor!: rename namespaces to prefix OrasProject.Oras by @shizhMSFT in #76
- fix: fix doc generation by @shizhMSFT in #77
- build: build check with code coverage uploaded by @shizhMSFT in #78
- build: add dependabot by @shizhMSFT in #79
- build(deps): bump action versions in generating docs by @shizhMSFT in #85
- build: add CodeQL check by @shizhMSFT in #84
- build: add license checker and missing license headers by @shizhMSFT in #86
- build: add codecov config by @shizhMSFT in #88
- refactor!: modernize base types and interfaces by @shizhMSFT in #87
- refactor!: modernize memory store and copy by @shizhMSFT in #89
- docs: update README.md for badges by @shizhMSFT in #90
- refactor!: modernize registry interface by @shizhMSFT in #92
- refactor!: modernize Reference by @shizhMSFT in #93
- build(deps): Bump xunit from 2.6.4 to 2.6.5 in /tests/OrasProject.Oras.Tests by @dependabot in #95
- refactor!: modernize Registry.Remote by @shizhMSFT in #94
- build(deps): Bump System.Text.Json from 8.0.0 to 8.0.1 in /src/OrasProject.Oras by @dependabot in #97
- build(deps): Bump System.Text.Json from 8.0.0 to 8.0.1 in /tests/OrasProject.Oras.Tests by @dependabot in #96
- refactor!: modernize exceptions by @shizhMSFT in #98
- feat: make
ReadAllAsyncpublic by @shizhMSFT in #99 - build: auto publish to nuget on tag by @shizhMSFT in #100
- docs: add contributing guide by @shizhMSFT in #101
- build: clean version for dev by @shizhMSFT in #102
- docs: add release checklist by @shizhMSFT in #104
- docs: prefer commit to branch by @shizhMSFT in #105
New Contributors
- @sajayantony made their first contribution in #32
- @dependabot made their first contribution in #95
Full Changelog: v0.1.0...v0.2.0
v0.1.0
Features
oras-dotnet is the DotNet SDK for ORAS, enabling you to transfer artifacts from one place to another.
In the SDK, artifacts are modelled as Directed Acyclic Graphs (DAGs) stored in Content-Addressable Storages (CASs). Copying artifacts across repositories or generic targets is implemented as copying single-rooted DAGs across CASs.
The SDK provides the following features:
- Interfaces
Content-Addressable Storage (CAS)- Tagging and resolving interfaces
Target
MemoryTargetwhich enables the retrieval and storage of artifacts in memoryCopyfunction which enables the copying of artifacts from one target implementation to another
Detailed Commits
- chore: add CODEOWNERS and MAINTAINERS by @shizhMSFT in #1
- chore: update README.md by @shizhMSFT in #2
- feat : created interfaces by @sammychinedu2ky in #10
- feat: MemoryTarget Implemented by @sammychinedu2ky in #13
- feat: Support Copy by @sammychinedu2ky in #16
New Contributors
- @shizhMSFT made their first contribution in #1
Full Changelog: https://github.com/oras-project/oras-dotnet/commits/v0.1.0