-
Notifications
You must be signed in to change notification settings - Fork 9
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
Default Client Options #220
Comments
Thanks for starting the conversation on this one. Ideally self-serve consumers would get the same initialization experience as pre-packaged ones, while keeping a similar experience for the Tasks and other benefits from Graph core. This takes a couple of pre-requisites:
While I've created an issue for the first part, I believe the last 2 items should be part of public documentation (like a tutorial to get their own client in any language, as well as a topic that explain the value of doing so). |
CC @sebastienlevert since this is something we'll need to drive across languages |
Linking microsoftgraph/msgraph-sdk-dotnet-core#712 as well to bring to the surface parallel issue on C#. |
So my thoughts on this one. Self-serve should act as the "smaller" version of any of our SDK. That means that we should have the EXACT same experience, just without all the API surface. Any "core" libraries should be part of That way the experience is the following:
This should also work in the plain Kiota world if developers want to handle everything themselves. |
light SDK: do you mean just the two classes we've handcrafted in the service libs? Or do you mean that + all the models? |
Just the classes we handcrafted in the SDKs. And identify how we could "plug-in" the rest of the generated code to this "light" version of the SDK? This would be the best case scenario IMO. But this might be non-feasible and very complex for the scenario. |
At least for one of them we can't as it derives from the generated client |
So we leave this to the developer to build both the request adapters and the clients? Is this what I understand from this? |
this is where having examples or even snippets (dotnet templates, yoman generators, etc...) would help close the loop. But in essence yes. |
This is going to be an area where we really need to excel in documenting this. We can't leave that to the developer without any hand holding. |
I used Kiota to generate a customized Go client library targeting the Graph API and have added the Graph Go core library to my project.
When creating a new GraphRequestAdapter the clientOptions is required, forcing users to creating their own clientOptions what might be a strange scenario since the clientOption is used to inject telemetry data around SDK versioning.
Expected:
We should have a default client option where we set up the core library values as default, so when creating a new adapter, the core version will be sent to out telemetry.
The text was updated successfully, but these errors were encountered: