From e0c5d11b9447c59e61eb02eda5d36956553456dc Mon Sep 17 00:00:00 2001 From: Liudmila Molkova Date: Thu, 4 May 2023 13:28:27 -0700 Subject: [PATCH 1/5] ACR: prepare 1.1.0 release --- eng/jacoco-test-coverage/pom.xml | 2 +- eng/versioning/version_client.txt | 2 +- .../azure-containers-containerregistry-perf/pom.xml | 2 +- .../azure-containers-containerregistry/CHANGELOG.md | 9 ++------- .../azure-containers-containerregistry/README.md | 2 +- .../azure-containers-containerregistry/pom.xml | 2 +- 6 files changed, 7 insertions(+), 12 deletions(-) diff --git a/eng/jacoco-test-coverage/pom.xml b/eng/jacoco-test-coverage/pom.xml index 9dc892af27d4..719120b82e34 100644 --- a/eng/jacoco-test-coverage/pom.xml +++ b/eng/jacoco-test-coverage/pom.xml @@ -103,7 +103,7 @@ com.azure azure-containers-containerregistry - 1.1.0-beta.5 + 1.1.0 com.azure diff --git a/eng/versioning/version_client.txt b/eng/versioning/version_client.txt index 40330bcb2baa..c434d9a91d5a 100644 --- a/eng/versioning/version_client.txt +++ b/eng/versioning/version_client.txt @@ -71,7 +71,7 @@ com.azure:azure-communication-phonenumbers;1.1.1;1.2.0-beta.1 com.azure:azure-communication-networktraversal;1.1.0-beta.2;1.1.0-beta.3 com.azure:azure-communication-jobrouter;1.0.0-beta.1;1.0.0-beta.1 com.azure:azure-communication-rooms;1.0.0-beta.2;1.0.0-beta.3 -com.azure:azure-containers-containerregistry;1.0.14;1.1.0-beta.5 +com.azure:azure-containers-containerregistry;1.0.14;1.1.0 com.azure:azure-containers-containerregistry-perf;1.0.0-beta.1;1.0.0-beta.1 com.azure:azure-core;1.39.0;1.40.0-beta.1 com.azure:azure-core-amqp;2.8.5;2.9.0-beta.1 diff --git a/sdk/containerregistry/azure-containers-containerregistry-perf/pom.xml b/sdk/containerregistry/azure-containers-containerregistry-perf/pom.xml index b7e10248b95c..7876c9030365 100644 --- a/sdk/containerregistry/azure-containers-containerregistry-perf/pom.xml +++ b/sdk/containerregistry/azure-containers-containerregistry-perf/pom.xml @@ -25,7 +25,7 @@ com.azure azure-containers-containerregistry - 1.1.0-beta.5 + 1.1.0 com.azure diff --git a/sdk/containerregistry/azure-containers-containerregistry/CHANGELOG.md b/sdk/containerregistry/azure-containers-containerregistry/CHANGELOG.md index c39cf9aa9e79..a89ef1119588 100644 --- a/sdk/containerregistry/azure-containers-containerregistry/CHANGELOG.md +++ b/sdk/containerregistry/azure-containers-containerregistry/CHANGELOG.md @@ -1,16 +1,11 @@ # Release History -## 1.1.0-beta.5 (Unreleased) - -### Features Added +## 1.1.0 (2023-05-11) ### Breaking Changes from version 1.1.0-beta.4 - Added sanity check for manifest size at download time - if manifest is bigger than 4MB, `ServiceResponseException` will be thrown. - -### Bugs Fixed - -### Other Changes +- Added sanity check for `Content-Length` header presence on the response when downloading blobs - if it's not present, `ServiceResponseException` will be thrown. ## 1.0.14 (2023-04-21) diff --git a/sdk/containerregistry/azure-containers-containerregistry/README.md b/sdk/containerregistry/azure-containers-containerregistry/README.md index 22b6aae4afc8..14862bd8c527 100644 --- a/sdk/containerregistry/azure-containers-containerregistry/README.md +++ b/sdk/containerregistry/azure-containers-containerregistry/README.md @@ -56,7 +56,7 @@ and then include the direct dependency in the dependencies section without the v com.azure azure-containers-containerregistry - 1.0.13 + 1.1.0 ``` [//]: # ({x-version-update-end}) diff --git a/sdk/containerregistry/azure-containers-containerregistry/pom.xml b/sdk/containerregistry/azure-containers-containerregistry/pom.xml index 51a213f98531..dd5a28449cf5 100644 --- a/sdk/containerregistry/azure-containers-containerregistry/pom.xml +++ b/sdk/containerregistry/azure-containers-containerregistry/pom.xml @@ -11,7 +11,7 @@ com.azure azure-containers-containerregistry - 1.1.0-beta.5 + 1.1.0 Microsoft Azure SDK for Container Registry This package contains Microsoft Azure SDK for Container Registry. From 8ff24d2fc93c6d68b34731d5d18317bcf01ca210 Mon Sep 17 00:00:00 2001 From: Liudmila Molkova Date: Thu, 4 May 2023 13:44:34 -0700 Subject: [PATCH 2/5] nit: return final to ontainerRepositoryProperties --- .../containerregistry/models/ContainerRepositoryProperties.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sdk/containerregistry/azure-containers-containerregistry/src/main/java/com/azure/containers/containerregistry/models/ContainerRepositoryProperties.java b/sdk/containerregistry/azure-containers-containerregistry/src/main/java/com/azure/containers/containerregistry/models/ContainerRepositoryProperties.java index ff233f48e6e7..ad1d50f881bd 100644 --- a/sdk/containerregistry/azure-containers-containerregistry/src/main/java/com/azure/containers/containerregistry/models/ContainerRepositoryProperties.java +++ b/sdk/containerregistry/azure-containers-containerregistry/src/main/java/com/azure/containers/containerregistry/models/ContainerRepositoryProperties.java @@ -15,7 +15,7 @@ /** Properties of this repository. */ @Fluent -public class ContainerRepositoryProperties implements JsonSerializable { +public final class ContainerRepositoryProperties implements JsonSerializable { /* * Registry login server name. This is likely to be similar to {registry-name}.azurecr.io. */ From 9e066a7efc17a0655cdc2943816ddc06897805ad Mon Sep 17 00:00:00 2001 From: Liudmila Molkova Date: Thu, 4 May 2023 14:22:42 -0700 Subject: [PATCH 3/5] rename OCI_MANIGEST to OCI_IMAGE_MANIFEST --- .../azure-containers-containerregistry/CHANGELOG.md | 1 + .../ContainerRegistryContentAsyncClient.java | 6 +++--- .../containerregistry/ContainerRegistryContentClient.java | 4 ++-- .../containerregistry/implementation/UtilsImpl.java | 2 +- .../containerregistry/models/ManifestMediaType.java | 2 +- .../containerregistry/models/SetManifestOptions.java | 2 +- .../azure/containers/containerregistry/DownloadImage.java | 2 +- .../containers/containerregistry/DownloadImageAsync.java | 4 ++-- .../ContainerRegistryContentClientIntegrationTests.java | 2 +- .../ContainerRegistryContentClientTests.java | 6 +++--- 10 files changed, 16 insertions(+), 15 deletions(-) diff --git a/sdk/containerregistry/azure-containers-containerregistry/CHANGELOG.md b/sdk/containerregistry/azure-containers-containerregistry/CHANGELOG.md index a89ef1119588..6ee81a043fb0 100644 --- a/sdk/containerregistry/azure-containers-containerregistry/CHANGELOG.md +++ b/sdk/containerregistry/azure-containers-containerregistry/CHANGELOG.md @@ -6,6 +6,7 @@ - Added sanity check for manifest size at download time - if manifest is bigger than 4MB, `ServiceResponseException` will be thrown. - Added sanity check for `Content-Length` header presence on the response when downloading blobs - if it's not present, `ServiceResponseException` will be thrown. +- Renamed `ManifestMediaType.OCI_MANIFEST` to `ManifestMediaType.OCI_IMAGE_MANIFEST`. ## 1.0.14 (2023-04-21) diff --git a/sdk/containerregistry/azure-containers-containerregistry/src/main/java/com/azure/containers/containerregistry/ContainerRegistryContentAsyncClient.java b/sdk/containerregistry/azure-containers-containerregistry/src/main/java/com/azure/containers/containerregistry/ContainerRegistryContentAsyncClient.java index 0b55eab93055..0e5aa71f9f9c 100644 --- a/sdk/containerregistry/azure-containers-containerregistry/src/main/java/com/azure/containers/containerregistry/ContainerRegistryContentAsyncClient.java +++ b/sdk/containerregistry/azure-containers-containerregistry/src/main/java/com/azure/containers/containerregistry/ContainerRegistryContentAsyncClient.java @@ -132,7 +132,7 @@ public Mono setManifest(OciImageManifest manifest, String tag return monoError(LOGGER, new NullPointerException("'manifest' can't be null.")); } - return withContext(context -> setManifestWithResponse(BinaryData.fromObject(manifest), tag, ManifestMediaType.OCI_MANIFEST, context)) + return withContext(context -> setManifestWithResponse(BinaryData.fromObject(manifest), tag, ManifestMediaType.OCI_IMAGE_MANIFEST, context)) .flatMap(FluxUtil::toMono); } @@ -239,7 +239,7 @@ public Mono uploadBlob(BinaryData content) { *
      * contentClient.getManifest("latest")
      *     .doOnNext(downloadResult -> {
-     *         if (ManifestMediaType.OCI_MANIFEST.equals(downloadResult.getManifestMediaType())
+     *         if (ManifestMediaType.OCI_IMAGE_MANIFEST.equals(downloadResult.getManifestMediaType())
      *             || ManifestMediaType.DOCKER_MANIFEST.equals(downloadResult.getManifestMediaType())) {
      *             OciImageManifest manifest = downloadResult.getManifest().toObject(OciImageManifest.class);
      *             System.out.println("Got OCI manifest");
@@ -273,7 +273,7 @@ public Mono getManifest(String tagOrDigest) {
      * contentClient.getManifestWithResponse("latest")
      *     .doOnNext(response -> {
      *         GetManifestResult manifestResult = response.getValue();
-     *         if (ManifestMediaType.OCI_MANIFEST.equals(manifestResult.getManifestMediaType())
+     *         if (ManifestMediaType.OCI_IMAGE_MANIFEST.equals(manifestResult.getManifestMediaType())
      *             || ManifestMediaType.DOCKER_MANIFEST.equals(manifestResult.getManifestMediaType())) {
      *             OciImageManifest manifest = manifestResult.getManifest().toObject(OciImageManifest.class);
      *             System.out.println("Got OCI manifest");
diff --git a/sdk/containerregistry/azure-containers-containerregistry/src/main/java/com/azure/containers/containerregistry/ContainerRegistryContentClient.java b/sdk/containerregistry/azure-containers-containerregistry/src/main/java/com/azure/containers/containerregistry/ContainerRegistryContentClient.java
index 783f9e48279f..d9a2c2f597fb 100644
--- a/sdk/containerregistry/azure-containers-containerregistry/src/main/java/com/azure/containers/containerregistry/ContainerRegistryContentClient.java
+++ b/sdk/containerregistry/azure-containers-containerregistry/src/main/java/com/azure/containers/containerregistry/ContainerRegistryContentClient.java
@@ -127,7 +127,7 @@ public String getEndpoint() {
     @ServiceMethod(returns = ReturnType.SINGLE)
     public SetManifestResult setManifest(OciImageManifest manifest, String tag) {
         Objects.requireNonNull(manifest, "'manifest' cannot be null.");
-        return setManifestWithResponse(BinaryData.fromObject(manifest), tag, ManifestMediaType.OCI_MANIFEST, Context.NONE).getValue();
+        return setManifestWithResponse(BinaryData.fromObject(manifest), tag, ManifestMediaType.OCI_IMAGE_MANIFEST, Context.NONE).getValue();
     }
 
     /**
@@ -248,7 +248,7 @@ public UploadRegistryBlobResult uploadBlob(BinaryData content, Context context)
      * 
      * GetManifestResult latestResult = contentClient.getManifest("latest");
      * if (ManifestMediaType.DOCKER_MANIFEST.equals(latestResult.getManifestMediaType())
-     *     || ManifestMediaType.OCI_MANIFEST.equals(latestResult.getManifestMediaType())) {
+     *     || ManifestMediaType.OCI_IMAGE_MANIFEST.equals(latestResult.getManifestMediaType())) {
      *     OciImageManifest manifest = latestResult.getManifest().toObject(OciImageManifest.class);
      * } else {
      *     throw new IllegalArgumentException("Unexpected manifest type: " + latestResult.getManifestMediaType());
diff --git a/sdk/containerregistry/azure-containers-containerregistry/src/main/java/com/azure/containers/containerregistry/implementation/UtilsImpl.java b/sdk/containerregistry/azure-containers-containerregistry/src/main/java/com/azure/containers/containerregistry/implementation/UtilsImpl.java
index 08a02790ce94..b3636856fa6f 100644
--- a/sdk/containerregistry/azure-containers-containerregistry/src/main/java/com/azure/containers/containerregistry/implementation/UtilsImpl.java
+++ b/sdk/containerregistry/azure-containers-containerregistry/src/main/java/com/azure/containers/containerregistry/implementation/UtilsImpl.java
@@ -87,7 +87,7 @@ public final class UtilsImpl {
     public static final HttpHeaderName DOCKER_DIGEST_HEADER_NAME = HttpHeaderName.fromString("docker-content-digest");
 
     public static final String SUPPORTED_MANIFEST_TYPES = "*/*"
-        + "," + ManifestMediaType.OCI_MANIFEST
+        + "," + ManifestMediaType.OCI_IMAGE_MANIFEST
         + "," + ManifestMediaType.DOCKER_MANIFEST
         + ",application/vnd.oci.image.index.v1+json"
         + ",application/vnd.docker.distribution.manifest.list.v2+json"
diff --git a/sdk/containerregistry/azure-containers-containerregistry/src/main/java/com/azure/containers/containerregistry/models/ManifestMediaType.java b/sdk/containerregistry/azure-containers-containerregistry/src/main/java/com/azure/containers/containerregistry/models/ManifestMediaType.java
index 4cff5f3df634..30cbef32ba6a 100644
--- a/sdk/containerregistry/azure-containers-containerregistry/src/main/java/com/azure/containers/containerregistry/models/ManifestMediaType.java
+++ b/sdk/containerregistry/azure-containers-containerregistry/src/main/java/com/azure/containers/containerregistry/models/ManifestMediaType.java
@@ -18,7 +18,7 @@ public final class ManifestMediaType extends ExpandableStringEnum {
-                if (ManifestMediaType.OCI_MANIFEST.equals(downloadResult.getManifestMediaType())
+                if (ManifestMediaType.OCI_IMAGE_MANIFEST.equals(downloadResult.getManifestMediaType())
                     || ManifestMediaType.DOCKER_MANIFEST.equals(downloadResult.getManifestMediaType())) {
                     OciImageManifest manifest = downloadResult.getManifest().toObject(OciImageManifest.class);
                     System.out.println("Got OCI manifest");
@@ -149,7 +149,7 @@ private static void getManifestWithResponse() {
         contentClient.getManifestWithResponse("latest")
             .doOnNext(response -> {
                 GetManifestResult manifestResult = response.getValue();
-                if (ManifestMediaType.OCI_MANIFEST.equals(manifestResult.getManifestMediaType())
+                if (ManifestMediaType.OCI_IMAGE_MANIFEST.equals(manifestResult.getManifestMediaType())
                     || ManifestMediaType.DOCKER_MANIFEST.equals(manifestResult.getManifestMediaType())) {
                     OciImageManifest manifest = manifestResult.getManifest().toObject(OciImageManifest.class);
                     System.out.println("Got OCI manifest");
diff --git a/sdk/containerregistry/azure-containers-containerregistry/src/test/java/com/azure/containers/containerregistry/ContainerRegistryContentClientIntegrationTests.java b/sdk/containerregistry/azure-containers-containerregistry/src/test/java/com/azure/containers/containerregistry/ContainerRegistryContentClientIntegrationTests.java
index 644a1a61d38a..87023b332c52 100644
--- a/sdk/containerregistry/azure-containers-containerregistry/src/test/java/com/azure/containers/containerregistry/ContainerRegistryContentClientIntegrationTests.java
+++ b/sdk/containerregistry/azure-containers-containerregistry/src/test/java/com/azure/containers/containerregistry/ContainerRegistryContentClientIntegrationTests.java
@@ -120,7 +120,7 @@ public void canUploadOciManifestBinaryData(HttpClient httpClient) {
         client = getContentClient("oci-artifact", httpClient);
         setManifestPrerequisites();
 
-        SetManifestOptions options  = new SetManifestOptions(BinaryData.fromObject(MANIFEST), ManifestMediaType.OCI_MANIFEST);
+        SetManifestOptions options  = new SetManifestOptions(BinaryData.fromObject(MANIFEST), ManifestMediaType.OCI_IMAGE_MANIFEST);
         SetManifestResult result = client.setManifestWithResponse(options, Context.NONE).getValue();
         assertNotNull(result);
         assertNotNull(result.getDigest());
diff --git a/sdk/containerregistry/azure-containers-containerregistry/src/test/java/com/azure/containers/containerregistry/ContainerRegistryContentClientTests.java b/sdk/containerregistry/azure-containers-containerregistry/src/test/java/com/azure/containers/containerregistry/ContainerRegistryContentClientTests.java
index 24dd335f119c..46760f88eed4 100644
--- a/sdk/containerregistry/azure-containers-containerregistry/src/test/java/com/azure/containers/containerregistry/ContainerRegistryContentClientTests.java
+++ b/sdk/containerregistry/azure-containers-containerregistry/src/test/java/com/azure/containers/containerregistry/ContainerRegistryContentClientTests.java
@@ -75,7 +75,7 @@
 public class ContainerRegistryContentClientTests {
     private static final BinaryData SMALL_CONTENT = BinaryData.fromString("foobar");
     private static final String SMALL_CONTENT_SHA256 = "sha256:c3ab8ff13720e8ad9047dd39466b3c8974e592c2fa383d4a3960714caef0c4f2";
-    private static final String DEFAULT_MANIFEST_CONTENT_TYPE = "*/*," + ManifestMediaType.OCI_MANIFEST + "," + ManifestMediaType.DOCKER_MANIFEST + ",application/vnd.oci.image.index.v1+json"
+    private static final String DEFAULT_MANIFEST_CONTENT_TYPE = "*/*," + ManifestMediaType.OCI_IMAGE_MANIFEST + "," + ManifestMediaType.DOCKER_MANIFEST + ",application/vnd.oci.image.index.v1+json"
         + ",application/vnd.docker.distribution.manifest.list.v2+json,application/vnd.cncf.oras.artifact.manifest.v1+json";
     private static final BinaryData MANIFEST_DATA = BinaryData.fromObject(MANIFEST);
     private static final BinaryData OCI_INDEX = BinaryData.fromString("{\"schemaVersion\":2,\"mediaType\":\"application/vnd.oci.image.index.v1+json\","
@@ -166,7 +166,7 @@ public void getManifest() {
 
         assertArrayEquals(MANIFEST_DATA.toBytes(), result.getManifest().toBytes());
         assertNotNull(result.getManifest().toObject(ManifestMediaType.class));
-        assertEquals(ManifestMediaType.OCI_MANIFEST, result.getManifestMediaType());
+        assertEquals(ManifestMediaType.OCI_IMAGE_MANIFEST, result.getManifestMediaType());
     }
 
     @SyncAsyncTest
@@ -469,7 +469,7 @@ public static HttpClient createClientManifests(BinaryData content, String digest
             assertEquals(DEFAULT_MANIFEST_CONTENT_TYPE, request.getHeaders().getValue(HttpHeaderName.ACCEPT));
             HttpHeaders headers = new HttpHeaders()
                 .add(UtilsImpl.DOCKER_DIGEST_HEADER_NAME, digest)
-                .add(HttpHeaderName.CONTENT_TYPE, returnContentType == null ? ManifestMediaType.OCI_MANIFEST.toString() : returnContentType.toString())
+                .add(HttpHeaderName.CONTENT_TYPE, returnContentType == null ? ManifestMediaType.OCI_IMAGE_MANIFEST.toString() : returnContentType.toString())
                 .add(HttpHeaderName.CONTENT_LENGTH, content.getLength().toString());
             return new MockHttpResponse(request, 200, headers, content.toBytes());
         });

From c9ceaf2831a84839c961cf8d2ef64d8ec268249b Mon Sep 17 00:00:00 2001
From: Liudmila Molkova 
Date: Fri, 5 May 2023 12:00:25 -0700
Subject: [PATCH 4/5] improve changelog entries

---
 .../CHANGELOG.md                              | 22 +++++++++++++++++--
 1 file changed, 20 insertions(+), 2 deletions(-)

diff --git a/sdk/containerregistry/azure-containers-containerregistry/CHANGELOG.md b/sdk/containerregistry/azure-containers-containerregistry/CHANGELOG.md
index 6ee81a043fb0..21a1deed9324 100644
--- a/sdk/containerregistry/azure-containers-containerregistry/CHANGELOG.md
+++ b/sdk/containerregistry/azure-containers-containerregistry/CHANGELOG.md
@@ -2,12 +2,30 @@
 
 ## 1.1.0 (2023-05-11)
 
-### Breaking Changes from version 1.1.0-beta.4
+### Features added from version 1.0.14
 
-- Added sanity check for manifest size at download time - if manifest is bigger than 4MB, `ServiceResponseException` will be thrown.
+- Added `ContainerRegistryContentClient` and `ContainerRegistryAsyncContentClient` classes that allow to upload and download images to Azure Container Registry.
+
+### Breaking Changes
+
+### From version 1.0.14 
+- no changes
+
+### From version 1.1.0-beta.4
+- Added sanity check for manifest size at download time - if manifest is bigger than 4MB, `ServiceResponseException` will be thrown. Previously no exception was thrown. 
 - Added sanity check for `Content-Length` header presence on the response when downloading blobs - if it's not present, `ServiceResponseException` will be thrown. 
+  Previously, content was buffered and no exception was thrown.
 - Renamed `ManifestMediaType.OCI_MANIFEST` to `ManifestMediaType.OCI_IMAGE_MANIFEST`. 
 
+### Other changes from version 1.0.14
+- `ContainerRegistryAudience.AZURE_RESOURCE_MANAGER_GERMANY` is deprecated following [Azure Germany cloud deprecation](https://learn.microsoft.com/azure/cloud-adoption-framework/migrate/azure-best-practices/multiple-regions)
+- Default constructors on following classes were deprecated: `ArtifactManifestPlatform`, `ArtifactManifestOrder`, `ArtifactOperatingSystem`, `ArtifactTagOrder`, `ArtifactManifestPlatform`.
+
+#### Dependency Updates
+
+- Upgraded `azure-core-http-netty` from `1.13.2` to version `1.13.3`.
+- Upgraded `azure-core` from `1.38.0` to version `1.39.0`.
+
 ## 1.0.14 (2023-04-21)
 
 ### Other Changes

From 2de6676799c8bdb338bb2fdc17bf058d4c5942ec Mon Sep 17 00:00:00 2001
From: Liudmila Molkova 
Date: Fri, 5 May 2023 12:49:17 -0700
Subject: [PATCH 5/5] lint

---
 .../azure-containers-containerregistry/CHANGELOG.md   | 11 +++--------
 1 file changed, 3 insertions(+), 8 deletions(-)

diff --git a/sdk/containerregistry/azure-containers-containerregistry/CHANGELOG.md b/sdk/containerregistry/azure-containers-containerregistry/CHANGELOG.md
index 21a1deed9324..4ccc878f6b6f 100644
--- a/sdk/containerregistry/azure-containers-containerregistry/CHANGELOG.md
+++ b/sdk/containerregistry/azure-containers-containerregistry/CHANGELOG.md
@@ -3,26 +3,21 @@
 ## 1.1.0 (2023-05-11)
 
 ### Features added from version 1.0.14
-
 - Added `ContainerRegistryContentClient` and `ContainerRegistryAsyncContentClient` classes that allow to upload and download images to Azure Container Registry.
 
-### Breaking Changes
-
-### From version 1.0.14 
-- no changes
-
-### From version 1.1.0-beta.4
+### Breaking Changes from version 1.1.0-beta.4
 - Added sanity check for manifest size at download time - if manifest is bigger than 4MB, `ServiceResponseException` will be thrown. Previously no exception was thrown. 
 - Added sanity check for `Content-Length` header presence on the response when downloading blobs - if it's not present, `ServiceResponseException` will be thrown. 
   Previously, content was buffered and no exception was thrown.
 - Renamed `ManifestMediaType.OCI_MANIFEST` to `ManifestMediaType.OCI_IMAGE_MANIFEST`. 
 
+- There are no breaking changes from previous stable version.
+
 ### Other changes from version 1.0.14
 - `ContainerRegistryAudience.AZURE_RESOURCE_MANAGER_GERMANY` is deprecated following [Azure Germany cloud deprecation](https://learn.microsoft.com/azure/cloud-adoption-framework/migrate/azure-best-practices/multiple-regions)
 - Default constructors on following classes were deprecated: `ArtifactManifestPlatform`, `ArtifactManifestOrder`, `ArtifactOperatingSystem`, `ArtifactTagOrder`, `ArtifactManifestPlatform`.
 
 #### Dependency Updates
-
 - Upgraded `azure-core-http-netty` from `1.13.2` to version `1.13.3`.
 - Upgraded `azure-core` from `1.38.0` to version `1.39.0`.