You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This is the suggested approach to adding a new trait to `embedded-hal`
54
-
55
-
### Research / Discussion
56
-
57
-
Ideally, before proposing a new trait, or set of traits, you should check for an existing issue
58
-
suggesting the need for the trait, as well as any related works / use cases / requirements that
59
-
are useful to consider in the design of the trait.
60
-
61
-
These issues will be labeled as `discussion` in the issue tracker.
62
-
63
-
### Implementation / Demonstration
64
-
65
-
Proposed traits should then be implemented and demonstrated, either by forking `embedded-hal` or by creating a new crate with the intent of integrating this into `embedded-hal` once the traits have stabilized. You may find [cargo workspaces](https://doc.rust-lang.org/book/ch14-03-cargo-workspaces.html) and [patch](https://doc.rust-lang.org/edition-guide/rust-2018/cargo-and-crates-io/replacing-dependencies-with-patch.html) useful for the forking approach.
66
-
67
-
Traits should be demonstrated with at least *two* implementations on different platforms and *one* generic driver built on the trait. Where it is possible we suggest an implementation on a microcontroller, and implementation for [linux](https://github.com/rust-embedded/linux-embedded-hal), and a driver (or drivers where requirements are more complex) with bounds using the trait.
68
-
69
-
### Proposing a trait
70
-
71
-
Once the trait has been demonstrated a PR should be opened to merge the new trait(s) into `embedded-hal`. This should include a link to the previous discussion issue.
72
-
73
-
If there is determined to be more than one alternative then there should be further discussion to
74
-
try to single out the best option. Once there is consensus this will be merged into the `embedded-hal` repository.
75
-
76
-
These issues / PRs will be labeled as `proposal`s in the issue tracker.
51
+
## Documents
77
52
53
+
-[How-to: add a new trait](docs/how-to-add-a-new-trait.md)
78
54
79
55
## Implementations and drivers
80
-
81
56
For a list of `embedded-hal` implementations and driver crates check the [awesome-embedded-rust]
This is the suggested approach to adding a new trait to `embedded-hal`
4
+
5
+
## Research / Discussion
6
+
7
+
Ideally, before proposing a new trait, or set of traits, you should check for an existing issue
8
+
suggesting the need for the trait, as well as any related works / use cases / requirements that
9
+
are useful to consider in the design of the trait.
10
+
11
+
These issues will be labeled as `discussion` in the issue tracker.
12
+
13
+
## Implementation / Demonstration
14
+
15
+
Proposed traits should then be implemented and demonstrated, either by forking `embedded-hal` or by creating a new crate with the intent of integrating this into `embedded-hal` once the traits have stabilized. You may find [cargo workspaces](https://doc.rust-lang.org/book/ch14-03-cargo-workspaces.html) and [patch](https://doc.rust-lang.org/edition-guide/rust-2018/cargo-and-crates-io/replacing-dependencies-with-patch.html) useful for the forking approach.
16
+
17
+
Traits should be demonstrated with at least *two* implementations on different platforms and *one* generic driver built on the trait. Where it is possible we suggest an implementation on a microcontroller, and implementation for [linux](https://github.com/rust-embedded/linux-embedded-hal), and a driver (or drivers where requirements are more complex) with bounds using the trait.
18
+
19
+
## Proposing a trait
20
+
21
+
Once the trait has been demonstrated a PR should be opened to merge the new trait(s) into `embedded-hal`. This should include a link to the previous discussion issue.
22
+
23
+
If there is determined to be more than one alternative then there should be further discussion to
24
+
try to single out the best option. Once there is consensus this will be merged into the `embedded-hal` repository.
25
+
26
+
These issues / PRs will be labeled as `proposal`s in the issue tracker.
0 commit comments