4.1 KiB
4.1 KiB
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
[1.1.1] - 2026-06-28
Changed
- Updated MaksIT.Core (1.6.8), MaksIT.Results (2.0.3), and Microsoft.Extensions.* (10.0.9) package references.
- Updated test dependencies: Microsoft.NET.Test.Sdk (18.7.0), Microsoft.Extensions.Logging.Console (10.0.9).
[1.1.0] - 2026-06-04
Added
- Full Libpod API coverage (~86 endpoints) via domain interfaces:
IPodmanSystemClient,IPodmanContainersClient,IPodmanImagesClient,IPodmanVolumesClient,IPodmanNetworksClient,IPodmanPodsClient,IPodmanExecClient,IPodmanBuildClient,IPodmanManifestsClient,IPodmanGenerateClient(composed byIPodmanClient). - Typed API responses under
Dtos/(*Dtosuffix); request/spec payloads remain inModels/. - Streaming APIs:
AttachContainerSessionAsync,StartExecSessionAsync(IPodmanAttachSession),PullImageWithProgressAsync,BuildImageWithProgressAsync(IPodmanProgressSession<T>), plus hijack connection and multiplex protocol internals. - Shared HTTP helpers in
PodmanClient.Http.csand NDJSON stream handling inPodmanNdjsonStreams. IPodmanClientConfiguration,AddPodmanClient(IHttpClientFactory/AddHttpClient); host apps supply their own configuration implementation.- Unit tests for streaming, NDJSON, and hijack mock server; integration tests tagged
Category=Integration(skip withoutPODMAN_TEST_URL). CHANGELOG.md,CONTRIBUTING.md, coverage badge assets, andutils/(RepoUtils test/release engines).
Changed
- Target framework upgraded to .NET 10 (
net10.0). - API methods return MaksIT.Results
Result/Result<T>instead of throwing on Podman HTTP errors. - Added MaksIT.Core and MaksIT.Results dependencies; removed local
Extensions(ToJson/ToObject) in favor ofMaksIT.Core.Extensions. PodmanClientsplit into partials (PodmanClient.Http.cs,PodmanClient.Containers.Api.cs, etc.); solution file migrated toPodmanClientDotNet.slnx.- Package metadata, Source Link, symbol packages, and documentation generation aligned with maksit-core standards.
- Registry auth (
X-Registry-Auth) applied per HTTP request instead of mutating sharedHttpClient.DefaultRequestHeaders. - Replaced legacy
src/Release-NuGetPackage.*scripts and.nuspecwith SDK-style pack +utils/release tooling.
Fixed
- Pull, push, and build endpoints consume NDJSON progress streams correctly;
BuildImageAsyncno longer deserializes a multi-line build stream as a single JSON object. - Attach hijack requests include the
ttyquery parameter. - Manual
PodmanClientconstructor preserves caller-configuredHttpClient.Timeout(no longer truncated via integer minutes cast).
Removed
- Concrete
PodmanClientConfigurationtype from the library package. - Monolithic
PodmanClientContainer.cs,PodmanClientExec.cs, andPodmanClientImage.cs(superseded by partials).
Breaking
- Method return types changed from
Task/Task<T?>toResult/Result<T?>. - Response types moved to
Dtos/; update usings fromModels.*response classes. - Removed
PodmanClientConfiguration; bindIPodmanClientConfigurationwith a host-owned options class. - Prefer
IPodmanClientandAddPodmanClientfor DI; manualPodmanClientconstructors remain for tests and simple hosts.
[1.0.4] - 2024-08-18
Added
- Integration tests for container lifecycle, exec, and image pull/tag.
Fixed
- Empty-string JSON parse issue in HTTP response handling.
Changed
- Package readme and repository documentation updates.
[1.0.2] - 2024-08-17
Added
- Initial PodmanClient.DotNet library on .NET 8 (
net8.0). - Container operations: create, start, stop, delete, archive copy.
- Exec operations: create, start, inspect.
- Image operations: pull, tag.
- NuGet packaging (
.nuspec,Release-NuGetPackagescripts) and README.