-
Notifications
You must be signed in to change notification settings - Fork 1.3k
[synapse-artifacts] Update SynapseArtifacts with latest Swagger changes #14669
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
Conversation
chradek
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.
Seeing so many any fields in the API hurts, but I understand that work is being done on that and this is a beta.
I really like the interface generation going on, is that on in autorest by default?
| bucketName: any; | ||
| key?: any; | ||
| prefix?: any; | ||
| version?: any; | ||
| modifiedDatetimeStart?: any; | ||
| modifiedDatetimeEnd?: any; |
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.
Are these really any types, or are these the oneOf types you mentioned in your post? Some things like bucketName, key, prefix, and even version I wouldn't expect to be anything other than a string.
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.
Talked with @joheredi offline. These are oneOf types that will eventually be modeled as string | Foo (expression?)
I'd still like to understand what the expression would look like for these types but given this is a preview and autorest is making improvements on how to model these, I don'tt think this is blocking.
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.
Thanks @chradek! For context here is some information on what this expression is:
Azure/azure-rest-api-specs#12924 (comment)
| this.workspaceGitRepoManagement = new WorkspaceGitRepoManagement(this); | ||
| this.linkedService = new LinkedServiceImpl(this); | ||
| this.dataset = new DatasetImpl(this); | ||
| this.pipeline = new PipelineImpl(this); |
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.
@xirzec
Just thought you'd be interested...would this clash horribly with how you plan to expose the corev2 pipelines in clients? (Did we decide on just a field called pipeline or a different strategy?
| import { BigDataPoolsListResponse, BigDataPoolsGetResponse } from "../models"; | ||
|
|
||
| /** Interface representing a BigDataPools. */ | ||
| export interface BigDataPools { |
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.
Oh cool, you're essentially generating interfaces for clients now? That is new right?!
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.
Yup @sarangan12 took on this change! We no longer need to expose the operation classes 😄
Co-authored-by: chradek <51000525+chradek@users.noreply.github.com>
Synapse is an autogenerated SDK with no convenience layer. This PR includes:
Details on the new Swagger:
One of the main Swagger changes was an update to several types to
anythe reason behind this is that Autorest currently doesn't have a way to representoneOfto indicate 2 possible types for inputs.Once Autorest supports this we should see this updated to
string | Fooinstead of anyThis is also reflecting some Typescript codegen changes to export operations interfaces instead of concrete classes.
/cc: @lmazuel