-
Notifications
You must be signed in to change notification settings - Fork 51
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
[Bug]: should getUnionAsEnum handle extensible boolean? #1162
Labels
Comments
won't fix. Not sure what the user scenario is. |
github-merge-queue bot
pushed a commit
to microsoft/typespec
that referenced
this issue
Oct 10, 2024
## Previous non-string expandable enum implementation - Branded - Swagger(ExpandableStringEnum, serialization having trouble) - TypeSpec(ExpandableStringEnum, serialization having trouble) - Unbranded - ExpandableEnum interface ## After this PR - Branded - Swagger(ExpandableEnum interface implementation, with serialization/deserialization supported) - TypeSpec(ExpandableEnum interface implementation, with serialization/deserialization supported) - Unbranded(untouched, supported) ## Limitations - Only supports string and number extensible enums. - Current TypeSpec doesn't support extensible boolean enum: Azure/typespec-azure#1162 - Current TypeSpec doesn't seem to have literals other than string, number and boolean(I can't make object literals work): #2359 ## About this PR's commits - **TypeSpec code(main purpose)**: 29841a7 - TypeSpec test case in d37d396 - Swagger test case in autorest.java Azure/autorest.java#2953 - Swagger serialization fix: e8454cf - script change for build: 54af0f1 - A minor mapper bug fix: 41673da --------- Co-authored-by: Weidong Xu <[email protected]>
swatkatz
pushed a commit
to swatkatz/typespec
that referenced
this issue
Nov 5, 2024
…osoft#4492) ## Previous non-string expandable enum implementation - Branded - Swagger(ExpandableStringEnum, serialization having trouble) - TypeSpec(ExpandableStringEnum, serialization having trouble) - Unbranded - ExpandableEnum interface ## After this PR - Branded - Swagger(ExpandableEnum interface implementation, with serialization/deserialization supported) - TypeSpec(ExpandableEnum interface implementation, with serialization/deserialization supported) - Unbranded(untouched, supported) ## Limitations - Only supports string and number extensible enums. - Current TypeSpec doesn't support extensible boolean enum: Azure/typespec-azure#1162 - Current TypeSpec doesn't seem to have literals other than string, number and boolean(I can't make object literals work): microsoft#2359 ## About this PR's commits - **TypeSpec code(main purpose)**: 29841a7 - TypeSpec test case in d37d396 - Swagger test case in autorest.java Azure/autorest.java#2953 - Swagger serialization fix: e8454cf - script change for build: 54af0f1 - A minor mapper bug fix: 41673da --------- Co-authored-by: Weidong Xu <[email protected]>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Describe the bug
For typespec, like the below, should we interpret it as an extensible boolean definition?
This is true if we are using the literal number and number types or if we are using the literal string and string types.
Wonder why we handle boolean literal and boolean differently?
In TypeScript, the type infer system will get a boolean
There's also a bug with the typespec-autorest emitter. it will handle the union as an empty object.

Reproduction
playground link
Checklist
The text was updated successfully, but these errors were encountered: