Skip to content
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

Binder models tcgc #2759

Open
wants to merge 95 commits into
base: main
Choose a base branch
from
Open

Binder models tcgc #2759

wants to merge 95 commits into from

Conversation

joheredi
Copy link
Member

@joheredi joheredi commented Aug 19, 2024

Summary of Changes in this PR

  1. use binder to manage model references
  2. deserializer support. fixes Fill in gaps for Deserialization #2625
  3. refactor of the operation helper in both serialization and deserialization. partially fix Serialization Followup work #2619 combine the previous serializeUtils/deserializer logic with serializer/deserializer.
  4. sdkPackage.models related adoption. Implement TCGC's SdkPackage types #2406
  5. client initialization adoption fixes Support client-level parameter defined @clientInitialization #2795
  6. use tcgc generated name for anonymous model
  7. rename RLC context name with tcgc client name.
  8. stop normalize the property name Should we cast property name automatically in modular? #2645
  9. refactor of all unit test to take options parameter instead of introducing long signature list.
  10. modular models for multiclient support. fixes revisit modular models generation in multi clients #2611
    a. generate one copy of models outside of the subclient folder of multi-client case.
    b. move operation options inside the api folder.

TCGC related issues

  1. [Bug]: should we have apiVersion lifted to client initialization if not all operation has this parameter? typespec-azure#1595
  2. [Bug]: EnumMember type as a clientDefaultValue? typespec-azure#1598
  3. [Bug]: Discriminated subtype is missing in models from sdkPackages  typespec-azure#1605
  4. [Bug]: fail to extract clientDefaultValue for apiVersion in server  typespec-azure#1608

TODOs

  1. fix unreferenced _xxx imports

@qiaozha qiaozha self-assigned this Aug 28, 2024
import { NetworkAnalyticsContext as Client } from "../index.js";
import {
StreamableMethod,
operationOptionsToRequestParameters,
PathUncheckedResponse,
createRestError,
} from "@azure-rest/core-client";
import {
_DataProductListResult,
Copy link
Member

Choose a reason for hiding this comment

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

need to check why we didn't remove those unused imports?

packages/typespec-ts/src/modular/emit-models.ts Outdated Show resolved Hide resolved
AccountSas,
AccountSasToken,
KeyVaultInfo,
RoleAssignmentCommonProperties,
RoleAssignmentDetail,
ListRoleAssignments,
_DataProductListResult,
_DataTypeListResult,
_DataProductsCatalogListResult,
_OperationListResult,
Copy link
Member

Choose a reason for hiding this comment

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

still need to investigate why this is imported however not being used.

packages/typespec-ts/src/index.ts Outdated Show resolved Hide resolved
@qiaozha qiaozha marked this pull request as ready for review September 30, 2024 07:34
@@ -439,6 +455,10 @@ export interface NetworkAnalyticsClientOptionalParams extends ClientOptions {
apiVersion?: string;
}

// @public (undocumented)
Copy link
Member

Choose a reason for hiding this comment

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

docs missing.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
2 participants