Skip to content

[Key Vault Certificates] Remove preview service version from GA library#48678

Open
rohitsinghal4u wants to merge 10 commits intomainfrom
fix/keyvault-certificates-stabilize-490
Open

[Key Vault Certificates] Remove preview service version from GA library#48678
rohitsinghal4u wants to merge 10 commits intomainfrom
fix/keyvault-certificates-stabilize-490

Conversation

@rohitsinghal4u
Copy link
Copy Markdown
Contributor

@rohitsinghal4u rohitsinghal4u commented Apr 2, 2026

Description

Addresses an API review comment: preview service versions should not be included in GA versions of the library.

V2025_06_01_PREVIEW (2025-06-01-preview) was introduced by the TypeSpec AutoPR for API version 2025-07-01 but should never have been included in a GA SDK release. This PR removes it.

Changes

  • Removed "2025-06-01-preview" from the version list in CertificatesCustomizations.java — this is the source of truth that generates CertificateServiceVersion.java during TypeSpec code generation
  • Removed the resulting V2025_06_01_PREVIEW enum constant from CertificateServiceVersion.java
  • Removed the V2025_06_01_PREVIEW entry from CHANGELOG under 4.9.0-beta.1

API Review

This change was requested during API review:
https://spa.apiview.dev/review/0ae58ec9f9c741e4aaa9f78d9d00a482?activeApiRevisionId=c33cbbe380f34a1794c7070c8b562643&diffApiRevisionId=62e624c0803a4383b9f27e52cd9c708a&diffStyle=trees&view=conversations&nId=com.azure.security.keyvault.certificates.CertificateServiceVersion.V7_4

Checklist

  • No breaking changes — V2025_06_01_PREVIEW was added in 4.9.0-beta.1 (Unreleased) and was never part of a released artifact
  • CHANGELOG updated
  • No test changes needed — getLatest() remains V7_6 so all existing playback recordings are unaffected

Remove V2025_06_01_PREVIEW from CertificateServiceVersion as preview
service versions should not be included in GA versions of the library.
Also update getLatest() to return V2025_07_01 (the new stable version)
and remove the preview entry from the CHANGELOG.
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Removes an accidentally-included preview service version from the Key Vault Certificates GA client’s service version enum, and updates the library’s “latest” service version to the new stable 2025-07-01.

Changes:

  • Removed V2025_06_01_PREVIEW from CertificateServiceVersion.
  • Updated CertificateServiceVersion.getLatest() to return V2025_07_01.
  • Removed the preview-version mention from the module CHANGELOG.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.

File Description
sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateServiceVersion.java Removes the preview enum constant and switches getLatest() to the new stable service version.
sdk/keyvault/azure-security-keyvault-certificates/CHANGELOG.md Removes the CHANGELOG entry that claimed the preview service version was added.
Comments suppressed due to low confidence (1)

sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateServiceVersion.java:44

  • CertificateServiceVersion is marked as generated, but the generation customization still hard-codes the removed 2025-06-01-preview entry and also hard-codes getLatest() to return V7_6. Unless customizations/.../CertificatesCustomizations.customizeServiceVersion() is updated to remove the preview version and return V2025_07_01, the next regeneration will re-introduce the preview constant and revert getLatest() back to V7_6.
    V7_6("7.6"),
    /**
     * Service version {@code 2025-07-01}.
     */
    V2025_07_01("2025-07-01");

@github-actions
Copy link
Copy Markdown
Contributor

github-actions bot commented Apr 2, 2026

API Change Check

APIView identified API level changes in this PR and created the following API reviews

com.azure:azure-security-keyvault-certificates

singhalrohit4u and others added 3 commits April 2, 2026 18:55
Changing getLatest() to V2025_07_01 caused all playback tests to fail
because existing recordings were made against API version 7.6. Reverting
getLatest() to V7_6 — only the removal of V2025_06_01_PREVIEW is in scope
for this PR.
The customization class generates CertificateServiceVersion.java with a
hardcoded list of API versions. Preview service versions should not be
included in GA library releases. Removing '2025-06-01-preview' from the
list so that the generated output matches the committed file and the
TypeSpec code generation verify check passes.
.setJavadocComment("The versions of Azure Key Vault Certificates supported by this client library.");

for (String version : Arrays.asList("7.0", "7.1", "7.2", "7.3", "7.4", "7.5", "7.6",
"2025-06-01-preview", "2025-07-01")) {
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are there any APIs generated from this preview version that should be removed too? This change only removes the preview version from the enum but doesn't remove any of the APIs (if there are any) from this version. Please verify that we are not shipping any features that are still in preview.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The uris and ipAddresses properties on SubjectAlternativeNames were introduced with @Versioning.added(v2025_06_01_preview) in the TypeSpec spec, but since v2025_07_01 is a later stable version in the Versions enum, those properties are also part of the 2025-07-01 stable API surface. No APIs need to be removed — everything currently in the library and its CHANGELOG corresponds to the stable 2025-07-01 API.

/**
* Service version {@code 2025-07-01}.
*/
V2025_07_01("2025-07-01");
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The getLatest method should also be updated to return the latest stable version (V2025_07_01)

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done — getLatest() has been updated to return V2025_07_01 in both CertificateServiceVersion.java and CertificatesCustomizations.java (the TypeSpec code-gen source of truth). All tests have been re-recorded against the live 2025-07-01 API endpoint and the updated recordings pushed in commit e0ae632.

singhalrohit4u and others added 6 commits April 3, 2026 14:00
…cord tests

- Updated getLatest() to return V2025_07_01 in both CertificateServiceVersion.java
  and CertificatesCustomizations.java (the TypeSpec code-gen source of truth)
- Re-recorded all tests against live Azure Key Vault using API version 2025-07-01
- Updated assets.json with new recording tag: java/keyvault/azure-security-keyvault-certificates_665470077b
Updated assets.json tag to include async test recordings:
java/keyvault/azure-security-keyvault-certificates_8643a442b1

All 159 playback tests now pass (2 skipped).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

Status: Untriaged

Development

Successfully merging this pull request may close these issues.

4 participants