Skip to content

Fixed an issue related to header response and added three new test cases#1524

Merged
dolauli merged 2 commits into
Azure:mainfrom
dolauli:tsp-brown
Sep 28, 2025
Merged

Fixed an issue related to header response and added three new test cases#1524
dolauli merged 2 commits into
Azure:mainfrom
dolauli:tsp-brown

Conversation

@dolauli

@dolauli dolauli commented Sep 28, 2025

Copy link
Copy Markdown
Contributor

This pull request introduces a comprehensive set of new TypeSpec files and configuration enhancements for the ElasticSan resource provider, focusing on improved ARM resource modeling, client generator customization, and operation handling. The changes include new resource definitions for ElasticSan, VolumeGroup, Volume, Snapshot, and PrivateEndpointConnection, alongside extensive use of decorators for client naming, property flattening, and operation grouping to support both ARM and client SDK generation scenarios.

Resource Modeling and Operations

  • Added new TypeSpec definitions for ElasticSan, VolumeGroup, Volume, Snapshot, and PrivateEndpointConnection, each with detailed ARM resource operations (CRUD, list, custom actions) and property constraints/documentation. [1] [2] [3] [4] [5]
  • Introduced custom operation parameters and headers for advanced scenarios, such as soft delete, force delete, and filtering, with appropriate suppression and documentation. [1] [2]

Client Generator and SDK Customization

  • Added client.tsp and back-compatible.tsp files to control client SDK generation, including custom client names, alternate types, property flattening, and operation grouping for C# and Go SDKs. [1] [2]
  • Applied decorators for operation grouping (@@clientLocation) to ensure consistent SDK output and maintain compatibility with legacy clients. [1] [2]

ARM and Metadata Handling

  • Incorporated ARM-specific decorators and suppressions to handle envelope properties, inheritance, and metadata inclusion/exclusion for resource models, aligning with ARM best practices and emitter requirements. [1] [2] [3]

Operation and Protocol Logic

  • Updated response header removal logic in convertor.ts to conditionally remove LRO headers only for polling responses with status codes 202 or 201, improving protocol compliance.

Documentation and Constraints

  • Added detailed documentation and constraints (min/max length, regex patterns) for resource names and properties, ensuring strong validation and clarity in generated specifications. [1] [2] [3] [4]

References:
[1] [2] [3] [4] [5] [6] [7] [8]

@dolauli
dolauli merged commit 1550e4c into Azure:main Sep 28, 2025
101 of 103 checks passed
@dolauli
dolauli deleted the tsp-brown branch September 28, 2025 06:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant