[Unofficial] Azure SDK for Rust

Overview

[Unofficial] Azure SDK for Rust

This repository is for the development of the unofficial Azure SDK for Rust. It is unofficial because it is not yet supported by Azure Support or the Azure SDK team. It has been built primarily by volunteers on their own time. For more information, see the project history or FAQs:

  • When will the crates be published to crates.io?
  • How do we build a case for making it official?

Crates

SDK

These crates are available from in (sdk):

  • azure_core
  • azure_identity
  • azure_cosmos
  • azure_storage
  • azure_security_keyvault

Services

More than 200 Azure service crates are available in services. They are generated from the Azure REST API Specifications.

Status

🚨 🚨 🚨 WARNING: This project is currently under very active development. 🚨 🚨 🚨

This projects' crates have yet to released to crates.io so in order to use them you will need to specify them as git dependencies. You should be aware that large, breaking changes can happen at any time, and thus it's not yet recommended to use these crates in any serious capacity yet.

Additionally, this project is the logical successor to the previous Azure SDK crates found under github.com/MindFlavor/AzureSDKForRust. The crates have been renamed, so those older crates should be considered fully deprecated.

Project Structure

Each supported Azure service is its own separate crate. If a particular service provides logically separate sub-services (e.g., Azure Storage offers blob, queue, and table storage), these are exposed as cargo features of the service's crate.

Building each crate should be as straight forward as cargo build, but check each crate's README for more specific information.

Mock testing framework

This library comes with a testing framework that executes against prerecorded sessions to quickly validate code changes without incurring in Azure costs. You can read more about it in the Mock testing framework's README.

Contributing

This project welcomes contributions and suggestions. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.opensource.microsoft.com.

When you submit a pull request, a CLA bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., status check, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.

This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact [email protected] with any additional questions or comments.

Comments
  • [datalake] Add DirectoryClient and FileClient

    [datalake] Add DirectoryClient and FileClient

    In this PR I hope to finish migration of existing operations and add some more related ones.

    There are some slight changes to current patterns in the hopes to address some of what I gathered from discussions in this repo as well as some thoughts collected while implementing prior changes.

    From what I understand in many ways C# often serves as reference implementation for SDKs. As over there I introduced a DirectoryClient and FileClient rather than having file operations live on the FileSystemClient. Not sure if other crates do this as well, but since the file and directory operations all work against the same same REST Api route, I opted for having one operation that supports all options for the specific route and using the builder for multiple operations on multiple clients. Main motivation is to avoid the significant code duplication and reduce maintenance effort.

    opened by roeap 18
  • Storage Table Paging

    Storage Table Paging

    I can't seem to find a sensible way to page storage table query results.

    There isn't an obvious way (to me) to create a Continuation at a given point, nor does there appear to be a good way to serialize a Continuation. I would like to provide a simple RESTful API that offers a single string next that can be given to the API again to continue a query. This SDK doesn't appear to let me do that.

    I'm not all that good at rust yet, but I think what I want is for Continuation to implement the traits ToString and FromStr, so that I can simply return a string to the API caller that they can pass back to me for the next page.

    data plane storage_tables core 
    opened by Alexei-B 18
  • Operation Builder Future

    Operation Builder Future

    coauthored with @yoshuawuyts

    This is a proposal for a new one style of API for operations that eliminates some of the awkwardness of usage without reducing the functionality.

    Summary

    Operations now return "builders" which implement an into_future method (more of this later) that turns the builder into a future which can be awaited with await and yields a response. These builders provide setter methods for any options as well as a way to set a Context object.

    Currently

    collection_client
                .create_document(
                    my_context,
                    &document_to_insert,
                    CreateDocumentOptions::new().is_upsert(true),
                )
                .await?;
    

    After this PR

    collection_client
                .create_document(&document_to_insert)
                .is_upsert(true) // if the default is desired this line can be removed
                .context(my_context) // if no context is needed, this line can be removed
                .into_future() // more of this below
                .await?;
    

    into_future

    Currently, when the code some_value.await is called, Rust desugars this to a direct call to the poll function on Future. However, there is an accepted RFC and implementation that changes this desugaring to call the currently unstable IntoFuture::into_future. When this lands on stable Rust, we will be able to remove the need for calling into_future() as the call to await will call into_future automatically.

    The builder pattern

    The builder pattern presented here is very common (and is in fact what the Azure SDK for Rust used before the pipeline architecture). Here are examples of it being used in the most popular HTTP crates for Rust:

    Thoughts?

    cc @JeffreyRichter @heaths

    I also just saw @JeffreyRichter's comment on requiring Context. That doesn't change this proposal too much, it would just mean keeping context as the first argument to every operation.

    opened by rylev 16
  • x-ms-enum support

    x-ms-enum support

    As per: https://github.com/Azure/azure-sdk-for-rust/issues/413

    I implemented the improved naming of enums and values (where provided). I have not implemented anything to support the modelAsString option. Let me know if you think we need this.

    I also added doc comments for enums. Let me know if you don't want this!

    Example diff of before/after from KeyChain: 5dcb8a8a-eb6c-4868-8564-38bd286458de

    Example diff showing RoleScope definition, as per the issue example: 7cb39b63-1061-4bba-b316-8f8ec52325ae

    services 
    opened by johnbatty 15
  • Make package names consistent with official Azure SDKs

    Make package names consistent with official Azure SDKs

    When not idiomatic, our guidelines state we should be consistent. That includes package names. While our statically-typed languages tend to favor a name in the package name e.g. (.NET) Azure.Security.KeyVault.{Keys, Secrets, Certificates, Administration}, our JavaScript and Python packages do not. So far, we seem to have more in common with Python packages, hence I recommend a pattern like so:

    • azure_key_vault -> azure_keyvault (or azure_security_keyvault)
    • azure_service_bus -> azure_sevicebus (or azure_messaging_servicebus)
    • azure_event_grid -> azure_eventgrid (or azure_messaging_eventgrid)

    If we were to use topic names, that would be the values in parens. Personally I like the brevity of Python (and JS, which uses @azure/keyvault for example), but wanted to open the discussion.

    /cc @JeffreyRichter

    discussion 
    opened by heaths 15
  • [Cosmos] Migrate get_attachment operation to pipeline architecture

    [Cosmos] Migrate get_attachment operation to pipeline architecture

    Moving get_attachment to pipeline architecture.

    Continuing #290

    I am pretty new to rust and wanted to get my hands on something real. Let me know if I've made any mistakes! I have tried to use previous migration examples as much as I can.

    cosmos ready for review 
    opened by TheeGreenBee 14
  • Request builders should be more rusty

    Request builders should be more rusty

    Currently the client builders are not very rust-y and they also enforce parameters at compile time. The latter is more cosmetic, but makes things less verbose. The latter leads to odd compilation errors that will likely frustrate the type of user consuming this crate (most likely an application developer).

    A concrete example of making this more rusty.

    Current:

    cosmos_client
        .query_documents()
        .with_query(&Query::new(&query))
        .with_query_cross_partition(true)
        .with_parallelize_cross_partition_query(true)
        .execute()
        .await
    

    Suggested:

    cosmos_client
        .query_documents()
        .query_cross_partition()
        .parallelize_cross_partition_query()
        .execute(Query::new(&query))
        .await
    

    The suggested idea sets options using their names and then the execute or finalize method would take the actual thing the request is acting on, be it a query or a document.

    Also, I know there is a certain architectural purity and "coolness" by having the compiler catch missing parameters. However, in my experience using this, it just leads to really weird errors that are a bit hard to figure out, especially if you are just trying to do something simple like getting a document or a blob. I suggest that we move to runtime vs compile time checks here as they will allow us to expose more specific error messages to the developer while also simplifying the builder structs and implementations.

    Please note, this is not just in the cosmos crate. This pattern exists in several places and I think it should be updated everywhere

    opened by thomastaylor312 14
  • initial 100 service mgmt APIs generated by AutoRust

    initial 100 service mgmt APIs generated by AutoRust

    The code generated from AutoRust is now usable. I wanted to get feedback on the generated code and how it may be integrated here. This code is generated by running cargo run --example storage_mgmt, followed by a cargo fmt in this project.

    See the example storage_account_list.rs for an example of using the generated API. Example output:

    # of storage accounts 1
    Some("/subscriptions/54771b03-185e-4fba-98db-4324215b1031/resourceGroups/dev/providers/Microsoft.Storage/storageAccounts/ctaggart01")
    

    Outstanding issues

    • [x] crate names for services #42
    • config to each operation or methods in a Client #50
    • [x] handling error responses #47
    • date format #51
    • deserialization error for virtual machine list #54
    • azure_core::TokenCredential to get auth token #52
    • azure_identity::AzureCliCredential in examples #53
    opened by ctaggart 14
  • per operation `Response` types for generated clients

    per operation `Response` types for generated clients

    This implements the first part of #1053 design.

    RequestBuilder
    fn send(self) -> Response
    
    Response(azure_core::Response)
    fn into_body(self) -> ParsedBody
    fn into_raw_reponse(self) -> azure_core::Response
    fn as_raw_reponse(&self) -> &azure_core::Response
    
    opened by ctaggart 12
  • update generated crates to only use the latest spec

    update generated crates to only use the latest spec

    Based on discussions during the SDK meeting today, @heaths mentioned that the gen2 SDKs are only targeting the latest REST API specification for each service in main.

    By only targeting the latest spec, we significantly reduce the burden on our build infrastructure.

    opened by bmc-msft 12
  • split up azure_storage

    split up azure_storage

    Per https://azure.github.io/azure-sdk/general_design.html#namespaces, please split up storage into crates:

    • [x] azure_data_tables #546
    • [x] ~azure_messaging_queues~ azure_storage_queues #493
    • [x] azure_storage_datalake #545
    • [x] azure_storage_blobs #499
    • ~azure_storage_files~
    storage_blobs storage_tables queues storage_datalake 
    opened by cataggar 12
  • PolicyInsights PolicyStatesClient not setting content-length header on Page 2+

    PolicyInsights PolicyStatesClient not setting content-length header on Page 2+

    I am getting a 411 error from the Azure API when utilizing the policy_states_client.list_query_results_for_subscription.into_stream function.

    Brief Example Below:

    let subscription: String = "guid".into();
    let token = azure_identity::...;
    let client = azure_mgmt_policyinsights::ClientBuilder::new(Arc::new(token)).build();
    let policy_client = client.policy_states_client();
    
    let mut results = policy_client.list_query_results_for_subscription("default", &subscription).into_stream().enumerate();
    
    let mut i = 0;
    loop {
        i += 1;
        println!("Page {}", i);
        let page = results.next().await;
        match page {
            Some((_, p)) => {
                match p {
                    Ok(_) => {
                        if i > 5 {
                            break;
                        }
                    },
                    Err(e) => {
                        println!("{:#?}", e);
                        break;
                    }
                }
            },
            None => {
                break;
            }
        }
    }
    

    Every time I run code similar to the above, it will break on the error block within the match p section on the second page retrieved.

    The error message is:

    server returned error status which will not be retried: 411

    That 411 error has a body of:

    <!DOCTYPE HTML... <BODY>...HTTP Error 411. The request must be chunked or have a content length....</BODY></HTML>

    My assumption is that the calls through reqwest are not setting the content-length: 0 header

    opened by ALurker 1
  • AMQP 1.0 Support for Service Bus SDK

    AMQP 1.0 Support for Service Bus SDK

    This PR is a partial fullfillment of service bus SDK using the AMQP 1.0 protocol (#643). The overall design follows that of the dotnet SDK.

    What's added

    The following key public types are added in this PR.

    • ServiceBusClient
    • ServiceBusSender
    • ServiceBusReceiver
    • ServiceBusSessionReceiver
    • ServiceBusRuleManager
    • ServiceBusMessageBatch

    This PR also changes the minimum required rust version to 1.65 due to the use of generic associate types.

    What's removed

    The old reqwest based HTTP client (QueueClient, SubscriptionReceiver, TopicClient, and TopicSender) and the corresponding dependencies/examples/tests are removed.

    What's not implemented yet

    • Transaction
    • ServiceBusProcessor
    • ServiceBusSessionProcessor
    • ServiceBusAdministrationClient

    Testing

    Mock testing (using the mockall crate) has been applied to some unit tests but not implemented for integration testing, and integration testing relies heavily on live testing. Because of this, the environment variables listed below must be set in order to run cargo test. For testing on a local machine, it is recommended to put these environment variables in a .env file that is placed at the root of this crate (ie. azure-sdk-for-rust/sdk/messaging_servicebus/.env).

    • SERVICE_BUS_CONNECTION_STRING - full connection string to a service bus namespace. It should look like "Endpoint=sb://<your-namespace>.servicebus.windows.net/;SharedAccessKeyName=<your-policy>;SharedAccessKey=<your-key>"
    • SERVICE_BUS_NAMESPACE - "<your-namespace>.servicebus.windows.net"
    • SERVICE_BUS_SAS_KEY_NAME - shared access key name, for example "RootManageSharedAccessKey"
    • SERVICE_BUS_SAS_KEY - shared access key value. This is essentially the field "<your-key>" in the full connection string
    • SERVICE_BUS_QUEUE - a queue that does NOT have session enabled
    • SERVICE_BUS_SESSION_QUEUE - a queue that has session enabled
    • SERVICE_BUS_TOPIC - a topic whose subscriptions will be used for non-session topic/subscription testing
    • SERVICE_BUS_SUBSCRIPTION - a subscription of SERVICE_BUS_TOPIC, and it does NOT have session enabled
    • SERVICE_BUS_SESSION_TOPIC - a topic whose subscriptions will be used for session-enabled topic/subscription testing
    • SERVICE_BUS_SESSION_SUBSCRIPTION - a subscription of SERVICE_BUS_SESSION_TOPIC, and it must have session enabled
    • SERVICE_BUS_RULE_FILTER_TEST_TOPIC - a topic whose subscription will be used to test get/delete/create rule filters. It is recommended to have a separate topic that is different from SERVICE_BUS_TOPIC and SERVICE_BUS_SESSION_TOPIC to avoid accidentally affecting the subscription testing with the rule filters.
    • SERVICE_BUS_RULE_FILTER_TEST_SUBSCRIPTION - a subscription of SERVICE_BUS_RULE_FILTER_TEST_TOPIC that will be used for get/delete/create rule filter testing. It is recommended to have a separate topic/subscription that is different from SERVICE_BUS_TOPIC/SERVICE_BUS_SUBSCRIPTION and SERVICE_BUS_SESSION_TOPIC/SERVICE_BUS_SESSION_SUBSCRIPTION to avoid accidentally affecting the subscription testing with the rule filters.

    Most integration test cases assume an empty queue/subscription at the beginning of the test and should leave an empty queue/subscription at the end of the test. So it is important to make sure only one live test is running for the testing queue/topic/subscription.

    There is one long test in the integration tests (fn send_to_queue_every_minute_for_two_hour() in messaging_servicebus/tests/long_tests.rs) that is ignored in the usual cargo test. This test can be explicitly executed with cargo test --test long_tests -- --ignored --exact --nocapture which will also periodically print out message sent and message received. This test could also be used for testing recovery against network interruptions.

    I can provide my testing namespace/queue/topic/subscription (actually a copy of my .env file) in an email if necessary.

    Documentation

    The current implementation sets a rust doc flag "docsrs" to conditionally import types for intra-doc-links. To test the doc locally, the following command could be used. Please note that a nightly toolchain is needed (the nightly toolchain will used for the doc only, the crate itself doesn't need nightly at all)

    cargo +nightly doc --no-deps --open -Z unstable-options --config "build.rustdocflags=[\"--cfg\", \"docsrs\"]"

    Most of the documentations are ported from the dotnet SDK. More detailed explanation and/or examples might be necessary

    Limitations and discussions

    I have not got the time to review whether the APIs are cancel safe, but the send and recv method provided by the upstream AMQP crate have been reviewed and should be cancel safe.

    There are a few design decisions that, I think, could be discussed

    1. Whether AzureNamedKeyCredential and AzureSasCredential should be moved to the azure_core crate (which is the way that is implemented in the dotnet sdk)?
    2. The current retry policy trait and implementation (ServiceBusRetryPolicy and BasicRetryPolicy) essentially mimic what the dotnet sdk does. However, there is another retry policy trait in the azure_core crate (azure_core::RetryPolicy), which is not exactly the same. Should this implementation move to use azure_core::RetryPolicy instead?

    There is a known problem in the current implementation. Sometimes, upon certian network interruptions (eg. switching from one wireless network to another), the sending operation may need to wait for ServiceBusRetryOptions::delay (default to 1 minute) before it starts to try to recover the connection and retry the sending operation. The tests/long_tests.rs has been used for testing network interruptions by manually disconnecting/reconnecting or switching the network.

    Another problem is logging. Both log and tracing are popular in the rust ecosystem. Would it make sense to use a feature to allow user to choose which logging crate to use? (this will likely be in the next PR). Ths current use of log also definitely has room for improvement.

    opened by minghuaw 8
  • "header not found x-ms-request-charge" error when deleting from cosmos

    The operation succeeds, but an error is returned. I have tested various versions of the library, including the newest. (The error seems similar to an earlier issue that was solved: https://github.com/Azure/azure-sdk-for-rust/issues/1022 )

    [dependencies]
    tokio = { version = "1.1.0", features = ["rt-multi-thread", "macros", "time"] }
    azure_core = "0.8.0"
    azure_data_cosmos = "0.9.0"
    
    use azure_data_cosmos::prelude::*;
    use std::error::Error;
    
    const COSMOS_ACCOUNT: &str = "xxx";
    const COSMOS_MASTER_KEY: &str = "xxx";
    const COSMOS_DATABASE: &str = "xxx";
    
    #[tokio::main]
    async fn main() -> Result<(), Box<dyn Error + Send + Sync>> {
        let collection_name = "xxx";
        let document_id = "xxx";
        let partition_key = "xxx";
    
        let authorization_token = AuthorizationToken::primary_from_base64(&COSMOS_MASTER_KEY)?;
        let client = CosmosClient::new(COSMOS_ACCOUNT.to_string(), authorization_token);
        let database = client.database_client(COSMOS_DATABASE);
        let collection_client = database.collection_client(collection_name.to_string());
        let document_client = collection_client.document_client(document_id, &partition_key)?;
    
        document_client.delete_document().into_future().await?;
    
        Ok(())
    }
    

    Result:

    Error: Error { context: Message { kind: DataConversion, message: "header not found x-ms-request-charge" } }
    
    opened by ayngling 2
  • Support hierarchical partition keys

    Support hierarchical partition keys

    This method of extension should be backwards compatible with all existing usages of the trait whilst allowing users to opt into using the preview feature correctly.

    opened by thed24 2
  • autorust issue with multiple uses of the same tag name

    autorust issue with multiple uses of the same tag name

    With the Azure REST API specs from https://github.com/Azure/azure-rest-api-specs/commit/fd296f4cbe90e46098824e020e4a02517d56fc35, purview the same tag twice.

    In particular:

    1. specification/purview/data-plane/Azure.Analytics.Purview.DevopsPolicies/preview/2022-11-01-preview/purviewDevopsPolicy.json
    2. specification/purview/data-plane/Azure.Analytics.Purview.PDS/preview/2022-11-01-preview/pds.json

    This results in duplicate tag name entries that show up in Cargo.toml

    opened by demoray 0
  • Add showonly argument in ListBlobsBuilder

    Add showonly argument in ListBlobsBuilder

    In the list_blobs documentation, there exists a showonly argument to choose objects returned ({deleted,files,directories}). Would it be possible to add this argument to the ListBlobsBuilder?

    opened by TomScheffers 0
Releases(v2022-12-16)
  • v2022-12-16(Dec 16, 2022)

    What's Changed

    • Added enable_reqwest_rustls feature flag for data_cosmos by @daniel-larsen in https://github.com/Azure/azure-sdk-for-rust/pull/1167
    • Key Vault Certificate Import by @daniel-larsen in https://github.com/Azure/azure-sdk-for-rust/pull/1168
    • use cargo metadata to identify crates rather than find by @demoray in https://github.com/Azure/azure-sdk-for-rust/pull/1174
    • update base64 to 0.20.0 by @demoray in https://github.com/Azure/azure-sdk-for-rust/pull/1173
    • Key Vault Certificate Create and Merge by @daniel-larsen in https://github.com/Azure/azure-sdk-for-rust/pull/1175
    • address concurrent issue with sleep future by @demoray in https://github.com/Azure/azure-sdk-for-rust/pull/1171
    • address clippy issues from 1.66.0 by @demoray in https://github.com/Azure/azure-sdk-for-rust/pull/1178
    • update autorust 3rd party dependencies by @demoray in https://github.com/Azure/azure-sdk-for-rust/pull/1180
    • Key Vault Certificate Delete by @daniel-larsen in https://github.com/Azure/azure-sdk-for-rust/pull/1177
    • handle tokens that expire immediately in AutoRefreshingTokenCredential by @demoray in https://github.com/Azure/azure-sdk-for-rust/pull/1176
    • regenerate crates for 2022-12 release by @demoray in https://github.com/Azure/azure-sdk-for-rust/pull/1181
    • Update versions for 2022-12 release by @demoray in https://github.com/Azure/azure-sdk-for-rust/pull/1182

    New Contributors

    • @daniel-larsen made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/1167
    • @demoray made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/1174

    Full Changelog: https://github.com/Azure/azure-sdk-for-rust/compare/v2022-11-30...v2022-12-16

    Source code(tar.gz)
    Source code(zip)
  • v2022-11-30(Nov 30, 2022)

    What's Changed

    • disable azure_iot_deviceupdate until it is ready for release by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/1138
    • address new clippy issues from 1.65.0 by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/1145
    • Add content_range to GetBlobResponse by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/1144
    • add script to verify the SDK publish team is an owner for all of the published crates by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/1139
    • Add Content-Type to finalize request in KV client by @pavelm10 in https://github.com/Azure/azure-sdk-for-rust/pull/1147
    • Update comrak requirement from 0.14 to 0.15 in /services/autorust by @dependabot in https://github.com/Azure/azure-sdk-for-rust/pull/1152
    • fix missing headers in get_blob response by @juliusl in https://github.com/Azure/azure-sdk-for-rust/pull/1151
    • Make QueryEntityResponse public by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/1153
    • Update env_logger requirement from 0.9 to 0.10 by @dependabot in https://github.com/Azure/azure-sdk-for-rust/pull/1158
    • Add .bytes() fn to BlockId by @juliusl in https://github.com/Azure/azure-sdk-for-rust/pull/1157
    • add timeout to IMDS when used in DefaultAzureCredential by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/1016
    • generate service crates by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/1162
    • update build pipeline by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/1160
    • fix readme generation by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/1159
    • Exposing public queue api data by @rguerreiromsft in https://github.com/Azure/azure-sdk-for-rust/pull/1114
    • unify the code used to generate svc and mgmt crates by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/1161
    • add service bus topic support by @pavelm10 in https://github.com/Azure/azure-sdk-for-rust/pull/1155
    • bump versions in prep for 2022-11 release by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/1163
    • fix servicebus readme after recent change by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/1164

    New Contributors

    • @rguerreiromsft made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/1114

    Full Changelog: https://github.com/Azure/azure-sdk-for-rust/compare/v2022-10-27...v2022-11-30

    Source code(tar.gz)
    Source code(zip)
  • v2022-10-27(Oct 27, 2022)

    What's Changed

    • fix clippy issues identified in 1.64.0 by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/1103
    • add comment regarding azurite workaround by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/1106
    • Allow support to use vendored openssl by @msabansal in https://github.com/Azure/azure-sdk-for-rust/pull/1104
    • make IntoFuture broadly usable by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/1102
    • analysis of specifications using Cancelled as an enum value by @cataggar in https://github.com/Azure/azure-sdk-for-rust/pull/1108
    • Update clap requirement from 3.2.7 to 4.0.2 by @dependabot in https://github.com/Azure/azure-sdk-for-rust/pull/1110
    • Update clap requirement from 3.2.7 to 4.0.4 in /services/autorust by @dependabot in https://github.com/Azure/azure-sdk-for-rust/pull/1111
    • add fn deserialize_null_as_default for deserializing JSON null values by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/1115
    • Add ContainerClient::exists method by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/1126
    • Add messages count to get-queue-metadata operation by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/1125
    • add TryFrom to Blob & Container clients by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/1101
    • update actions used by build pipeline by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/1129
    • Fixed incorrect header name in blob expiry by @ReneVanDijk in https://github.com/Azure/azure-sdk-for-rust/pull/1131
    • regenerate services in prep for 2022-10 release by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/1132
    • handle removing crates when all tags have been disabled by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/1133
    • use a stable tag as the default if the latest is a preview by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/1135
    • box the keyvault error in 7.4 preview 1 by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/1136
    • update versions in prep for 2022-10 release by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/1134

    New Contributors

    • @ReneVanDijk made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/1131

    Full Changelog: https://github.com/Azure/azure-sdk-for-rust/compare/v2022-09-16...v2022-10-27

    Source code(tar.gz)
    Source code(zip)
  • v2022-09-16(Sep 16, 2022)

    Published crates

    • azure_core 0.5.0
    • azure_data_cosmos 0.6.0
    • azure_data_tables 0.6.0
    • azure_identity 0.6.0
    • azure_iot_hub 0.5.0
    • azure_messaging_eventgrid 0.5.0
    • azure_messaging_servicebus 0.5.0
    • azure_security_keyvault 0.5.0
    • azure_storage 0.6.0
    • azure_storage_blobs 0.6.0
    • azure_storage_datalake 0.6.0
    • azure_storage_queues 0.6.0
    • azure_mgmt_* 0.6.0
    • azure_svc_ * 0.6.0

    What's Changed

    • generate a small services workspace by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/999
    • Simplify encoded value generation fixing lifetime issue by @satlank in https://github.com/Azure/azure-sdk-for-rust/pull/1000
    • Fix new clippy warning by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/1002
    • Make url on BlobClient pub. by @gorzell in https://github.com/Azure/azure-sdk-for-rust/pull/1005
    • Ensure that exchange is Send by @satlank in https://github.com/Azure/azure-sdk-for-rust/pull/1004
    • Add a rust-toolchain file. by @gorzell in https://github.com/Azure/azure-sdk-for-rust/pull/1006
    • default sdks to azure_core/enable_reqwest by @cataggar in https://github.com/Azure/azure-sdk-for-rust/pull/1003
    • allow wasm32 for azure_identity by @cataggar in https://github.com/Azure/azure-sdk-for-rust/pull/995
    • make oauth2 an internal dependency of identity by @cataggar in https://github.com/Azure/azure-sdk-for-rust/pull/998
    • add "rt-multi-thread" as dev-dependency for services by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/1010
    • add AzureCliCredential::new() by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/1012
    • trim the required time features by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/1013
    • remove async-timer as a dependency by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/1014
    • require using AzureCliCredential::new to reduce future breaking changes by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/1017
    • blob_storage: Make Snapshot type consistent. by @gorzell in https://github.com/Azure/azure-sdk-for-rust/pull/1008
    • Fix autorust handling of optional datetime fields by @johnbatty in https://github.com/Azure/azure-sdk-for-rust/pull/1020
    • Make content_location optional by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/1023
    • implement oauth2 HTTP client by @cataggar in https://github.com/Azure/azure-sdk-for-rust/pull/997
    • Fixing build break in using client_certificate credentials by @msabansal in https://github.com/Azure/azure-sdk-for-rust/pull/1018
    • Fix azure_security_keyvault handling of optional datetime fields by @cataggar in https://github.com/Azure/azure-sdk-for-rust/pull/1021
    • Make the mock transaction less expensive by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/1025
    • Improve message from error in retry policy that is no longer retried by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/1028
    • reduce log level when creating a reqwest instance by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/1029
    • fix formatting datetime for SAS generation by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/1033
    • core: Change the RetryPolicy trait to allow waiting on arbitrary things. by @gorzell in https://github.com/Azure/azure-sdk-for-rust/pull/1035
    • break up create_operation_code in AutoRust by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/1034
    • Minor cleanups as followup of previous PR by @msabansal in https://github.com/Azure/azure-sdk-for-rust/pull/1026
    • rename the request builder to RequestBuilder by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/1037
    • Make RetryPolicy publicly visible. by @gorzell in https://github.com/Azure/azure-sdk-for-rust/pull/1038
    • reduce log level on requests that will not be retried by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/1031
    • Migrate keyvault to pipeline by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/962
    • enable anonymous access to storage containers by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/1042
    • import mod_name::* for default feature in generated rest clients by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/1041
    • move azure_storage::xml to azure_core::xml behind xml feature by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/1045
    • address more header names that are not canonicalized before use by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/1048
    • Prevent the use of uppercase letters in HeaderName::from_static by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/1050
    • security_keyvault module visibility fixups by @johnbatty in https://github.com/Azure/azure-sdk-for-rust/pull/1052
    • Move get_account_information operation by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/1056
    • Update serde-xml-rs requirement from 0.5 to 0.6 by @dependabot in https://github.com/Azure/azure-sdk-for-rust/pull/1058
    • Make azure_data_cosmos::clients::CloudLocation public by @hanhossain in https://github.com/Azure/azure-sdk-for-rust/pull/1054
    • Stop using StorageClient in blob storage by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/1057
    • provide helper methods for creating StorageCredentials by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/1060
    • fix URL link generation by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/1061
    • allow shared-key based request signing to fail rather than panic by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/1063
    • per operation Response types for generated clients by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/1040
    • remove debug printlns by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/1064
    • Refactor the API for retry options by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/1067
    • Add a conversion from Arc<dyn TokenCredential to StorageCredentials by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/1065
    • Add a way to override all client options by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/1066
    • Start moving over azure_storage_datalake to use client builder pattern by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/1062
    • RetryOptions::custom should take Arc where T: RetryPolicy + Policy by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/1070
    • move datalake to use operation macro by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/1071
    • reduce clones in non-streaming operations by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/1073
    • move the rest of datalake operations to use the operations macro by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/1072
    • Remove StorageClient from azure_storage_queues by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/1074
    • Remove storage client from table storage by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/1079
    • support xml in generated services by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/1047
    • Remove storage client by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/1082
    • Small Blob cleanup by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/1081
    • add response headers to generated clients by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/1084
    • Change BlobServiceClientBuilder to be just a ClientBuilder by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/1087
    • return response body from RequestBuilder::into_future by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/1089
    • Prefer iterators by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/1088
    • update to latest specs by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/1090
    • prep September release versions by @cataggar in https://github.com/Azure/azure-sdk-for-rust/pull/1091
    • work around invalid content-range from azurite by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/1094
    • fix SAS urls for containers by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/1099
    • add support for <BlobPrefix> when listing blobs by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/1097
    • Fix blob content headers by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/1100

    New Contributors

    • @satlank made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/1000
    • @hanhossain made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/1054

    Full Changelog: https://github.com/Azure/azure-sdk-for-rust/compare/v2022-08-09...v2022-09-16

    Source code(tar.gz)
    Source code(zip)
  • v2022-08-09(Aug 9, 2022)

    Published crates

    • azure_core 0.4.0
    • azure_data_cosmos 0.5.0
    • azure_data_tables 0.5.0
    • azure_identity 0.5.0
    • azure_iot_hub 0.4.0
    • azure_messaging_eventgrid 0.4.0
    • azure_messaging_servicebus 0.4.0
    • azure_security_keyvault 0.4.0
    • azure_storage 0.5.0
    • azure_storage_blobs 0.5.0
    • azure_storage_datalake 0.5.0
    • azure_storage_queues 0.5.0
    • azure_mgmt_* 0.5.0
    • azure_svc_ * 0.5.0

    What's Changed

    • Remove unused code from the identity README by @dbanty in https://github.com/Azure/azure-sdk-for-rust/pull/821
    • Add pipeline to storage_account_client by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/811
    • fix: azure_core fails to build with azurite_workaround feature by @roeap in https://github.com/Azure/azure-sdk-for-rust/pull/824
    • Move find_blobs_by_tags to pipeline by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/826
    • Move Result to top of core crate by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/825
    • update tools for publishing by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/822
    • Move last fully qualified results by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/828
    • rm old find_blobs_by_tags code by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/829
    • add azure_core::auth::AccessToken by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/827
    • fixes the device code example by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/830
    • migrate services from http::Request to azure_core::Request by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/834
    • Fix 401 Unauthorized error in CosmosDB operations by @spica314 in https://github.com/Azure/azure-sdk-for-rust/pull/832
    • migrate SDKs from http::Request to azure_core::Request by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/833
    • Cosmos Tweaks by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/842
    • move storage_blob operations to follow the into_future pattern by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/838
    • address reasonable clippy lints from nightly by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/841
    • header name constants changed from &str to HeaderName by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/839
    • align storage key name to documentation by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/844
    • Change prepare_pipeline methods to request methods by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/845
    • Add IntoFuture impls for the last operations in Cosmos by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/846
    • Move storage blobs to pipeline architecture by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/843
    • drop as_ prefix from as_X_client from storage crates by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/847
    • move storage queues to pipeline architecture by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/851
    • Move get blob to pageable by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/850
    • Update storage queue to use the new Pageable methods by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/854
    • Move more towards header methods by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/857
    • use u8 slice for read_xml instead of Bytes by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/856
    • Address feedback from Storage Queue pipeline pr by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/858
    • add Method & StatusCode to azure_core by @cataggar in https://github.com/Azure/azure-sdk-for-rust/pull/852
    • Even more cleanup by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/859
    • fix blob_storage_request by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/862
    • Panic when there is no ServiceType by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/863
    • More headers cleanup by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/864
    • Simplify builder for account sas by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/865
    • Context setters in storage_queues crate by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/866
    • switch Method and StatusCode to http-types by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/860
    • [Feature] Add support for setting blob properties by @aaron-hardin in https://github.com/Azure/azure-sdk-for-rust/pull/869
    • pass Headers as part of prepare_request by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/872
    • Make Continuation an associated type by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/873
    • Only add params if they don't already exist by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/875
    • Move data tables to pipeline by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/874
    • Remove useless comments by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/877
    • Cleanup storage clients by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/876
    • address clippy issues from 1.62.0 by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/881
    • revamp SAS builders to model operations by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/879
    • use StatusCode rather than u16 in HttpError by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/882
    • Try out an operation macro by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/878
    • finish moving to StatusCode rather than u16 for HTTP status code by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/885
    • use clap parser in cosmos examples by @yoshuawuyts in https://github.com/Azure/azure-sdk-for-rust/pull/884
    • Remove unused IntoAzurePath by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/888
    • Move blob options to their own module by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/892
    • Remove unused in mock transport layer by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/887
    • add missing restype=container query param for container get_props by @yvespp in https://github.com/Azure/azure-sdk-for-rust/pull/899
    • replace block_on with await for token_credential.get_token in storage by @yvespp in https://github.com/Azure/azure-sdk-for-rust/pull/898
    • lowercase the header names by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/897
    • Shared auth among cosmos examples by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/895
    • Use Response::is_success for retry policy by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/890
    • Use Headers::get_as where appropriate by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/889
    • add azure-autorust bin by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/896
    • reorg service operations into a service directory by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/900
    • [datalake] add missing file and directory methods by @roeap in https://github.com/Azure/azure-sdk-for-rust/pull/853
    • lower case metadata header to pass assertion by @yvespp in https://github.com/Azure/azure-sdk-for-rust/pull/907
    • no default features for http-types by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/904
    • add _client suffix for accessing clients by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/903
    • lowercase x-identity-header used in IMDS by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/909
    • prevent recursion when Debugging format in StorageCredentials by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/908
    • address upcoming clippy issues by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/912
    • remove unused header method by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/911
    • set metadata headers as part of finalize request by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/910
    • add blob expiry support by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/913
    • Timeout policy by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/893
    • House cleaning for blob clients by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/891
    • move data tables to operations macro by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/916
    • move azure_storage_blobs to use the operations macro by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/914
    • move storage queues to operations macro by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/915
    • move storage core to use operations macro by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/917
    • Removes more timeout from storage operation builders by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/919
    • remove last timer builders from data_tables by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/920
    • Add an example that lists the VM Images that run Linux without a publisher plan by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/921
    • Update comrak requirement from 0.13 to 0.14 in /services/autorust by @dependabot in https://github.com/Azure/azure-sdk-for-rust/pull/925
    • add graphrbac example that demonstrates the deleted_applications_client by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/924
    • Make sure header name Content-MD5 is lower-cased by @evanxg852000 in https://github.com/Azure/azure-sdk-for-rust/pull/929
    • Revert "Shared auth among cosmos examples" by @yoshuawuyts in https://github.com/Azure/azure-sdk-for-rust/pull/926
    • Simplify cosmos client construction by @yoshuawuyts in https://github.com/Azure/azure-sdk-for-rust/pull/886
    • Fix downloading single range from large blob by @evanxg852000 in https://github.com/Azure/azure-sdk-for-rust/pull/931
    • add tags support to storage blobs by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/927
    • Builderify cosmos client construction by @yoshuawuyts in https://github.com/Azure/azure-sdk-for-rust/pull/932
    • simplify blob range example by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/935
    • Prefer usage of ContentType type over inserting header directly by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/934
    • Improve the error on failed xml deserialization by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/937
    • Improve some deserialization in storage by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/938
    • Allow wasm to compile by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/939
    • remove account feature from azure_storage by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/940
    • allow setting initial partition key & row key for queries by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/942
    • Some cleanup of cosmos examples by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/933
    • move to using azure_core::Body instead of Bytes by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/943
    • Fix IntoFuture bug by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/944
    • Simplify the construction of URLs in blob sdk by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/945
    • Improve logging and error capabilities by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/947
    • Improve Cosmos document querying by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/948
    • updates in prep for regenerating services by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/949
    • generate services from azure-rest-api-specs by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/950
    • specify additional conditional headers for blob & container operations by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/951
    • Remove ToJsonVector by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/952
    • rename SequenceNumberCondition to IfSequenceNumber (per #951) by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/954
    • move to using Cow<'static, str> for most headers/request options by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/953
    • Option macro improvements by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/955
    • Improve storage operations by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/956
    • Some clippy fixes by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/958
    • move keyvault to use builder pattern by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/959
    • Move IoT Hub to operation builder pattern by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/960
    • Update serde_yaml requirement from 0.8 to 0.9 in /services/autorust by @dependabot in https://github.com/Azure/azure-sdk-for-rust/pull/963
    • switch from chrono crate to time crate by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/965
    • update to latest specs by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/969
    • Fix. deserialization for block blob list resp by @juliusl in https://github.com/Azure/azure-sdk-for-rust/pull/968
    • Migrate iothub to pipelines by @roeap in https://github.com/Azure/azure-sdk-for-rust/pull/972
    • Add better retry policy defaults by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/971
    • storage_blobs: Add support for snapshot blob. by @gorzell in https://github.com/Azure/azure-sdk-for-rust/pull/966
    • Add operation docs to generated services by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/974
    • switch azure_svc_keyvault example to time crate by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/977
    • Use specific minimum version of time dependency by @bittrance in https://github.com/Azure/azure-sdk-for-rust/pull/978
    • use time::OffsetDateTime in services by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/979
    • Add CosmosClientBuilder to the Cosmos SDK by @yoshuawuyts in https://github.com/Azure/azure-sdk-for-rust/pull/964
    • Rearrange mock transport support by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/980
    • Remove unnecessary unwrap by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/985
    • remove operations modules from services by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/984
    • add --package to azure-autorust by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/982
    • Allow for a streaming response by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/986
    • Fix issue with user defined functions by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/992
    • add retry and transport options for services by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/988
    • run cargo fmt after code generation by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/993
    • prepare 2022 August Release by @cataggar in https://github.com/Azure/azure-sdk-for-rust/pull/994

    New Contributors

    • @dbanty made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/821
    • @spica314 made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/832
    • @aaron-hardin made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/869
    • @evanxg852000 made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/929
    • @juliusl made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/968
    • @gorzell made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/966

    Full Changelog: https://github.com/Azure/azure-sdk-for-rust/compare/v2022-06-16...v2022-08-09

    Source code(tar.gz)
    Source code(zip)
  • v2022-06-16(Aug 10, 2022)

    What's Changed

    • update datalake head and list operations - more blob migration by @roeap in https://github.com/Azure/azure-sdk-for-rust/pull/798
    • remove Box from data_tables by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/815
    • remove Box from storage queues by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/817
    • remove Box from storage core by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/814
    • remove Box from storage blobs by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/816
    • remove Box from storage_datalake by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/818
    • remove Box<dyn Error + Send + Sync> from data_cosmos by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/819
    • 2022 June Release update by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/820

    Full Changelog: https://github.com/Azure/azure-sdk-for-rust/compare/v2022-06-15...v2022-06-16

    Source code(tar.gz)
    Source code(zip)
  • v2022-06-15(Aug 10, 2022)

    What's Changed

    • add autorust.toml with tags_allow to limit tags by @cataggar in https://github.com/Azure/azure-sdk-for-rust/pull/747
    • add example that shows azure_mgmt_network's service_tags().list() by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/750
    • adding option to specify client_id for MSI by @aj9411 in https://github.com/Azure/azure-sdk-for-rust/pull/748
    • datetime from azure cli token is in the local timezone by @yvespp in https://github.com/Azure/azure-sdk-for-rust/pull/751
    • prep azure_identity 0.3.0 by @cataggar in https://github.com/Azure/azure-sdk-for-rust/pull/753
    • add AutoRefreshingTokenCredential support to StorageAccountClient by @yvespp in https://github.com/Azure/azure-sdk-for-rust/pull/757
    • Make Pageable implement Send by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/758
    • ToTokens refactor by @cataggar in https://github.com/Azure/azure-sdk-for-rust/pull/754
    • Export credentials from azure_identity by @heaths in https://github.com/Azure/azure-sdk-for-rust/pull/756
    • remove version in dev-dependency by @cataggar in https://github.com/Azure/azure-sdk-for-rust/pull/759
    • limit tags to 5 by @cataggar in https://github.com/Azure/azure-sdk-for-rust/pull/761
    • remove defunct enable_hyper feature by @cataggar in https://github.com/Azure/azure-sdk-for-rust/pull/760
    • data tables queries use eq not = for string equality by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/764
    • use azure_core errors in services by @cataggar in https://github.com/Azure/azure-sdk-for-rust/pull/766
    • check service examples by @cataggar in https://github.com/Azure/azure-sdk-for-rust/pull/767
    • Support enum modelAsString by @johnbatty in https://github.com/Azure/azure-sdk-for-rust/pull/769
    • migrate workarounds to autorust.toml by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/772
    • convert error responses from bytes by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/776
    • make reqwest optional for azure_core by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/777
    • Ensure that the result from query_documents().into_stream is sendable by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/773
    • add ResultExt::map_kind by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/778
    • set MSI secret env.var optional by @pavelm10 in https://github.com/Azure/azure-sdk-for-rust/pull/775
    • Implemented messaging_servicebus crate by @danbugs in https://github.com/Azure/azure-sdk-for-rust/pull/770
    • update execute_request2 to use error::Error instead of HttpError by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/779
    • iot_hub: Add support for configurations by @corollaries in https://github.com/Azure/azure-sdk-for-rust/pull/762
    • Update comrak requirement from 0.12 to 0.13 in /services/autorust by @dependabot in https://github.com/Azure/azure-sdk-for-rust/pull/783
    • migrate azure_identity to azure_core::error::Error by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/781
    • Migrate security_keyvault to new azure_core::error scheme by @johnbatty in https://github.com/Azure/azure-sdk-for-rust/pull/782
    • Make Pageable's stream item type be Send + Sync by @avranju in https://github.com/Azure/azure-sdk-for-rust/pull/784
    • allow Request::set_body from any Into<Bytes> by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/787
    • add some header constants by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/788
    • update services to latest specs by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/789
    • sdk: device_update: migrate to azure_core::error::Error by @mfrw in https://github.com/Azure/azure-sdk-for-rust/pull/791
    • skip query params already in x-ms-paths by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/790
    • update AutoRust errors & consumes content-type from operation by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/796
    • use HttpClient in azure_identity by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/785
    • Migrate storage_datalake to azure_core::error::Error by @roeap in https://github.com/Azure/azure-sdk-for-rust/pull/795
    • Migrate storage_queues to new azure_core::error scheme by @johnbatty in https://github.com/Azure/azure-sdk-for-rust/pull/800
    • Migrate sdk/storage_blob to azure_core::error scheme by @rickrain in https://github.com/Azure/azure-sdk-for-rust/pull/794
    • azure_core::error::Error for azure_iot_hub by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/801
    • move to using Arc<dyn HttpClient> in azure_identity by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/799
    • Migrate data_tables to new azure_core::error scheme by @johnbatty in https://github.com/Azure/azure-sdk-for-rust/pull/805
    • Migrate storage to new azure_core::error scheme by @johnbatty in https://github.com/Azure/azure-sdk-for-rust/pull/792
    • Move some code around for easier reading by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/807
    • remove legacy errors from azure_core by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/806
    • 2022 June Release by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/813

    New Contributors

    • @aj9411 made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/748
    • @pavelm10 made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/775
    • @danbugs made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/770
    • @avranju made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/784
    • @mfrw made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/791

    Full Changelog: https://github.com/Azure/azure-sdk-for-rust/compare/v2022-05-06...v2022-06-15

    Source code(tar.gz)
    Source code(zip)
  • v2022-05-06(Aug 10, 2022)

    What's Changed

    • Add reqest properties for azure_kusto_data crate by @roeap in https://github.com/Azure/azure-sdk-for-rust/pull/685
    • expose etag during get responses by @sga001 in https://github.com/Azure/azure-sdk-for-rust/pull/734
    • Add 'get_status' to datalake file client by @rickrain in https://github.com/Azure/azure-sdk-for-rust/pull/722
    • Add 'get_access_control_list' to datalake file client by @rickrain in https://github.com/Azure/azure-sdk-for-rust/pull/737
    • use paths not pinned to a version for dev-dependencies by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/745
    • initial work to support x-ms-pageable for generated specs by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/742
    • prep release for idiomatic crates by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/744
    • expose internal sleep implementation by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/743

    New Contributors

    • @sga001 made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/734

    Full Changelog: https://github.com/Azure/azure-sdk-for-rust/compare/v2022-04-27...v2022-05-06

    Source code(tar.gz)
    Source code(zip)
  • v2022-04-27(Aug 10, 2022)

    What's Changed

    • restore resources group_create example by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/710
    • Renamed no-default-version feature to no-default-tag & expanded tag documentation by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/711
    • test all service crates in parallel by @cataggar in https://github.com/Azure/azure-sdk-for-rust/pull/712
    • Add Device update functionality by @rerkcp in https://github.com/Azure/azure-sdk-for-rust/pull/694
    • Add KeyVault create_key example by @rickrain in https://github.com/Azure/azure-sdk-for-rust/pull/715
    • address issues raised by clippy in 1.60.0 by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/719
    • address some concerns in initial device_update PR by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/716
    • Adding support for certificate based credentials for app authentication by @msabansal in https://github.com/Azure/azure-sdk-for-rust/pull/708
    • Add setters for range property on GetPath builder by @roeap in https://github.com/Azure/azure-sdk-for-rust/pull/721
    • Blob Storage: Add Get Page Ranges by @wdcui in https://github.com/Azure/azure-sdk-for-rust/pull/725
    • update uuid to 1.0 by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/729
    • include path and x_ms_path endpoints in genearted crates by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/718
    • regenerate services from azure-rest-api-specs by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/732

    New Contributors

    • @msabansal made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/708
    • @wdcui made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/725

    Full Changelog: https://github.com/Azure/azure-sdk-for-rust/compare/v2022-04-03...v2022-04-27

    Source code(tar.gz)
    Source code(zip)
  • v2022-04-03(Aug 10, 2022)

    What's Changed

    • Parse connection string by splitting on first = by @archoversight in https://github.com/Azure/azure-sdk-for-rust/pull/622
    • simplify crate keywords by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/637
    • Add azurite_workaround feature to storage_blobs by @archoversight in https://github.com/Azure/azure-sdk-for-rust/pull/636
    • crate should be azure_iot_hub by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/638
    • update docs by @cataggar in https://github.com/Azure/azure-sdk-for-rust/pull/639
    • add azure_iot_hub license by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/641
    • address feature name limits from crates.io by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/645
    • [datalake] Fix path rename operations by @roeap in https://github.com/Azure/azure-sdk-for-rust/pull/653
    • azure_storage_datalake 0.1.1 by @thovoll in https://github.com/Azure/azure-sdk-for-rust/pull/655
    • list_crates by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/656
    • Autogenerate struct and enum doc comments by @johnbatty in https://github.com/Azure/azure-sdk-for-rust/pull/659
    • Improved Error Handling by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/625
    • move to hmac instead of ring for hmac calculation by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/662
    • address clippy issues by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/664
    • More into_future usage by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/663
    • replace unwrap calls in azure_core by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/661
    • More into_future implementations by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/665
    • Update mockito requirement from 0.30 to 0.31 by @dependabot in https://github.com/Azure/azure-sdk-for-rust/pull/666
    • Even more into_future by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/667
    • Remove Box::pin requirement in usage of Pageable by @yoshuawuyts in https://github.com/Azure/azure-sdk-for-rust/pull/668
    • And the into_future changes continue by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/669
    • into_future again by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/670
    • into_future more by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/671
    • update services with latest specs by @cataggar in https://github.com/Azure/azure-sdk-for-rust/pull/672
    • into_future even more by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/674
    • use Basic Information tag for default version by @cataggar in https://github.com/Azure/azure-sdk-for-rust/pull/675
    • Last into_future by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/677
    • limit docs.rs to 5 API tags by @cataggar in https://github.com/Azure/azure-sdk-for-rust/pull/679
    • [datalake] Remove Box::pin where Pageable is returned by @roeap in https://github.com/Azure/azure-sdk-for-rust/pull/680
    • Downgrade log line from debug to trace by @adeschamps in https://github.com/Azure/azure-sdk-for-rust/pull/681
    • Simplify clients by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/684
    • Turn on 'test_e2e' feature for rust-analyzer by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/683
    • Use the new IntoFuture signature on nightly by @yoshuawuyts in https://github.com/Azure/azure-sdk-for-rust/pull/686
    • Fix the new IntoFuture signature by @yoshuawuyts in https://github.com/Azure/azure-sdk-for-rust/pull/689
    • Remove some duplication in cosmos and database client by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/678
    • [datalake] More Authorization policies by @roeap in https://github.com/Azure/azure-sdk-for-rust/pull/673
    • Better header insertion handling by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/690
    • Better header handling by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/691
    • update azure_storage readme by @cataggar in https://github.com/Azure/azure-sdk-for-rust/pull/697
    • add links & README.md for services by @cataggar in https://github.com/Azure/azure-sdk-for-rust/pull/695
    • handling a crate::Error example by @cataggar in https://github.com/Azure/azure-sdk-for-rust/pull/612
    • bump edition to 2021 by @cataggar in https://github.com/Azure/azure-sdk-for-rust/pull/696
    • update crate docs for storage by @cataggar in https://github.com/Azure/azure-sdk-for-rust/pull/698
    • Remove the use of #[macro_use] which isn't the most idiomatic these days by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/701
    • Remove azure_data_cosmos::Error by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/702
    • Blob Storage: Add Set Blob Access Tier by @rickrain in https://github.com/Azure/azure-sdk-for-rust/pull/703
    • add tags & api-versions to service readmes by @cataggar in https://github.com/Azure/azure-sdk-for-rust/pull/699
    • set azure_core to 0.2.1 by @cataggar in https://github.com/Azure/azure-sdk-for-rust/pull/706
    • More cosmos tests running against mock transport by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/705
    • update azure_core readme by @cataggar in https://github.com/Azure/azure-sdk-for-rust/pull/707
    • update to 2022-04-01 specs by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/709

    New Contributors

    • @archoversight made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/622
    • @adeschamps made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/681

    Full Changelog: https://github.com/Azure/azure-sdk-for-rust/compare/v2022-01-25...v2022-04-03

    Source code(tar.gz)
    Source code(zip)
  • v2022-01-25(Aug 10, 2022)

    What's Changed

    • Add Key Vault SDK crate by @guywaldman in https://github.com/Azure/azure-sdk-for-rust/pull/1
    • Project Organization Refactoring by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/4
    • Format by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/7
    • build on any branch by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/15
    • make TokenResponse::new public by @gzp-crey in https://github.com/Azure/azure-sdk-for-rust/pull/9
    • call az through cmd on windows by @gzp-crey in https://github.com/Azure/azure-sdk-for-rust/pull/12
    • Update README.md by @dzmitry-lahoda in https://github.com/Azure/azure-sdk-for-rust/pull/13
    • bump oauth2 to latest by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/33
    • Using TokenCredential trait in KeyVaultClient by @gzp-crey in https://github.com/Azure/azure-sdk-for-rust/pull/10
    • Rename Crates by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/34
    • Azure storage queue: Get Messages implementation by @MindFlavor in https://github.com/Azure/azure-sdk-for-rust/pull/2
    • expose subscription and tenant ids in AzureCliCredentials by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/38
    • Deny warnings in CI by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/41
    • Remove dependency on nightly compiler by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/40
    • format with Better TOML by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/45
    • Refactor identity crate by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/43
    • initial 100 service mgmt APIs generated by AutoRust by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/31
    • Move the TokenCredential trait to azure_core by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/56
    • rename operation configuration to OperationConfig by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/55
    • Rearrange core headers by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/57
    • New service updates by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/58
    • multi-value query parameters by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/63
    • use TokenCredential in services by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/59
    • 4 more mgmt services & CamelCase enum value identifiers by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/66
    • Add support for ADLS Gen2 Filesystem API by @sawlody in https://github.com/Azure/azure-sdk-for-rust/pull/67
    • Azure storage copy blob support by @MindFlavor in https://github.com/Azure/azure-sdk-for-rust/pull/48
    • disable incremental in CI to save disk space by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/70
    • add 5 mgmt services: cosmos_db, healthcareapis, machinelearning, redis, redisenterprise by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/69
    • Add get_blob_properties method to Blob by @sd2k in https://github.com/Azure/azure-sdk-for-rust/pull/75
    • Support direct methods for Azure IoT Hub Service by @corollaries in https://github.com/Azure/azure-sdk-for-rust/pull/64
    • posts with no bodies require Content-Length 0 by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/73
    • add mgmt services with recursive types by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/76
    • newline_style = "Unix" by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/77
    • allow setting the authority_host with TokenCredentialOptions by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/71
    • Typo in KeyVaultClient causes invalid authorization request by @jefshe in https://github.com/Azure/azure-sdk-for-rust/pull/74
    • Fixed adls_gen2 E2E test by @MindFlavor in https://github.com/Azure/azure-sdk-for-rust/pull/86
    • Pluggable HTTP client for CosmosDB by @MindFlavor in https://github.com/Azure/azure-sdk-for-rust/pull/79
    • Simplify ConsistencyLevel and CosmosStruct by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/88
    • Reduce complexity of request builders and clients by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/89
    • Implemented Queue Delete Message by @Alexei-B in https://github.com/Azure/azure-sdk-for-rust/pull/90
    • Queue Delete Message to Require Put Receipt by @Alexei-B in https://github.com/Azure/azure-sdk-for-rust/pull/93
    • Break up sdk and services into two workspaces by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/87
    • Implemented Queue Peek Messages by @Alexei-B in https://github.com/Azure/azure-sdk-for-rust/pull/92
    • Support getting and setting the module/device twin for Azure IoT Hub Service by @corollaries in https://github.com/Azure/azure-sdk-for-rust/pull/82
    • Table API query/get all rewrite by @MindFlavor in https://github.com/Azure/azure-sdk-for-rust/pull/84
    • Move traits out of lib file by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/95
    • Permissions Module by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/98
    • Expose azurite_workaround feature in storage crate and use endpoint URIs from connection string in storage KeyClient by @cschaible in https://github.com/Azure/azure-sdk-for-rust/pull/101
    • Dedicated resources module by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/99
    • Add project status warning to README by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/102
    • Remove all request builder json helper files in cosmos by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/106
    • More Refactoring by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/103
    • Remove the various client traits by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/108
    • Remove the various Name traits by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/107
    • Queue methods simplification by @MindFlavor in https://github.com/Azure/azure-sdk-for-rust/pull/105
    • Add AddAsHeader trait by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/109
    • Assign perform_request to intermediate variable in get_blob_properties_builder by @sd2k in https://github.com/Azure/azure-sdk-for-rust/pull/112
    • parse metadata from header when available by @extrawurst in https://github.com/Azure/azure-sdk-for-rust/pull/117
    • Fix request builders not being Send by @MindFlavor in https://github.com/Azure/azure-sdk-for-rust/pull/114
    • Add setters macro by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/111
    • Queue refactor by @MindFlavor in https://github.com/Azure/azure-sdk-for-rust/pull/110
    • Move setters macro to core crate by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/122
    • Implemented Event Grid Client & Publish Events by @Alexei-B in https://github.com/Azure/azure-sdk-for-rust/pull/126
    • Update dependencies by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/136
    • Make APIs that take partition keys more flexible by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/137
    • Export Param by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/138
    • Change setter methods to take param as Into<T> instead of T by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/140
    • Lockdown oauth2 crate version to unblock build by @karataliu in https://github.com/Azure/azure-sdk-for-rust/pull/135
    • update services to latest rest api specs by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/143
    • upgrade services to tokio 1.0 by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/144
    • Azure Blob Storage rewrite by @MindFlavor in https://github.com/Azure/azure-sdk-for-rust/pull/119
    • Refactor CreateCollectionBuilder by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/141
    • own request Bytes & to_json by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/145
    • Add support for device identity operations by @corollaries in https://github.com/Azure/azure-sdk-for-rust/pull/142
    • Request builders updates by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/147
    • Added support for x-ms-blob-content-md5 in PutBlockList by @MindFlavor in https://github.com/Azure/azure-sdk-for-rust/pull/148
    • Support for question mark in SAS tokens by @MindFlavor in https://github.com/Azure/azure-sdk-for-rust/pull/146
    • response Bytes by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/151
    • Get blob metadata implementation by @MindFlavor in https://github.com/Azure/azure-sdk-for-rust/pull/152
    • Deny missing docs in cosmos by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/153
    • use http_client in services by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/157
    • Fix dyn TokenCredential not being sendable or syncable by @uint in https://github.com/Azure/azure-sdk-for-rust/pull/161
    • fix request body serialization in services by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/168
    • Storage Queue rewrite by @MindFlavor in https://github.com/Azure/azure-sdk-for-rust/pull/156
    • Cleanup core by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/162
    • Add support for module identities and rewrite requests by @corollaries in https://github.com/Azure/azure-sdk-for-rust/pull/158
    • Simplify a couple of pattern-matches by @huitseeker in https://github.com/Azure/azure-sdk-for-rust/pull/173
    • Support optional access tier for high performance blob accounts by @maxburke in https://github.com/Azure/azure-sdk-for-rust/pull/172
    • Blob XML parsing from manual to Serde by @MindFlavor in https://github.com/Azure/azure-sdk-for-rust/pull/176
    • Fix listing blobs when there are no blobs in a container by @carols10cents in https://github.com/Azure/azure-sdk-for-rust/pull/179
    • Add support doc by @heaths in https://github.com/Azure/azure-sdk-for-rust/pull/180
    • SignedUrlBuilder rewrite by @MindFlavor in https://github.com/Azure/azure-sdk-for-rust/pull/182
    • Clearly marking this as "unofficial" by @kurtzeborn in https://github.com/Azure/azure-sdk-for-rust/pull/183
    • Changed GetBlob return type from Vec to bytes::Bytes by @MindFlavor in https://github.com/Azure/azure-sdk-for-rust/pull/187
    • Data Lake storage (file system API) rewrite by @MindFlavor in https://github.com/Azure/azure-sdk-for-rust/pull/185
    • Table storage rewrite by @MindFlavor in https://github.com/Azure/azure-sdk-for-rust/pull/190
    • Switch to single, mandatory PartitionKey by @MindFlavor in https://github.com/Azure/azure-sdk-for-rust/pull/188
    • Storage crate reorg and cleanup by @MindFlavor in https://github.com/Azure/azure-sdk-for-rust/pull/194
    • Update readme where it references data plane crates by @damienpontifex in https://github.com/Azure/azure-sdk-for-rust/pull/192
    • Key Vault Additions: Get Key and Sign by @trevor-crypto in https://github.com/Azure/azure-sdk-for-rust/pull/189
    • update services to latest specs by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/202
    • switch services to thiserror by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/205
    • Key Vault: Remove public cloud constructor by @trevor-crypto in https://github.com/Azure/azure-sdk-for-rust/pull/207
    • Key Vault: Added getters for KeyVaultKey by @trevor-crypto in https://github.com/Azure/azure-sdk-for-rust/pull/203
    • Policy Architecture by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/204
    • Reorganize the repo to better match other SDKs by @heaths in https://github.com/Azure/azure-sdk-for-rust/pull/209
    • update mgmt services by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/211
    • feat(storage): Add the ability to delete a table entity by @notheotherben in https://github.com/Azure/azure-sdk-for-rust/pull/214
    • feat: Add support for getting a specific entity from table storage by @notheotherben in https://github.com/Azure/azure-sdk-for-rust/pull/226
    • feat(storage): Add support for querying table storage by @notheotherben in https://github.com/Azure/azure-sdk-for-rust/pull/216
    • check core for wasm by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/228
    • add AutoRust source code by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/215
    • make optional fields optional when deserializing by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/233
    • Prepend scheme to vault endpoint by @jakubfijalkowski in https://github.com/Azure/azure-sdk-for-rust/pull/235
    • Fix feature "azurite_workaround" by @arnodb in https://github.com/Azure/azure-sdk-for-rust/pull/231
    • Fix consistency response by @arnodb in https://github.com/Azure/azure-sdk-for-rust/pull/236
    • Bump version on oauth2 and fix deprecated use of Url .into_string() by @mdtro in https://github.com/Azure/azure-sdk-for-rust/pull/242
    • Revert "Fix consistency response" by @MindFlavor in https://github.com/Azure/azure-sdk-for-rust/pull/244
    • remove failure from core by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/246
    • remove paste from core by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/247
    • use thiserror in core by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/249
    • remove md5 from core by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/248
    • move xml dependencies to storage & add AzureStorageError by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/250
    • Custom core Request and Response by @MindFlavor in https://github.com/Azure/azure-sdk-for-rust/pull/230
    • Runtime update of total blob size using content_range header by @MindFlavor in https://github.com/Azure/azure-sdk-for-rust/pull/253
    • add HttpError, StreamError & CosmosError by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/251
    • azure_core::Error & identity::Error by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/266
    • Set default values for blob properties on deserialization by @ArtemTrofimushkin in https://github.com/Azure/azure-sdk-for-rust/pull/264
    • Set access_tier to None for PutBlockBlobBuilder & PutBlockListBuilder by @ArtemTrofimushkin in https://github.com/Azure/azure-sdk-for-rust/pull/262
    • Don't append / to KeyVault endpoint by @jakubfijalkowski in https://github.com/Azure/azure-sdk-for-rust/pull/243
    • Make content_range an optional field by @jefshe in https://github.com/Azure/azure-sdk-for-rust/pull/268
    • add new_http_client & fix cosmos_client by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/274
    • Endpoints for Azure Resource Manager in different Azure clouds by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/278
    • test: Add automated integration tests for Table Storage by @notheotherben in https://github.com/Azure/azure-sdk-for-rust/pull/227
    • Move create_collection over to new architecture by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/279
    • Add support for queries by @corollaries in https://github.com/Azure/azure-sdk-for-rust/pull/240
    • Format on save by @heaths in https://github.com/Azure/azure-sdk-for-rust/pull/282
    • Fix missing slashes in URLs and allow switching emulator account by @arnodb in https://github.com/Azure/azure-sdk-for-rust/pull/232
    • Fix consistency response by @arnodb in https://github.com/Azure/azure-sdk-for-rust/pull/283
    • azure_cosmos::Error & azure_storage::Error by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/285
    • Add TelemetryPolicy by @heaths in https://github.com/Azure/azure-sdk-for-rust/pull/210
    • Update dependencies by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/287
    • Convert get database operation to pipeline architecture by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/286
    • make location header optional for storage table insert response by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/296
    • fix storage table delete for azurite by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/295
    • use azurite for integration tests by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/299
    • Fix consistency properties by @arnodb in https://github.com/Azure/azure-sdk-for-rust/pull/284
    • Use ClientOptions to create Pipeline by @heaths in https://github.com/Azure/azure-sdk-for-rust/pull/288
    • Fix nits in PR #288 by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/301
    • Clean up errors by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/302
    • Fix BOM handling in queue responses by @arnodb in https://github.com/Azure/azure-sdk-for-rust/pull/309
    • add new_emulator_default by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/312
    • remove en-us from links by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/313
    • Fix Cosmos response header key by @justinbarclay in https://github.com/Azure/azure-sdk-for-rust/pull/311
    • Further simplify errors by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/306
    • Remove should_panic unit tests #307 by @u5surf in https://github.com/Azure/azure-sdk-for-rust/pull/314
    • do not skip_serializing of read only schemas by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/317
    • Continue to simplify error by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/315
    • Fix DELETE_TYPE_PERMANENT with feature azurite_workaround by @arnodb in https://github.com/Azure/azure-sdk-for-rust/pull/321
    • Bugfix: Custom deserialization for CRC64 and MD5 by @MindFlavor in https://github.com/Azure/azure-sdk-for-rust/pull/320
    • fix autorest URL now that it has been imported by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/323
    • Add expiry to key vault secret attributes by @Billy-Sheppard in https://github.com/Azure/azure-sdk-for-rust/pull/319
    • Cosmos DB - Authorization policy by @MindFlavor in https://github.com/Azure/azure-sdk-for-rust/pull/325
    • Move create, get, and replace user to pipeline architecture by @JoshGendein in https://github.com/Azure/azure-sdk-for-rust/pull/332
    • Create ListDatabases resource by @yoshuawuyts in https://github.com/Azure/azure-sdk-for-rust/pull/335
    • Move create document to pipeline architecture by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/331
    • add keyvault decrypt by @vincentserpoul in https://github.com/Azure/azure-sdk-for-rust/pull/333
    • [Cosmos] Move (create, replace, get, delete)_permission to pipeline architecture by @JoshGendein in https://github.com/Azure/azure-sdk-for-rust/pull/349
    • import autorust_openapi by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/328
    • List databases stream impl by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/340
    • split up AutoRust code generation of models & operations by @cataggar in https://github.com/Azure/azure-sdk-for-rust/pull/355
    • [Cosmos] Migrate get_document to pipelines architecture by @eholk in https://github.com/Azure/azure-sdk-for-rust/pull/357
    • Aligned multipart boundary. by @MidasLamb in https://github.com/Azure/azure-sdk-for-rust/pull/362
    • separate parameter lifetime from token credential lifetime by @esheppa in https://github.com/Azure/azure-sdk-for-rust/pull/353
    • CosmosDB: support for changing AuthorizationToken in pipeline by @MindFlavor in https://github.com/Azure/azure-sdk-for-rust/pull/339
    • Add headers and remove body from DELETE transaction operation by @MidasLamb in https://github.com/Azure/azure-sdk-for-rust/pull/367
    • Bugfix for deserializing MsiTokenResponse struct by @Billy-Sheppard in https://github.com/Azure/azure-sdk-for-rust/pull/366
    • Bugfix for Incorrect Property Name on KeyVaultGetSecretResponseAttributes by @Billy-Sheppard in https://github.com/Azure/azure-sdk-for-rust/pull/365
    • enable optionally using rustls instead of native-tls in reqwest by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/368
    • Mock testing framework via policies by @MindFlavor in https://github.com/Azure/azure-sdk-for-rust/pull/363
    • Fix copy-paste error in example by @MidasLamb in https://github.com/Azure/azure-sdk-for-rust/pull/369
    • Fix url in QueryEntityBuilder by @ankoh in https://github.com/Azure/azure-sdk-for-rust/pull/359
    • Mock transport improvements by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/374
    • Run example with mock framework as test by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/376
    • Make sure URIs are set in record and match in playback by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/380
    • Pass authorization token to cosmos client in mock_transport_framework test by @TheeGreenBee in https://github.com/Azure/azure-sdk-for-rust/pull/382
    • ✨: Support set metadata request for blob by @afitzek in https://github.com/Azure/azure-sdk-for-rust/pull/351
    • Move delete_user and list_users to pipeline architecture by @JoshGendein in https://github.com/Azure/azure-sdk-for-rust/pull/346
    • Update mock_transport docs by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/381
    • update services to latest specs by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/384
    • workaround Microsoft.Compute spec bug for location by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/385
    • autogenerate azure_mgmt_network by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/391
    • [Cosmos] Migrate (get, replace, delete)_collection to pipeline architecture by @JoshGendein in https://github.com/Azure/azure-sdk-for-rust/pull/373
    • autogenerate data-plane service SDK by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/389
    • add azure_mgmt_batch examples by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/386
    • generate the rest of the data-plane SDK by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/390
    • generate type aliases for top level definitions that are basic types by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/396
    • set content-type application/json for generated requests with a json body by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/397
    • work around applicationinsights data plane spec error by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/399
    • get api-version from the specs, not the tag by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/406
    • support x-ms-paths by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/405
    • Documentation fixes by @gauravgahlot in https://github.com/Azure/azure-sdk-for-rust/pull/387
    • roundtrip storage specs by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/403
    • allow dashes in params by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/409
    • make oauth2 authorizationUrl and scopes optional by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/408
    • path level parameters by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/407
    • improve rust identifier generation by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/412
    • remove batchai service by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/414
    • support multiple concurrent versions of generated service APIs by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/416
    • make api-version static in service crates by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/417
    • generate keyvault svc bindings by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/418
    • support file response type by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/411
    • use Url instead of String for Blob URLs by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/422
    • enable setting multiple SAS permissions at once by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/432
    • [storage] support tags in list blobs operation by @JensWalter in https://github.com/Azure/azure-sdk-for-rust/pull/410
    • adjust service crate naming by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/440
    • azure_security_keyvault by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/441
    • update the services readme by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/448
    • address clippy 0.1.56 lints in services by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/437
    • add "create path" operation (files only for now) to Azure Storage data_lake (using Pipeline architecture) by @thovoll in https://github.com/Azure/azure-sdk-for-rust/pull/358
    • [storage] support find blobs by tags operation by @JensWalter in https://github.com/Azure/azure-sdk-for-rust/pull/439
    • azure_messaging_eventgrid by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/442
    • azure_messaging_servicebus by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/443
    • azure_iot_hub by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/444
    • address clippy 0.1.56 lints in SDK by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/436
    • compile all features for services nightly & on demand by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/447
    • Use the spec's consumes for alternate forms of application/json by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/449
    • support account and service level SAS signatures by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/433
    • add simple create_task example for azure_svc_batch by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/450
    • data_lake/create_path improvements by @thovoll in https://github.com/Azure/azure-sdk-for-rust/pull/451
    • Expose crate::Result type alias for Cosmos by @yoshuawuyts in https://github.com/Azure/azure-sdk-for-rust/pull/338
    • work around batch svc enum spec errors by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/452
    • move case_insensitive_deserialize to azure_core::util by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/453
    • no longer println from within SDK by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/454
    • fix MSI authentication parsing of expires_on by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/460
    • Fix formatting scripts by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/456
    • begin history and faq by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/461
    • Refactor retry by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/458
    • Finish Cosmos database client by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/455
    • Add cancellation example to Cosmos by @yoshuawuyts in https://github.com/Azure/azure-sdk-for-rust/pull/457
    • Retry on 5xx, error on 4xx by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/465
    • delete_database must DELETE, not GET, the database by @dimbleby in https://github.com/Azure/azure-sdk-for-rust/pull/471
    • Add usage to sdk by @deven96 in https://github.com/Azure/azure-sdk-for-rust/pull/467
    • refresh tokens contain scope fields, not scopes by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/468
    • attempt to parse token errors on refresh failures by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/472
    • expose identity traits by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/469
    • check clippy as part of the build by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/485
    • support mutliple Scopes in client credential flow by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/484
    • remove unused dependencies from security_keyvault by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/487
    • Rename DefaultCredential to DefaultAzureCredential by @johnbatty in https://github.com/Azure/azure-sdk-for-rust/pull/488
    • align oauth2 crate's TLS support with reqwest support. by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/486
    • [Identity] Aggregate errors for get_token by @JoshGendein in https://github.com/Azure/azure-sdk-for-rust/pull/481
    • remove cron schedule by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/498
    • crate::Error for services by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/497
    • Remove traits AsDataLakeClient and AsFileSystemClient by @thovoll in https://github.com/Azure/azure-sdk-for-rust/pull/491
    • bug fixes to add 4 more azure_svc crates by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/505
    • Document operations by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/476
    • Add more data_lake operations by @thovoll in https://github.com/Azure/azure-sdk-for-rust/pull/495
    • Context as type map by @MindFlavor in https://github.com/Azure/azure-sdk-for-rust/pull/504
    • Create azure_storage_queues crate from azure_storage::queue by @johnbatty in https://github.com/Azure/azure-sdk-for-rust/pull/493
    • fix metadata for list blobs not populated by @afitzek in https://github.com/Azure/azure-sdk-for-rust/pull/350
    • Add rename_file_if_not_exists operation to data_lake by @thovoll in https://github.com/Azure/azure-sdk-for-rust/pull/506
    • Add 'delete file' operation to data_lake. by @thovoll in https://github.com/Azure/azure-sdk-for-rust/pull/512
    • only add getrandom as a dependency on wasm32 targets by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/513
    • enable passing reqwest features to azure_core from azure_storage by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/509
    • update auto-generated services by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/518
    • Add support to use rustls with azure-identity by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/517
    • fix signing blob URLs where the blob name contains slashes by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/514
    • Enable using rustls from service crates by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/519
    • Add KeyVault Certificate Functions by @Billy-Sheppard in https://github.com/Azure/azure-sdk-for-rust/pull/334
    • [Identity] Check status code for ManagedIdentityCredential by @JoshGendein in https://github.com/Azure/azure-sdk-for-rust/pull/511
    • PipelineContext removal by @MindFlavor in https://github.com/Azure/azure-sdk-for-rust/pull/522
    • Removed Context mutability in pipeline by @MindFlavor in https://github.com/Azure/azure-sdk-for-rust/pull/523
    • resolve parameters before codegen by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/524
    • into_future for services by @cataggar in https://github.com/Azure/azure-sdk-for-rust/pull/527
    • add operation summary doc comments by @cataggar in https://github.com/Azure/azure-sdk-for-rust/pull/530
    • fix default credential builder flags by @polivbr in https://github.com/Azure/azure-sdk-for-rust/pull/526
    • Squash warnings on main by @yoshuawuyts in https://github.com/Azure/azure-sdk-for-rust/pull/535
    • Operation Builder Future by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/510
    • first pass at polishing azure-core by @yoshuawuyts in https://github.com/Azure/azure-sdk-for-rust/pull/538
    • Refactor mock support by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/540
    • Slim down core further by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/541
    • Pageable by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/534
    • Further core cleanup by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/542
    • Identity cleanup by @rylev in https://github.com/Azure/azure-sdk-for-rust/pull/544
    • Create azure_storage_blobs crate from azure_storage::blob by @johnbatty in https://github.com/Azure/azure-sdk-for-rust/pull/499
    • Create azure_data_tables crate from azure_storage by @johnbatty in https://github.com/Azure/azure-sdk-for-rust/pull/546
    • Create azure_storage_datalake crate from azure_storage by @johnbatty in https://github.com/Azure/azure-sdk-for-rust/pull/545
    • Force operationalinsight query result rows to serde_json::Value. by @bittrance in https://github.com/Azure/azure-sdk-for-rust/pull/550
    • box operationalinsights errors by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/554
    • re-enable rustls support for recently split out storage crates by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/560
    • re-enable using rustls with data-tables by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/561
    • resolve models before codegen by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/556
    • resolve allOf before codegen by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/558
    • fix rustls support for data tables and storage blobs by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/564
    • print tag details by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/565
    • update to latest service specs by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/562
    • report tags that use multiple versions by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/567
    • add dependabot for SDK & services generator by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/566
    • Update hyper-rustls requirement from 0.22 to 0.23 by @dependabot in https://github.com/Azure/azure-sdk-for-rust/pull/572
    • Update env_logger requirement from 0.8 to 0.9 by @dependabot in https://github.com/Azure/azure-sdk-for-rust/pull/574
    • Update serde-xml-rs requirement from 0.4 to 0.5 by @dependabot in https://github.com/Azure/azure-sdk-for-rust/pull/571
    • update hmac and sha2 by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/576
    • support multiple versions by @cataggar in https://github.com/Azure/azure-sdk-for-rust/pull/577
    • update services to latest by @cataggar in https://github.com/Azure/azure-sdk-for-rust/pull/578
    • add default endpoint if in specs by @cataggar in https://github.com/Azure/azure-sdk-for-rust/pull/582
    • add Default to models by @cataggar in https://github.com/Azure/azure-sdk-for-rust/pull/580
    • impl Default for enums by @cataggar in https://github.com/Azure/azure-sdk-for-rust/pull/585
    • update comrak & config_parser by @cataggar in https://github.com/Azure/azure-sdk-for-rust/pull/587
    • Remove lifetimes from some request properties by @roeap in https://github.com/Azure/azure-sdk-for-rust/pull/586
    • Fix wrong definition of certificate authority by @rerkcp in https://github.com/Azure/azure-sdk-for-rust/pull/548
    • Remove lifetimes for file operation request properties by @roeap in https://github.com/Azure/azure-sdk-for-rust/pull/592
    • Add shared key auth to data_lake by @thovoll in https://github.com/Azure/azure-sdk-for-rust/pull/568
    • rename HTTPHeaderError to HttpHeaderError by @cataggar in https://github.com/Azure/azure-sdk-for-rust/pull/596
    • update heck to 0.4 by @cataggar in https://github.com/Azure/azure-sdk-for-rust/pull/594
    • add ::new to service models for required by @cataggar in https://github.com/Azure/azure-sdk-for-rust/pull/598
    • document all features at docs.rs by @cataggar in https://github.com/Azure/azure-sdk-for-rust/pull/603
    • drop Error suffix from cases by @cataggar in https://github.com/Azure/azure-sdk-for-rust/pull/600
    • rename azure_cosmos to azure_data_cosmos by @cataggar in https://github.com/Azure/azure-sdk-for-rust/pull/606
    • remove "Error" suffix in StreamError & HttpError cases by @cataggar in https://github.com/Azure/azure-sdk-for-rust/pull/608
    • move BA512Range to storage_blobs by @cataggar in https://github.com/Azure/azure-sdk-for-rust/pull/609
    • [datalake] Migrate file system operations to pipeline architecture by @roeap in https://github.com/Azure/azure-sdk-for-rust/pull/597
    • rename ParsingError to ParseError by @cataggar in https://github.com/Azure/azure-sdk-for-rust/pull/607
    • error source cleanup by @cataggar in https://github.com/Azure/azure-sdk-for-rust/pull/611
    • Update README SDK crate list by @johnbatty in https://github.com/Azure/azure-sdk-for-rust/pull/605
    • add source for errors in generated services by @cataggar in https://github.com/Azure/azure-sdk-for-rust/pull/613
    • [Identity] Add docs by @JoshGendein in https://github.com/Azure/azure-sdk-for-rust/pull/615
    • Upgrade examples to [email protected] by @yoshuawuyts in https://github.com/Azure/azure-sdk-for-rust/pull/619
    • identity error cleanup by @cataggar in https://github.com/Azure/azure-sdk-for-rust/pull/620
    • add blob_container.exists() by @bmc-msft in https://github.com/Azure/azure-sdk-for-rust/pull/616
    • [datalake] Add DirectoryClient and FileClient by @roeap in https://github.com/Azure/azure-sdk-for-rust/pull/610
    • publish as azure_base crate by @cataggar in https://github.com/Azure/azure-sdk-for-rust/pull/623
    • add azure_base version for azure_identity by @cataggar in https://github.com/Azure/azure-sdk-for-rust/pull/626
    • move device_code_flow example by @cataggar in https://github.com/Azure/azure-sdk-for-rust/pull/627
    • revert back to "azure_core" by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/630
    • add license for services by @ctaggart in https://github.com/Azure/azure-sdk-for-rust/pull/631

    New Contributors

    • @guywaldman made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/1
    • @gzp-crey made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/9
    • @dzmitry-lahoda made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/13
    • @MindFlavor made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/2
    • @sawlody made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/67
    • @sd2k made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/75
    • @jefshe made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/74
    • @Alexei-B made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/90
    • @cschaible made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/101
    • @extrawurst made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/117
    • @karataliu made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/135
    • @uint made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/161
    • @huitseeker made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/173
    • @maxburke made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/172
    • @carols10cents made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/179
    • @kurtzeborn made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/183
    • @damienpontifex made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/192
    • @trevor-crypto made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/189
    • @notheotherben made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/214
    • @jakubfijalkowski made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/235
    • @arnodb made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/231
    • @mdtro made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/242
    • @ArtemTrofimushkin made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/264
    • @justinbarclay made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/311
    • @u5surf made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/314
    • @Billy-Sheppard made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/319
    • @JoshGendein made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/332
    • @vincentserpoul made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/333
    • @eholk made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/357
    • @MidasLamb made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/362
    • @esheppa made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/353
    • @ankoh made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/359
    • @TheeGreenBee made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/382
    • @afitzek made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/351
    • @gauravgahlot made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/387
    • @JensWalter made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/410
    • @dimbleby made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/471
    • @deven96 made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/467
    • @polivbr made their first contribution in https://github.com/Azure/azure-sdk-for-rust/pull/526

    Full Changelog: https://github.com/Azure/azure-sdk-for-rust/commits/v2022-01-25

    Source code(tar.gz)
    Source code(zip)
Owner
Microsoft Azure
APIs, SDKs and open source projects from Microsoft Azure
Microsoft Azure
An (unofficial) Rust library for querying db-ip.com data

db_ip An (unofficial) library for querying db-ip.com CSV databases in safe Rust. This library is not affiliated with or endorsed by db-ip.com. Be advi

Finn Bear 4 Dec 2, 2022
Unofficial python bindings for the rust llm library. πŸβ€οΈπŸ¦€

llm-rs-python: Python Bindings for Rust's llm Library Welcome to llm-rs, an unofficial Python interface for the Rust-based llm library, made possible

Lukas Kreussel 7 May 20, 2023
RusTTS is an unofficial Coqui TTS implementation

RusTTS RusTTS is an unofficial Coqui TTS implementation. Currently, only the YourTTS for VC has been implemented. So, feel free to contribute us to ma

Ho Kim 13 Sep 12, 2022
Rust for the Windows App SDK

Rust for the Windows App SDK The windows-app crate makes the Windows App SDK (formerly known as Project Reunion) available to Rust developers.

Microsoft 212 Nov 22, 2022
Rust SDK for writing contracts for Stellar Jump Cannon

rs-stellar-contract-sdk Rust SDK for writing contracts for Stellar Jump Cannon. This repository contains code that is in early development, incomplete

Stellar 44 Dec 28, 2022
Rust SDK for Stellar XDR.

rs-stellar-xdr Rust SDK for Stellar XDR. This repository contains code that is in early development, incomplete, not tested, and not recommended for u

Stellar 14 Dec 15, 2022
First Git on Rust is reimplementation with rust in order to learn about rust, c and git.

First Git on Rust First Git on Rust is reimplementation with rust in order to learn about rust, c and git. Reference project This project refer to the

Nobkz 1 Jan 28, 2022
A stupid macro that compiles and executes Rust and spits the output directly into your Rust code

inline-rust This is a stupid macro inspired by inline-python that compiles and executes Rust and spits the output directly into your Rust code. There

William 19 Nov 29, 2022
Learn-rust - An in-depth resource to learn Rust πŸ¦€

Learning Rust ?? Hello friend! ?? Welcome to my "Learning Rust" repo, a home for my notes as I'm learning Rust. I'm structuring everything into lesson

Lazar Nikolov 7 Jan 28, 2022
A highly modular Bitcoin Lightning library written in Rust. Its Rust-Lightning, not Rusty's Lightning!

Rust-Lightning is a Bitcoin Lightning library written in Rust. The main crate, lightning, does not handle networking, persistence, or any other I/O. Thus, it is runtime-agnostic, but users must implement basic networking logic, chain interactions, and disk storage. More information is available in the About section.

Lightning Dev Kit 850 Jan 3, 2023
Telegram bot help you to run Rust code in Telegram via Rust playground

RPG_BOT (Rust Playground Bot) Telegram bot help you to run Rust code in Telegram via Rust playground Bot interface The bot supports 3 straightforward

TheAwiteb 8 Dec 6, 2022
`Debug` in rust, but only supports valid rust syntax and outputs nicely formatted using pretty-please

dbg-pls A Debug-like trait for rust that outputs properly formatted code Showcase Take the following code: let code = r#" [ "Hello, World!

Conrad Ludgate 12 Dec 22, 2022
Playing with web dev in Rust. This is a sample Rust microservice that can be deployed on Kubernetes.

Playing with web dev in Rust. This is a sample Rust microservice that can be deployed on Kubernetes.

AndrΓ© Gomes 10 Nov 17, 2022
πŸ€ Building a federated alternative to reddit in rust

Lemmy A link aggregator / Reddit clone for the fediverse. Join Lemmy Β· Documentation Β· Report Bug Β· Request Feature Β· Releases Β· Code of Conduct About

LemmyNet 7.2k Jan 3, 2023
Applied offensive security with Rust

Black Hat Rust - Early Access Deep dive into offensive security with the Rust programming language Buy the book now! Summary Whether in movies or main

Sylvain Kerkour 2.2k Jan 2, 2023
Rholang runtime in rust

Rholang Runtime A rholang runtime written in Rust.

Jerry.Wang 17 Sep 23, 2022
Easy-to-use optional function arguments for Rust

OptArgs uses const generics to ensure compile-time correctness. I've taken the liberty of expanding and humanizing the macros in the reference examples.

Jonathan Kelley 37 Nov 18, 2022
A language server for lua written in rust

lua-analyzer lua-analyzer is a lsp server for lua. This is mostly for me to learn the lsp protocol and language analysis so suggestions are helpful. T

null 61 Dec 11, 2022
Rust library that can be reset if you think it's slow

GoodbyeKT Rust library that can be reset if you think it's slow

null 39 Jun 16, 2022