Open mikekistler opened 2 years ago
Is this possibly solved by adding a "service version" column to this table: https://azure.github.io/azure-sdk/releases/latest/ where each library has a list of (or maybe just the latest) version(s) supported by a given sdk library.
I think that is a piece of the solution. Then we need to check that latest version supported by the client library against the latest version supported by the service, and raise an alert when these diverge for longer than say a couple weeks.
@mikekistler lets chat more about this on our sync-up this week as I agree we need to figure out how to detect this but it is a matter of where the right place is to put in those checks.
While we should do this anyway, this explicit discussion started b/c of this issue the field raised: https://dev.azure.com/unifiedactiontracker/Technical%20Feedback/_workitems/edit/71540
@ladonnaq and @ccbarragan for the dashboard requirements
@maririos @konrad-jamrozik I am working on cleaning up the backlog to prepare for next semester. I have a few questions about this issue and ideas.
Is there something in place to remind a service team when the PR is merged that they need to now access the release plan to use the SDK release milestone app to guide them through the release of the SDKs? If they use the SDK release milestone app it will guide them thru the process and ensure the new SDK version is released.
Is the automation (bot whatever) running a check the latest refresh of the SDK against the latest PR that merges
That I am aware of, we don't have automation that has data to check API spec published version and API spec used in SDK repo. This would be a greater effort. Today I saw this: https://github.com/Azure/azure-sdk/issues/1198 which touches on what you are asking
@ladonnaq, what @maririos said :)
In my mind, conceptually, we distinguish two scenarios:
In case of 1. for now I believe we could continue making sure that the release planner knows about the PR, but the PR does not know about the release planner, at all.
In case of 2., as @maririos said, we could, as just one idea, design some kind of capability where the specs PR says something to the effect of "hey PR author, I see you created me without using release planner. Are you suuuuuure this is what you want to do?". I would have hard time prioritizing such kind of work any time soon, unfortunately.
I am working on the extended roadmap for the engagement experience. I want to determine if this requirement should be added to the roadmap.
@sandeep-sen - Is this requirement associated with the work you were doing to determine the freshness of the SDKs and reach out to service partners to have them release new SDK versions?
@ronniegeraghty - How is the inventory dashboard determine freshness? If the data is obtained programmatically, we could ingest the data into the engagement experience dataverse and link the data with the service & product. Then from there we can decide how to make actionable. For example, we could extend the Service Partner dashboard to include a view for of actions for "SDKs need refreshed".
@ronniegeraghty - How is the inventory dashboard determine freshness? If the data is obtained programmatically, we could ingest the data into the engagement experience dataverse and link the data with the service & product. Then from there we can decide how to make actionable. For example, we could extend the Service Partner dashboard to include a view for of actions for "SDKs need refreshed".
It's a little arbitrary. The freshness in the inventory dashboard is the number of days since the last release. The hope was to have it represent something like what is being discussed here. Are the SDKs not in sync with the API Spec. But there was no existing mapping between Spec versions and library versions for the dashboard to tap into.
[like] LaDonna Quinn reacted to your message:
From: Ronnie Geraghty @.> Sent: Wednesday, July 17, 2024 4:36:40 PM To: Azure/azure-sdk-tools @.> Cc: Comment @.>; Assign @.> Subject: Re: [Azure/azure-sdk-tools] Develop tooling / dashboard to measure / report "freshness" of client libraries (Issue #3303)
@ronniegeraghtyhttps://github.com/ronniegeraghty - How is the inventory dashboard determine freshness? If the data is obtained programmatically, we could ingest the data into the engagement experience dataverse and link the data with the service & product. Then from there we can decide how to make actionable. For example, we could extend the Service Partner dashboard to include a view for of actions for "SDKs need refreshed".
It's a little arbitrary. The freshness in the inventory dashboard is the number of days since the last release. The hope was to have it represent something like what is being discussed here. Are the SDKs not in sync with the API Spec. But there was no existing mapping between Spec versions and library versions for the dashboard to tap into.
— Reply to this email directly, view it on GitHubhttps://github.com/Azure/azure-sdk-tools/issues/3303#issuecomment-2233734384 or unsubscribehttps://github.com/notifications/unsubscribe-auth/AQEFYORQKUMUME7TZNW2GP3ZM2MRTBFKMF2HI4TJMJ2XIZLTSSBKK5TBNR2WLJDUOJ2WLJDOMFWWLO3UNBZGKYLEL5YGC4TUNFRWS4DBNZ2F6YLDORUXM2LUPGBKK5TBNR2WLJDUOJ2WLJDOMFWWLLTXMF2GG2C7MFRXI2LWNF2HTAVFOZQWY5LFUVUXG43VMWSG4YLNMWVXI2DSMVQWIX3UPFYGLAVFOZQWY5LFVI2DEOBVGA2DKNBXGGSG4YLNMWUWQYLTL5WGCYTFNSWHG5LCNJSWG5C7OR4XAZNMJFZXG5LFINXW23LFNZ2KM5DPOBUWG44TQKSHI6LQMWVHEZLQN5ZWS5DPOJ42K5TBNR2WLKJRG4YDKOJSGE4DNAVEOR4XAZNFNFZXG5LFUV3GC3DVMWVDCMRTGAYTINRYGAZYFJDUPFYGLJLMMFRGK3FFOZQWY5LFVI2DEOBVGA2DKNBXGGTXI4TJM5TWK4VGMNZGKYLUMU. You are receiving this email because you commented on the thread.
Triage notifications on the go with GitHub Mobile for iOShttps://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Androidhttps://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
In the last 24 hours, both @josefree and @lmazuel have come across teams that released new API versions but did not release corresponding SDK libraries. We need to both prevent this as well as catch it after the fact (as there's a lot of clean up we're probably going to need to do with teams).
A service team must request an update to client libraries when it releases new features, but if it fails to do so then customers cannot access the new features using the client libraries. We should monitor the "freshness" of client libraries to ensure that whenever the service API is updated the client library is also updated to support this new version.