Skip to content

Commit

Permalink
Initial Rust guidelines (#7267)
Browse files Browse the repository at this point in the history
* Initial Rust guidelines, though still a WIP

* Resolve PR feedback
  • Loading branch information
heaths authored Mar 12, 2024
1 parent e62f66c commit cb1a267
Show file tree
Hide file tree
Showing 6 changed files with 146 additions and 81 deletions.
6 changes: 6 additions & 0 deletions _data/sidebars/general_sidebar.yml
Original file line number Diff line number Diff line change
Expand Up @@ -165,6 +165,12 @@ entries:
url: /golang_introduction.html
- title: Implementation
url: /golang_implementation.html
- title: Rust Guidelines
folderitems:
- title: Design
url: /rust_introduction.html
- title: Implementation
url: /rust_implementation.html
- title: GitHub Repos
folderitems:
- title: Guidelines Contributions
Expand Down
1 change: 1 addition & 0 deletions _includes/refs.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@
[java-guidelines]: {{ site.baseurl }}{% link docs/java/introduction.md %}
[python-guidelines]: {{ site.baseurl }}{% link docs/python/design.md %}
[typescript-guidelines]: {{ site.baseurl }}{% link docs/typescript/introduction.md %}
[rust-guidelines]: {{ site.baseurl }}{{% link docs/rust/introduction.md %}}

[android-latest-releases]: {{ site.baseurl }}{% link releases/latest/android.md %}
[dotnet-latest-releases]: {{ site.baseurl }}{% link releases/latest/dotnet.md %}
Expand Down
4 changes: 0 additions & 4 deletions docs/rust/approved_dependencies.md

This file was deleted.

12 changes: 6 additions & 6 deletions docs/rust/implementation.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: "Rust Guidelines: Implementation"
keywords: guidelines rust
permalink: rust_guidelines.html
permalink: rust_implementation.html
folder: rust
sidebar: general_sidebar
---
Expand All @@ -12,17 +12,17 @@ sidebar: general_sidebar
## API Implementation

This section describes guidelines for implementing Azure SDK client libraries. Please note that some of these guidelines are automatically enforced by code generation tools.
This section describes guidelines for implementing Azure SDK client libraries. Please note that some of these guidelines are automatically enforced by code generation tools.

### Service Client

When configuring your client library, particular care must be taken to ensure that the consumer of your client library can properly configure the connectivity to your Azure service both globally (along with other client libraries the consumer is using) and specifically with your client library.

> TODO: add a brief mention of the approach to implementing service clients.
> TODO: add a brief mention of the approach to implementing service clients.
#### Service Methods

> TODO: Briefly introduce that service methods are implemented via an `HttpPipeline` instance. Mention that much of this is done for you using code generation.
> TODO: Briefly introduce that service methods are implemented via an `HttpPipeline` instance. Mention that much of this is done for you using code generation.
##### HttpPipeline

Expand All @@ -32,7 +32,7 @@ The following example shows a typical way of using `HttpPipeline` to implement a
##### HttpPipelinePolicy/Custom Policies

The HTTP pipeline includes a number of policies that all requests pass through. Examples of policies include setting required headers, authentication, generating a request ID, and implementing proxy authentication. `HttpPipelinePolicy` is the base type of all policies (plugins) of the `HttpPipeline`. This section describes guidelines for designing custom policies.
The HTTP pipeline includes a number of policies that all requests pass through. Examples of policies include setting required headers, authentication, generating a request ID, and implementing proxy authentication. `HttpPipelinePolicy` is the base type of all policies (plugins) of the `HttpPipeline`. This section describes guidelines for designing custom policies.

> TODO: Show how to customize a pipeline
Expand Down Expand Up @@ -166,7 +166,7 @@ In addition to [general parameter validation guidelines](introduction.md#rust-pa
#### Tooling

We use a common build and test pipeline to provide for automatic distribution of client libraries. To support this, we use common tooling.
We use a common build and test pipeline to provide for automatic distribution of client libraries. To support this, we use common tooling.

> TODO: Add section> TODO: Add section
Expand Down
Loading

0 comments on commit cb1a267

Please sign in to comment.