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
368: Document MSRV upgrade and improve readme r=ryankurte a=eldruin
I moved some of the sections in the README out into separate documents in a `docs` folder.
I have left the section about alpha releases in there, though. I think it is important enough to grant it its placement.
I have added a document describing a policy to upgrade the MSRV, since this will eventually be important once we have released the `1.0.0` version.
TL;DR: The MSRV may be updated in major or minor releases but not on patch releases.
Closes#364
Co-authored-by: Diego Barrios Romero <[email protected]>
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)
54
+
-[Version policy](docs/version-policy.md)
55
+
-[MSRV](docs/msrv.md)
78
56
79
57
## Implementations and drivers
80
58
81
-
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