-
Notifications
You must be signed in to change notification settings - Fork 229
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Split nb and can traits to separate crates. #394
Conversation
r? @ryankurte (rust-highfive has picked a reviewer for you, use r? to override) |
Could you add links to |
We discussed this a bunch at today's meeting (logs starting here), a few key points:
|
outcomes from #394 (comment) sound good to me! (looking forward to daylight savings here in a couple of months so the meetings are a paletable 08:00 instead of 06:00 here 🤣) |
Discussed in today's meeting: Let's go with putting the CAN traits into an |
d4b3c7b
to
f1c4356
Compare
bors try |
This should be now ready to go :) The changelog checker is angry because I moved |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks! I added a few comments.
If you do not find any alternative, we can remove the changelog check since it does not seem to work with workspace repos.
Note that this includes removing the blocking
modules from embedded-hal::X
and puts all the traits there.
This is in line with only supporting one execution model but should be noted as such.
Please add a changelog entry to the e-h crate about it.
13aa203
to
3aacca7
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
After a rebase this should be good to go.
In the future let's please avoid such huge patchsets.
It just makes reviewing much more time-intensive and adds delay.
There are several easier-to-review PRs hiding inside this one.
da6d127
to
66f5909
Compare
Rebased, and split off the clippy stuff to a separate PR (#406) |
- Move "project-wide" stuff (CoC, legal boilerplate) to the main README. - List crates in main README.
66f5909
to
d417c60
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks!
bors r+
394: Split nb and can traits to separate crates. r=eldruin a=Dirbaio Following up from #177 (comment), this PR splits `nb` and `can` traits to separate crates. I propose keeping these crates (and `embedded-hal-async`) separate forever. (instead of merging EHA into EH when stable as we originally planned when we created EHA). Reasons for splitting `nb`: - its future is unclear. Some people who would like to see `nb` deprecated. By splitting, if we do deprecate it, we won't get stuck with it in the main `embedded-hal` crate forever. - It makes the module paths in the main crate cleaner. - Traits tied to a particular "execution model" in their own crates, which make the overall structure easier to understand IMO. Reasons for splitting `can`: - It has some open concerns: #381 #387 - Even if we do solve these, it's nice to have separate crates for the "more specialized" traits so that they can be major-bumped in the future if more concerns arise, without having to major-bump the main `embedded-hal` crate. TODO: - [x] Name it `embedded-can`, not `embedded-hal-can`. - [x] Move/remove docs/examples from the main crate that mention `nb`. - [x] Mention the subcrates from the main crate's docs. - [x] Add CI - [x] move `embedded-hal` to a subdir as well - [x] What should the nb, can crate versions be? 1.0? (no opinion on this from me). - [x] can: 0.4 - [x] nb: 1.0 Co-authored-by: Dario Nieuwenhuis <[email protected]>
Build failed: |
bors retry |
👎 Rejected by too few approved reviews |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
bors r+
406: Enforce clippy in CI r=therealprof a=Dirbaio Depends on #394 CI wasn't actually enforcing clippy, because `actions-rs/clippy-check` needs to run as `pull_request_target` to get the token to add the "fancy" comments to the diff. It does nothing when ran as `pull_request`. `pull_request_target` is troublesome because it uses the yaml from `master` instead of from the PR branch, which means when bumping clippy you don't know whether CI passes until *after* it's merged. I've made it use `cargo clippy` instead, which works on `pull_request`. Co-authored-by: Dario Nieuwenhuis <[email protected]>
Following up from #177 (comment), this PR splits
nb
andcan
traits to separate crates.I propose keeping these crates (and
embedded-hal-async
) separate forever. (instead of merging EHA into EH when stable as we originally planned when we created EHA).Reasons for splitting
nb
:nb
deprecated. By splitting, if we do deprecate it, we won't get stuck with it in the mainembedded-hal
crate forever.Reasons for splitting
can
:can::ErrorKind::Acknowledge
should be returned #387embedded-hal
crate.TODO:
embedded-can
, notembedded-hal-can
.nb
.embedded-hal
to a subdir as well