Commit Graph

20 Commits

Author SHA1 Message Date
Dario Nieuwenhuis
4857fefc90 ci: simplify, test MSRV.
- Use separate jobs instead of `matrix`. The Github Actions matrix is very cursed, especially if you use `include`. We don't have that many combinations, IMO doing separate jobs is way more straightforward and only slightly more verbose.
- `embedded-hal` needs `rust-version = 1.60` because it uses `dep:`.

Fixes #538
2023-12-13 01:30:40 +01:00
Dario Nieuwenhuis
2767cbdce1 release embedded-hal-* v1.0.0-rc.2, embedded-io-{async,adapters} v0.6.1 2023-11-29 14:48:23 +01:00
Dario Nieuwenhuis
9e939bb3e7 Merge pull request #534 from Dirbaio/feature-nightly-only
Use `feature()` on nightly toolchains only.
2023-11-28 19:32:49 +00:00
Dario Nieuwenhuis
c10ddaec5a Merge pull request #490 from Sh3Rm4n/chore/rust-version
Use rust-version field
2023-11-28 19:18:30 +00:00
Dario Nieuwenhuis
c9fbac0d80 Use feature() on nightly toolchains only.
`feature()` is only allowed on Nightly, it's completely disallowed on stable and beta
even for already-stabilized features. So, we autodetect whether the user is using nightly
and conditionally use `feature()`. This allows the crates to Just Work on current 1.75 beta
and will also Just Work when 1.75 stable is out.

Keeping `feature()` is desirable to keep support for:

- Espressif's xtensa rustc fork. (they build from the stable branch but enable use of `feature()`, so latest xtensa rustc still requires `feature()`)
- Users of older nightlies

Once xtensa rust 1.75 is out, we can remove this (upstream nightlies that require `feature()` will be quite old by then, so dropping support for them should be OK).

I decided to not use already-made crates like `rustversion` to do this because they're quite big and do way more than what we need, so I felt badd adding another dep. The code is inspired from `rustversion`'s build.rs.
2023-11-28 19:59:32 +01:00
Yuri Astrakhan
a7eb603bc4 A few minor clippy nits
* semicolons
* doc links
* unused Error namespace
2023-11-25 00:03:26 -05:00
Rasmus Melchior Jacobsen
ab46bcece0 Update CHANGELOG.md 2023-11-06 13:52:45 +01:00
Rasmus Melchior Jacobsen
1f9da539b4 Handle reading from Tokio with empty buf as a special case 2023-11-06 08:57:39 +01:00
Fabian Viöl
7414e2129b Use rust-version field 2023-10-21 09:49:53 +02:00
Dario Nieuwenhuis
a4dcba4cde Add allow(stable_features).
Needed to pass deny-warnings on CI without breaking older nightlies.
2023-10-03 20:32:56 +02:00
Dario Nieuwenhuis
e632f16169 Release embedded-io{,-async,-adapters} v0.6.0 2023-10-02 15:29:20 +02:00
Adam Greig
9d40f6b142 Update embedded-io-adapters to swap Ok(0) for Err when required 2023-09-14 00:41:02 +01:00
Yuri Astrakhan
10a7effe16 Inline a few format args for readability
This existed since 1.58, so safe for MSRV
2023-08-31 23:10:52 -04:00
Dario Nieuwenhuis
2c9db0d682 io-adapters: add support for BufRead for futures and tokio. 2023-08-25 20:49:13 +02:00
Matt Johnston
cb1fdf2ec4 Fix doc links for adapters, add features
The doc links in the README needed updating
Include tokio and futures features in docs
2023-08-15 22:20:24 +08:00
Dario Nieuwenhuis
6ea5659bab io: Release embedded-io 0.5 2023-08-06 15:41:18 +02:00
Dario Nieuwenhuis
428c6a14d1 io/adapters: derive Clone for ToStd. 2023-08-06 15:33:23 +02:00
Scott Mabin
332d0cea4d Missing ReadExact & WriteAll error impls for std
- Add `ReadExactError` for `std::io::Error`
- Add `WriteAllError` for `std::io::Error`
2023-07-15 18:17:05 +02:00
Dario Nieuwenhuis
7d975f025d Bump MSRV to 1.60
Needed for namespaced features (`dep:` in Cargo.toml)
2023-07-15 16:04:24 +02:00
Dario Nieuwenhuis
8db8b0bb21 io: add separate embedded-io-adapters crate, add futures/tokio support.
If we want to release `embedded-io` 1.0 and the adapters live there, we can't make any
breaking changes to them after release. Putting them in a separate crate
allows doing breaking changes without breaking everyone using the IO traits.
2023-07-15 16:04:24 +02:00