[Search] Migrate azure-resourcemanager-search to TypeSpec#48370
Merged
weidongxu-microsoft merged 8 commits intoMar 12, 2026
Conversation
9b039de to
362d657
Compare
Regenerated SDK from TypeSpec specification. Changes: - Regenerated all Java source from TypeSpec - Updated module-info.java with implementation.models opens - Removed stale generated samples - Added revapi suppressions for TypeSpec migration breaking changes - Updated CHANGELOG.md and tsp-location.yaml Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
362d657 to
45bf747
Compare
# Conflicts: # eng/lintingconfigs/revapi/track2/revapi.json
Contributor
There was a problem hiding this comment.
Pull request overview
Migrates azure-resourcemanager-search from Swagger/AutoRest generation to TypeSpec-based generation, updating the management-plane SDK surface and generated models to align with the new spec/API version.
Changes:
- Added TypeSpec generation configuration/metadata and updated module opens for new implementation models.
- Regenerated clients and models (immutability changes, pageable result models moved under
implementation.models, various enums moved toExpandableStringEnum). - Updated docs/versioning artifacts (README version bump, CHANGELOG entry) and added RevAPI suppressions for the migration.
Reviewed changes
Copilot reviewed 104 out of 105 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| sdk/search/azure-resourcemanager-search/tsp-location.yaml | Adds TypeSpec spec location pin for code generation. |
| sdk/search/azure-resourcemanager-search/src/main/resources/META-INF/azure-resourcemanager-search_metadata.json | Adds TypeSpec generator metadata and generated file manifest. |
| sdk/search/azure-resourcemanager-search/src/main/java/module-info.java | Opens implementation.models for azure-core reflection/serialization. |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/package-info.java | Updates package docs to TypeSpec generator branding. |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/package-info.java | Updates models package docs to TypeSpec generator branding. |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/UserAssignedIdentity.java | Regenerated header branding (TypeSpec). |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/UpgradeAvailable.java | Updates enum documentation text. |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/UnavailableNameReason.java | Updates enum documentation text. |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/SkuName.java | Converts to ExpandableStringEnum and updates docs. |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/Sku.java | Regenerated header branding (TypeSpec). |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/SharedPrivateLinkResourceStatus.java | Converts to ExpandableStringEnum and updates docs. |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/SharedPrivateLinkResourceProvisioningState.java | Converts to ExpandableStringEnum and updates docs. |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/SharedPrivateLinkResourceProperties.java | Regenerated header branding (TypeSpec). |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/ShareablePrivateLinkResourceType.java | Makes constructor private for output-only model. |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/ShareablePrivateLinkResourceProperties.java | Makes constructor private for output-only model. |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/Severity.java | Regenerated header branding (TypeSpec). |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/SearchServiceUpdate.java | Updates docstrings to new enum value casing. |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/SearchServiceStatus.java | Updates enum documentation text. |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/SearchSemanticSearch.java | Updates enum documentation text. |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/SearchEncryptionWithCmk.java | Updates enum documentation text. |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/SearchEncryptionComplianceStatus.java | Updates enum documentation text. |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/SearchDataExfiltrationProtection.java | Updates enum documentation text. |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/SearchBypass.java | Updates enum documentation text. |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/ResourceAssociationAccessMode.java | Updates enum documentation text. |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/ResourceAssociation.java | Makes model immutable/output-only (removes fluent setters). |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/QuotaUsageResultName.java | Makes model immutable/output-only (removes fluent setters). |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/PublicNetworkAccess.java | Converts to ExpandableStringEnum and updates docs/value casing. |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/ProvisioningState.java | Updates enum documentation text. |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/ProvisioningIssueProperties.java | Makes constructor private for output-only model. |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/ProvisioningIssue.java | Makes constructor private and updates property doc text. |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/PrivateLinkServiceConnectionStatus.java | Updates enum documentation text. |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/PrivateLinkServiceConnectionProvisioningState.java | Updates enum documentation text. |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/PrivateLinkResourceProperties.java | Makes constructor private for output-only model. |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/PrivateEndpointConnectionPropertiesPrivateLinkServiceConnectionState.java | Regenerated header branding (TypeSpec). |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/PrivateEndpointConnectionPropertiesPrivateEndpoint.java | Regenerated header branding (TypeSpec). |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/PrivateEndpointConnectionProperties.java | Regenerated header branding (TypeSpec). |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/Origin.java | Updates enum documentation text. |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/OperationDisplay.java | Makes constructor private for output-only model; doc tweak. |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/NetworkSecurityProfile.java | Makes model immutable/output-only (removes fluent setters). |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/NetworkSecurityPerimeterConfigurationProvisioningState.java | Regenerated header branding (TypeSpec). |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/NetworkSecurityPerimeterConfigurationProperties.java | Makes model immutable/output-only; doc text changes. |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/NetworkSecurityPerimeter.java | Makes model immutable/output-only (removes fluent setters). |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/NetworkRuleSet.java | Regenerated header branding (TypeSpec). |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/IssueType.java | Updates enum documentation text. |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/IpRule.java | Regenerated header branding (TypeSpec). |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/IdentityType.java | Converts to ExpandableStringEnum and updates docs. |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/Identity.java | Regenerated header branding (TypeSpec). |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/HostingMode.java | Updates enum value casing and documentation text. |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/EncryptionWithCmk.java | Regenerated header branding (TypeSpec). |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/DataPlaneAuthOptions.java | Regenerated header branding (TypeSpec). |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/DataPlaneAadOrApiKeyAuthOption.java | Regenerated header branding (TypeSpec). |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/ComputeType.java | Updates enum value casing and documentation text. |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/CheckNameAvailabilityOutput.java | Makes constructor private for output-only model. |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/CheckNameAvailabilityInput.java | Regenerated header branding (TypeSpec). |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/AdminKeyKind.java | Updates enum documentation text. |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/ActionType.java | Doc tweak for extensible enum. |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/AccessRulePropertiesSubscriptionsItem.java | Makes model immutable/output-only; doc changed. |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/AccessRuleProperties.java | Makes model immutable/output-only (removes fluent setters). |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/AccessRuleDirection.java | Updates enum documentation text. |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/AccessRule.java | Makes model immutable/output-only (removes fluent setters). |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/models/AadAuthFailureMode.java | Updates enum documentation text. |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/implementation/models/SharedPrivateLinkResourceListResult.java | Moves pageable result model to implementation.models. |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/implementation/models/SearchServiceListResult.java | Moves pageable result model to implementation.models. |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/implementation/models/QuotaUsagesListResult.java | Moves pageable result model to implementation.models. |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/implementation/models/PrivateLinkResourcesResult.java | Moves pageable result model to implementation.models; adds nextLink. |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/implementation/models/PrivateEndpointConnectionListResult.java | Moves pageable result model to implementation.models. |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/implementation/models/OperationListResult.java | Moves pageable result model to implementation.models. |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/implementation/models/NetworkSecurityPerimeterConfigurationListResult.java | Moves pageable result model to implementation.models; adds required validation/logging. |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/implementation/models/ListQueryKeysResult.java | Moves pageable result model to implementation.models. |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/implementation/UsagesClientImpl.java | Regenerated REST proxy/client impl (host param, paging, signature changes). |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/implementation/SearchManagementClientImpl.java | Regenerated service client implementation (host/api version/subscription wiring, signature changes). |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/implementation/SearchManagementClientBuilder.java | Updates builder params/wiring for regenerated client. |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/implementation/PrivateLinkResourcesClientImpl.java | Regenerated client impl (paging + signature changes). |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/implementation/OperationsClientImpl.java | Regenerated client impl (paging + signature changes). |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/implementation/AdminKeysClientImpl.java | Regenerated client impl (signature/header changes). |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/fluent/package-info.java | Updates fluent package docs to TypeSpec generator branding. |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/fluent/models/package-info.java | Updates fluent models package docs to TypeSpec generator branding. |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/fluent/models/SharedPrivateLinkResourceInner.java | Regenerated header branding (TypeSpec). |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/fluent/models/SearchServiceProperties.java | Updates docstrings to new enum value casing. |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/fluent/models/SearchServiceInner.java | Updates docstrings to new enum value casing. |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/fluent/models/QuotaUsageResultInner.java | Makes inner model immutable/output-only (removes fluent setters). |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/fluent/models/QueryKeyInner.java | Makes constructor private for output-only model. |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/fluent/models/PrivateLinkResourceInner.java | Makes constructor private for output-only model. |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/fluent/models/PrivateEndpointConnectionInner.java | Regenerated header branding (TypeSpec). |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/fluent/models/OperationInner.java | Makes model immutable/output-only; doc tweaks. |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/fluent/models/NetworkSecurityPerimeterConfigurationInner.java | Makes model immutable/output-only (removes fluent setters). |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/fluent/models/AdminKeyResultInner.java | Makes constructor private for output-only model. |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/fluent/UsagesClient.java | Updates fluent interface signatures/docs (removes clientRequestId param). |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/fluent/SearchManagementClient.java | Updates fluent interface (reorders getters, removes clientRequestId param overloads). |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/fluent/QueryKeysClient.java | Updates fluent interface signatures/docs (removes clientRequestId param). |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/fluent/PrivateLinkResourcesClient.java | Updates fluent interface signatures/docs (removes clientRequestId param). |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/fluent/PrivateEndpointConnectionsClient.java | Updates fluent interface signatures/docs (method ordering/signature changes). |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/fluent/OperationsClient.java | Regenerated header branding (TypeSpec). |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/fluent/NetworkSecurityPerimeterConfigurationsClient.java | Updates fluent interface (method ordering/signature changes). |
| sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/fluent/AdminKeysClient.java | Updates fluent interface signatures/docs (removes clientRequestId param). |
| sdk/search/azure-resourcemanager-search/README.md | Bumps dependency version to 2.55.0-beta.1. |
| sdk/search/azure-resourcemanager-search/CHANGELOG.md | Adds 2.55.0-beta.1 entry for migration breaking changes. |
| eng/lintingconfigs/revapi/track2/revapi.json | Adds RevAPI suppressions for expected breaking changes in migration. |
Comments suppressed due to low confidence (7)
sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/implementation/models/SearchServiceListResult.java:35
SearchServiceListResult.toJsoncurrently writes an empty JSON object, dropping bothvalueandnextLink. This makes the model’s JSON serialization incorrect and inconsistent withfromJson. Please includevalueandnextLinkwhen serializing.
sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/implementation/models/ListQueryKeysResult.java:35ListQueryKeysResult.toJsoncurrently writes an empty JSON object, dropping bothvalueandnextLink. This makes the model’s JSON serialization incorrect and inconsistent withfromJson. Please includevalueandnextLinkwhen serializing.
sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/implementation/models/PrivateEndpointConnectionListResult.java:37PrivateEndpointConnectionListResult.toJsoncurrently writes an empty JSON object, dropping bothvalueandnextLink. This makes the model’s JSON serialization incorrect and inconsistent withfromJson. Please includevalueandnextLinkwhen serializing.
sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/implementation/models/SharedPrivateLinkResourceListResult.java:35SharedPrivateLinkResourceListResult.toJsonserializes onlynextLinkand omits thevaluearray. This will produce incorrect JSON for a pageable response model and breaks round-tripping withfromJson. Please include bothvalueandnextLinkintoJson.
sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/implementation/models/PrivateLinkResourcesResult.java:73PrivateLinkResourcesResult.toJsonserializes onlynextLinkand omits thevaluearray. This will produce incorrect JSON for a pageable response model (and breaks round-tripping withfromJson). Please write bothvalueandnextLinkintoJson(consistent with the other list result models).
sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/implementation/models/OperationListResult.java:35OperationListResult.toJsoncurrently writes an empty JSON object, dropping bothvalueandnextLink. This makes the model’s JSON serialization incorrect and inconsistent withfromJson(which reads both fields). Please includevalueandnextLinkwhen serializing.
sdk/search/azure-resourcemanager-search/src/main/java/com/azure/resourcemanager/search/implementation/models/QuotaUsagesListResult.java:35QuotaUsagesListResult.toJsoncurrently writes an empty JSON object, dropping bothvalueandnextLink. This makes the model’s JSON serialization incorrect and inconsistent withfromJson. Please includevalueandnextLinkwhen serializing.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
XiaofeiCao
approved these changes
Mar 12, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Migrate azure-resourcemanager-search SDK from swagger to TypeSpec.
Spec PR: Azure/azure-rest-api-specs#41224
samples is not added, as the generated
SearchManagerdoes not matchSearchServiceManager-- we may solve it by settingservice-name=Search Servicein tspconfig