-
Notifications
You must be signed in to change notification settings - Fork 5.1k
Generate .NET SDK for Microsoft.Insights metric alerts 2024-03-01-preview version #53565
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Draft
violetVo
wants to merge
788
commits into
sdk-gen-trigger-metricAlert-preview-2024-03
Choose a base branch
from
main
base: sdk-gen-trigger-metricAlert-preview-2024-03
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
+2,197,576
−1,110,160
Conversation
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
mrm9084
reviewed
Nov 7, 2025
Member
mrm9084
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Update for release
…es (#54653) * Initial plan * Fix parameter name normalization to avoid unnecessary updates Add check to ensure parameter names are only updated when they actually change. This prevents potential issues with XML documentation parameter references when the normalized name equals the current name. Co-authored-by: haiyuazhang <1924967+haiyuazhang@users.noreply.github.com> * Add TypeSpec.Rest using statement to test the fix Applied the suggested spec change from the original issue to validate that the fix prevents XML documentation parameter name mismatches. Co-authored-by: haiyuazhang <1924967+haiyuazhang@users.noreply.github.com> * Fix XML doc parameter mismatch in MockableArmClientProvider Add signature parameter to m.Update() call to force XML documentation regeneration when parameter names are normalized. This ensures XML param tags match the actual parameter names after normalization. Co-authored-by: haiyuazhang <1924967+haiyuazhang@users.noreply.github.com> * Simplify fix: Add MockableArmClientProvider to type check instead Instead of adding guards and manual XML doc updates, simply include MockableArmClientProvider in the OperationMethodParameterHelper type check. This allows parameter normalization to happen during method construction, eliminating the need for post-creation updates. This removes the duplicate normalization logic from MockableArmClientProvider and ensures XML docs are generated with correct parameter names from the start. Co-authored-by: haiyuazhang <1924967+haiyuazhang@users.noreply.github.com> * Revert MockableArmClientProvider to keep file untouched Keep MockableArmClientProvider.cs in its original state with the parameter normalization logic intact. The fix only requires adding MockableArmClientProvider to the type check in OperationMethodParameterHelper.cs, which allows both the original normalization in MockableArmClientProvider and the new one in OperationMethodParameterHelper to coexist without issues. Co-authored-by: haiyuazhang <1924967+haiyuazhang@users.noreply.github.com> * Update comment to include MockableArmClientProvider case Updated the comment on line 72 of OperationMethodParameterHelper.cs to reflect that parameter normalization now applies to MockableArmClientProvider operations in addition to ResourceClientProvider and ResourceCollectionClientProvider. Co-authored-by: haiyuazhang <1924967+haiyuazhang@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: haiyuazhang <1924967+haiyuazhang@users.noreply.github.com>
…#54545) * Initial plan * Add SinglePageListOperationMethodProvider for array response types Co-authored-by: ArcturusZhang <10554446+ArcturusZhang@users.noreply.github.com> * Fix compilation errors and build successfully Co-authored-by: ArcturusZhang <10554446+ArcturusZhang@users.noreply.github.com> * WIP: Update SinglePageListOperationMethodProvider implementation Co-authored-by: ArcturusZhang <10554446+ArcturusZhang@users.noreply.github.com> * Rename class and simplify FooDependency model per review feedback Co-authored-by: ArcturusZhang <10554446+ArcturusZhang@users.noreply.github.com> * Address review feedback - discussion on CollectionResultDefinition approach Co-authored-by: ArcturusZhang <10554446+ArcturusZhang@users.noreply.github.com> * [Generator] Generate Pageable<T> for operations returning array types (WIP - Needs Completion) Co-authored-by: ArcturusZhang <10554446+ArcturusZhang@users.noreply.github.com> * Implement ArrayResponseCollectionResultDefinition class for array response paging Co-authored-by: ArcturusZhang <10554446+ArcturusZhang@users.noreply.github.com> * Address review feedback: simplify naming and fix collection result extraction Co-authored-by: ArcturusZhang <10554446+ArcturusZhang@users.noreply.github.com> * Address minor code style feedback and fix parameter ordering Co-authored-by: ArcturusZhang <10554446+ArcturusZhang@users.noreply.github.com> * Fix ParseArrayFromResponse implementation to properly deserialize JSON arrays Fixed the ParseArrayFromResponse method in ArrayResponseCollectionResultDefinition to correctly parse and deserialize JSON array responses: - Use JsonDocument.Parse with ModelSerializationExtensions.JsonDocumentOptions - Iterate over array.EnumerateArray() using ForEachStatement - Deserialize each element using T.DeserializeT(element, ModelSerializationExtensions.WireOptions) - Return IReadOnlyList<T> of deserialized items The generated collection result classes now compile and function correctly. Co-authored-by: ArcturusZhang <10554446+ArcturusZhang@users.noreply.github.com> * Use ModelReaderWriter.Read with MRWContext (WIP - context reference needs completion) Co-authored-by: ArcturusZhang <10554446+ArcturusZhang@users.noreply.github.com> * Use ModelReaderWriter.Read with context type reference - implementation complete Fixed the ParseArrayFromResponse method in ArrayResponseCollectionResultDefinition to use ModelReaderWriter.Read<T> with MRWContext.Default as requested. The implementation: 1. Added ModelReaderWriterContextTypeName property to ManagementOutputLibrary that computes the context class name following the pattern {NamespaceWithoutDots}Context 2. Updated ArrayResponseOperationMethodProvider to pass the context type name to collection result definition 3. Updated ParseArrayFromResponse to use Literal for context reference: ModelReaderWriter.Read<T>(binaryData, options, {ContextType}.Default) The generator C# code compiles successfully. The emitter build needs to be run separately to test end-to-end generation. Co-authored-by: ArcturusZhang <10554446+ArcturusZhang@users.noreply.github.com> * Fix ModelReaderWriterContext reference per review feedback Implemented all review feedback: 1. Simplified ModelReaderWriterContextType property in ManagementOutputLibrary to use `new ModelReaderWriterContextDefinition().Type` 2. Removed ModelReaderWriterContextTypeName property and helper methods 3. Removed contextTypeName parameter from ArrayResponseCollectionResultDefinition constructor 4. Updated ParseArrayFromResponse to use `Static(ManagementClientGenerator.Instance.OutputLibrary.ModelReaderWriterContextType).Property("Default")` instead of Literal string The implementation now correctly references the ModelReaderWriterContextType through the OutputLibrary static property as requested. Co-authored-by: ArcturusZhang <10554446+ArcturusZhang@users.noreply.github.com> * Regenerate test projects with updated ModelReaderWriter implementation Ran Generate.ps1 script to regenerate test project code after implementing ModelReaderWriterContext.Default changes. The generated collection result classes now use: - `Static(ManagementClientGenerator.Instance.OutputLibrary.ModelReaderWriterContextType).Property("Default")` - `ModelReaderWriter.Read<T>(new BinaryData(...), ModelSerializationExtensions.WireOptions, context.Default)` The test project builds successfully with all array response pageable operations properly generated. Co-authored-by: ArcturusZhang <10554446+ArcturusZhang@users.noreply.github.com> * Use Path.Combine and enclosing type name per review feedback Address review comments: 1. Use Path.Combine for building the relative file path instead of string interpolation 2. Use enclosing type name (e.g., "FooResource") instead of REST client name (e.g., "Foos") in the generated collection result class name This ensures the generated class names follow the pattern: {EnclosingType}{MethodName}CollectionResultOfT For example: FooResourceGetDependenciesAsyncCollectionResultOfT instead of FoosGetDependenciesAsyncCollectionResultOfT Co-authored-by: ArcturusZhang <10554446+ArcturusZhang@users.noreply.github.com> * Regenerate test projects with updated enclosing type naming Ran Generate.ps1 script to regenerate test projects after implementing the enclosing type name change. The generated collection result classes now use the correct naming pattern: - FooResourceGetDependenciesAsyncCollectionResultOfT (async version) - FooResourceGetDependenciesCollectionResultOfT (sync version) Instead of the previous: - FoosGetDependenciesAsyncCollectionResultOfT - FoosGetDependenciesCollectionResultOfT The test project builds successfully with all changes. Co-authored-by: ArcturusZhang <10554446+ArcturusZhang@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: ArcturusZhang <10554446+ArcturusZhang@users.noreply.github.com> Co-authored-by: Arcturus Zhang <dapzhang@microsoft.com>
The focus of these changes is to remove an owner being flagged by the linter as no longer valid.
…uter Pro change log (#54676)
Co-authored-by: Ubuntu <cloudtest@cc901ea2c00000B.tkkhlgj2u51eln3mcb0lygmbye.dx.internal.cloudapp.net>
Co-authored-by: ArcturusZhang <10554446+ArcturusZhang@users.noreply.github.com> Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
* update tsp-location.yaml * regen * regen * regen * export api * update spec commit id and regen
* MPG migration - purestorageblock * MPG migration - purestorageblock * update commit id in tsp-location.yaml * update spec commit id and regen
* update tsp-location.yaml * update spec commit id and regen
Co-authored-by: ArcturusZhang <10554446+ArcturusZhang@users.noreply.github.com> Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: Arcturus Zhang <dapzhang@microsoft.com>
…s API migration (#54698) Co-authored-by: ArcturusZhang <10554446+ArcturusZhang@users.noreply.github.com> Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: Arcturus Zhang <dapzhang@microsoft.com>
…alpha.20260121.1 (#55156) * Regenerate repository SDK with TypeSpec build 20260121.1 * Update SDK code ea_lo_2 * Update SDK code ad_co_0 * fix suppressions * regen --------- Co-authored-by: jolov <jolov@microsoft.com>
* first pass on updating AOT CI * clean up repo refs in ci files * more yml updates * script updates * fix script * more updates * try fixing yaml * debugging * initial feedback * update parameter * attempt to delete PR script * another clean up * fix attempt * another attempt * another attempt * debugging statement * attempt using pwsh * another attempt * Apply suggestions from code review Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * feedback * feedback 2 --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
…ient (#55135) * Disable retries for HttpClientFactory in MsalConfidentialClient and MsalPublicClient * Add tests * Add changelog entry
The focus of these changes is to take a direct reference to `System.Text.Json` to hoist the transitive dependency from `CloudNative.CloudEvents.SystemTextJson`, as the referenced version (STJ 8.0.4) has a known vulnerability.
….0.0-alpha.20260121.1 (#55154) * Regenerate repository SDK with TypeSpec build 20260121.1 * Update SDK code ea_lo_2
…ed by ARM library (#55144) * Initial plan * Initial plan for improving resolveArmResources post step Co-authored-by: live1206 <5196139+live1206@users.noreply.github.com> * Improve resolveArmResources post step to detect missing operations Co-authored-by: live1206 <5196139+live1206@users.noreply.github.com> * Address code review feedback: remove unused import and use proper type Co-authored-by: live1206 <5196139+live1206@users.noreply.github.com> * Remove unnecessary blank line Co-authored-by: live1206 <5196139+live1206@users.noreply.github.com> * Extract getAllSdkClients to avoid circular dependency and remove unnecessary type cast Co-authored-by: live1206 <5196139+live1206@users.noreply.github.com> * Remove unused imports to fix linter errors Co-authored-by: live1206 <5196139+live1206@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: live1206 <5196139+live1206@users.noreply.github.com>
…ons (#55176) * Initial plan * Implement delete operation method naming logic with tests Co-authored-by: live1206 <5196139+live1206@users.noreply.github.com> * Fix trailing whitespace in ResourceClientProvider Co-authored-by: live1206 <5196139+live1206@users.noreply.github.com> * Address code review feedback: improve logic clarity and performance Co-authored-by: live1206 <5196139+live1206@users.noreply.github.com> * Extend operation path check to Get and List operations Co-authored-by: live1206 <5196139+live1206@users.noreply.github.com> * Address code review feedback: improve clarity and add missing test coverage Co-authored-by: live1206 <5196139+live1206@users.noreply.github.com> * Consolidate GetOperationMethodName tests using TestCase attributes Co-authored-by: live1206 <5196139+live1206@users.noreply.github.com> * Remove obsolete IsDeletingCurrentResource method and redundant tests Co-authored-by: live1206 <5196139+live1206@users.noreply.github.com> * Revert generator changes per architectural review feedback Co-authored-by: live1206 <5196139+live1206@users.noreply.github.com> * Convert moved operations to Action kind in emitter Co-authored-by: live1206 <5196139+live1206@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: live1206 <5196139+live1206@users.noreply.github.com>
…del (#55149) * Initial plan * Fix OperationSource generation to create separate instances for resources sharing the same model Co-authored-by: live1206 <5196139+live1206@users.noreply.github.com> * Fix trailing whitespace and verify generated code builds Co-authored-by: live1206 <5196139+live1206@users.noreply.github.com> * Apply code review feedback: optimize with Any() and TryAdd() Co-authored-by: live1206 <5196139+live1206@users.noreply.github.com> * Add test to verify multiple resources sharing same data model generate separate OperationSources Co-authored-by: live1206 <5196139+live1206@users.noreply.github.com> * Fix trailing whitespace on line 144 Co-authored-by: live1206 <5196139+live1206@users.noreply.github.com> * Remove incomplete issue link from test comment Co-authored-by: live1206 <5196139+live1206@users.noreply.github.com> * Fix test failure by providing unique crossLanguageDefinitionId for each method Co-authored-by: live1206 <5196139+live1206@users.noreply.github.com> * Fix build error by removing invalid crossLanguageDefinitionId parameters Co-authored-by: live1206 <5196139+live1206@users.noreply.github.com> * Fix duplicate key error by using single client with multiple decorators Co-authored-by: live1206 <5196139+live1206@users.noreply.github.com> * Remove test due to test infrastructure limitations Co-authored-by: live1206 <5196139+live1206@users.noreply.github.com> * Update InputFactory to use unique GUIDs for method IDs and restore test Co-authored-by: live1206 <5196139+live1206@users.noreply.github.com> * Update mgmt InputFactory to use unique GUIDs for method IDs Co-authored-by: live1206 <5196139+live1206@users.noreply.github.com> * fix test failure --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: live1206 <5196139+live1206@users.noreply.github.com> Co-authored-by: Wei Hu <huwe@microsoft.com>
* Initial plan * Refactor post-processing to use shared function - Extract common post-processing logic into postProcessArmResources function in resource-metadata.ts - Update resolveArmResources to use shared post-processing - Update buildArmProviderSchema to use shared post-processing - Remove duplicate canBeListResourceScope and buildArmProviderSchemaFromDetectedResources functions - All tests passing Co-authored-by: live1206 <5196139+live1206@users.noreply.github.com> * Address code review feedback - Optimize validResourceMap to build once instead of per call - Replace non-null assertion with explicit null check for safety - All tests passing Co-authored-by: live1206 <5196139+live1206@users.noreply.github.com> * Fix linter errors - Remove unused sortResourceMethods import from resolve-arm-resources-converter.ts - Remove unused sortResourceMethods import from resource-detection.ts - Remove unused variable '_' from resource-detection.ts loop Co-authored-by: live1206 <5196139+live1206@users.noreply.github.com> * Address code review comments - Use metadataKeyToResource map to optimize resource name lookup (O(n) vs O(n²)) - Restore diagnostic messages for resources without resourceIdPattern - Restore diagnostic messages for non-singleton resources without Read operations - Fix unused variable linter warning Co-authored-by: live1206 <5196139+live1206@users.noreply.github.com> * Merge from main and integrate Action kind conversion Resolved merge conflict by: - Kept our refactored code structure (shared post-processing) - Integrated the Action kind conversion logic from main into postProcessArmResources() - When operations are moved to parent resources, they are now converted to Action kind to avoid naming conflicts Co-authored-by: live1206 <5196139+live1206@users.noreply.github.com> Co-authored-by: live1206 <5196139+live1206@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: live1206 <5196139+live1206@users.noreply.github.com> Co-authored-by: Wei Hu <live1206@gmail.com>
Co-authored-by: Alitzel Mendez <almend@microsoft.com>
….0.0-alpha.20260122.3 (#55189) * Regenerate repository SDK with TypeSpec build 20260122.3 * Update SDK code mo_re_3
…4880) Co-authored-by: ArcturusZhang <10554446+ArcturusZhang@users.noreply.github.com> Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: Arcturus Zhang <dapzhang@microsoft.com>
…55212) * Handle the scenario of key is variable in conceptual parameter * Add UT
….0.0-alpha.20260123.1 (#55213) * Regenerate repository SDK with TypeSpec build 20260123.1 * Update SDK code mo_re_3
…55208) * Add new section for FIC * Update sdk/identity/Azure.Identity/TROUBLESHOOTING.md Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Fix malformed HTML --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* fix script call * fb * Update eng/pipelines/templates/steps/aot-compatibility.yml Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Scott Beddall <scbedd@microsoft.com>
… Azure SDKs (#55202) Co-authored-by: Sameeksha Vaity <savaity@microsoft.com>
* Bump version of Azure.ClientSdk.Analyzers * update violation of AZC0012
Bumps the npm_and_yarn group with 1 update in the /eng/common/tsp-client directory: [tar](https://github.com/isaacs/node-tar). Updates `tar` from 7.4.3 to 7.5.3 - [Release notes](https://github.com/isaacs/node-tar/releases) - [Changelog](https://github.com/isaacs/node-tar/blob/main/CHANGELOG.md) - [Commits](isaacs/node-tar@v7.4.3...v7.5.3) Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* l:wqHead request support * update * update generated code * update test record * update * update * update * update api * update * update * update * update
* update tsp-location.yaml * update commit id in tsp-location.yaml * wip * wip * MPG migration - selfhelp * WIP * WIP * WIP * WIP * WIP * WIP * WIP * restore test * WIP * WIP * WIP * WIP * WIP * WIP * WIP * WIP * WIP * fix test * ready for review * refine * export api * update commit id in tsp-location.yaml * clean up
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
AI Model Inference
AI Projects
Client
This issue is related to a non-management package
CodeGen
Issues that relate to code generation
Event Grid
Health Deidentification
Image Analysis
KeyVault
Mgmt
This issue is related to a management package.
Monitor - Query
Provisioning
Schema Registry
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.
Contributing to the Azure SDK
Please see our CONTRIBUTING.md if you are not familiar with contributing to this repository or have questions.
For specific information about pull request etiquette and best practices, see this section.