Azure SDK version bump introduced regression in token refresh · Issue #23036 · vectordotdev/vector · GitHub
More Web Proxy on the site http://driver.im/
You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
It's worth noting, however, that 0.22.0 introduces its own regression - namely, the removal of EnvironmentCredential from DefaultAzureCredential. In 0.17.0 as well as 0.18.0 through 0.21.0, the first method attempted by DefaultAzureCredential was EnvironmentCredential (see eg https://docs.rs/azure_identity/0.17.0/azure_identity/struct.DefaultAzureCredential.html). However, in 0.22.0, EnvironmentCredential has been removed altogether, and is therefore no longer included in the list of methods that DefaultAzureCredential will try. In any case, upgrading to 0.22.0 is complicated by the fact that the related azure_storage crate, which Vector also uses, does not have any version newer than 0.21.0 due to a shift in Microsoft priorities: Microsoft is developing the official Azure SDK for Rust crates and has no plans to update this unofficial crate. - while it is possible to handle this with some kludges to shim between the 0.21.0 and 0.22.0 versions of azure_core classes, the result is pretty ugly and in any case doesn't fully work due to the missing EnvironmentCredential class.
Probably the easiest short term solution is to revert the azure version bumps introduced in 0085246 or at least stick with 0.19.0 as the highest supported version for now.
Thank you for the detailed report. We have a true dependency hell situation here.
Probably the easiest short term solution is to revert the azure version bumps introduced in 0085246 or at least stick with 0.19.0 as the highest supported version for now.
Agreed that this is the easiest fix. I will prep a PR.
A note for the community
Problem
Vector 0.46.0 bumped Azure SDK from 0.17.0 to 0.21.0 here: 0085246
However, this introduced a regression transitively from Azure SDK version 0.20.0 that wasn't fixed until 0.22.0:
It's worth noting, however, that 0.22.0 introduces its own regression - namely, the removal of EnvironmentCredential from DefaultAzureCredential. In 0.17.0 as well as 0.18.0 through 0.21.0, the first method attempted by DefaultAzureCredential was EnvironmentCredential (see eg https://docs.rs/azure_identity/0.17.0/azure_identity/struct.DefaultAzureCredential.html). However, in 0.22.0, EnvironmentCredential has been removed altogether, and is therefore no longer included in the list of methods that DefaultAzureCredential will try. In any case, upgrading to 0.22.0 is complicated by the fact that the related azure_storage crate, which Vector also uses, does not have any version newer than 0.21.0 due to a shift in Microsoft priorities:
Microsoft is developing the official Azure SDK for Rust crates and has no plans to update this unofficial crate.
- while it is possible to handle this with some kludges to shim between the 0.21.0 and 0.22.0 versions of azure_core classes, the result is pretty ugly and in any case doesn't fully work due to the missing EnvironmentCredential class.Probably the easiest short term solution is to revert the azure version bumps introduced in 0085246 or at least stick with 0.19.0 as the highest supported version for now.
Long-term, the ideal would probably be to do the presumably large refactor to switch from azure_core/azure_identity/azure_storage et al to eg https://docs.rs/crate/azure_storage_blob/latest (the full set of crates can be found at https://azure.github.io/azure-sdk/releases/latest/index.html#rust) - however it is explicitly marked as not suitable for Production at the moment.
Configuration
Version
0.46.1
Debug Output
Example Data
No response
Additional Context
No response
References
No response
The text was updated successfully, but these errors were encountered: