aboutsummaryrefslogtreecommitdiff
path: root/embassy-net
diff options
context:
space:
mode:
authorDario Nieuwenhuis <[email protected]>2023-08-07 13:43:09 +0200
committerGitHub <[email protected]>2023-08-07 13:43:09 +0200
commit5d5cd2371504915a531e669dce3558485a51a2e1 (patch)
tree5d0093e9e5005d3a946e92686a9dc79565c3043f /embassy-net
parent77844e2055319e1af7dd50fdb2e39ef88c6a5010 (diff)
Update to embedded-io 0.5 (#1752)
Diffstat (limited to 'embassy-net')
-rw-r--r--embassy-net/Cargo.toml11
-rw-r--r--embassy-net/src/dns.rs2
-rw-r--r--embassy-net/src/tcp.rs34
3 files changed, 23 insertions, 24 deletions
diff --git a/embassy-net/Cargo.toml b/embassy-net/Cargo.toml
index 15b3ba2d2..0c551f204 100644
--- a/embassy-net/Cargo.toml
+++ b/embassy-net/Cargo.toml
@@ -14,11 +14,11 @@ categories = [
14[package.metadata.embassy_docs] 14[package.metadata.embassy_docs]
15src_base = "https://github.com/embassy-rs/embassy/blob/embassy-net-v$VERSION/embassy-net/src/" 15src_base = "https://github.com/embassy-rs/embassy/blob/embassy-net-v$VERSION/embassy-net/src/"
16src_base_git = "https://github.com/embassy-rs/embassy/blob/$COMMIT/embassy-net/src/" 16src_base_git = "https://github.com/embassy-rs/embassy/blob/$COMMIT/embassy-net/src/"
17features = ["nightly", "unstable-traits", "defmt", "tcp", "udp", "dns", "dhcpv4", "proto-ipv6", "medium-ethernet", "medium-ip", "medium-ieee802154", "igmp"] 17features = ["nightly", "defmt", "tcp", "udp", "dns", "dhcpv4", "proto-ipv6", "medium-ethernet", "medium-ip", "medium-ieee802154", "igmp"]
18target = "thumbv7em-none-eabi" 18target = "thumbv7em-none-eabi"
19 19
20[package.metadata.docs.rs] 20[package.metadata.docs.rs]
21features = ["nightly", "unstable-traits", "defmt", "tcp", "udp", "dns", "dhcpv4", "proto-ipv6", "medium-ethernet", "medium-ip", "medium-ieee802154", "igmp"] 21features = ["nightly", "defmt", "tcp", "udp", "dns", "dhcpv4", "proto-ipv6", "medium-ethernet", "medium-ip", "medium-ieee802154", "igmp"]
22 22
23[features] 23[features]
24default = [] 24default = []
@@ -26,8 +26,7 @@ std = []
26 26
27defmt = ["dep:defmt", "smoltcp/defmt", "embassy-net-driver/defmt"] 27defmt = ["dep:defmt", "smoltcp/defmt", "embassy-net-driver/defmt"]
28 28
29nightly = ["dep:embedded-io", "embedded-io?/async", "dep:embedded-nal-async"] 29nightly = ["dep:embedded-io-async", "dep:embedded-nal-async"]
30unstable-traits = []
31 30
32udp = ["smoltcp/socket-udp"] 31udp = ["smoltcp/socket-udp"]
33tcp = ["smoltcp/socket-tcp"] 32tcp = ["smoltcp/socket-tcp"]
@@ -53,7 +52,7 @@ smoltcp = { version = "0.10.0", default-features = false, features = [
53embassy-net-driver = { version = "0.1.0", path = "../embassy-net-driver" } 52embassy-net-driver = { version = "0.1.0", path = "../embassy-net-driver" }
54embassy-time = { version = "0.1.2", path = "../embassy-time" } 53embassy-time = { version = "0.1.2", path = "../embassy-time" }
55embassy-sync = { version = "0.2.0", path = "../embassy-sync" } 54embassy-sync = { version = "0.2.0", path = "../embassy-sync" }
56embedded-io = { version = "0.4.0", optional = true } 55embedded-io-async = { version = "0.5.0", optional = true }
57 56
58managed = { version = "0.8.0", default-features = false, features = [ "map" ] } 57managed = { version = "0.8.0", default-features = false, features = [ "map" ] }
59heapless = { version = "0.7.5", default-features = false } 58heapless = { version = "0.7.5", default-features = false }
@@ -62,5 +61,5 @@ generic-array = { version = "0.14.4", default-features = false }
62stable_deref_trait = { version = "1.2.0", default-features = false } 61stable_deref_trait = { version = "1.2.0", default-features = false }
63futures = { version = "0.3.17", default-features = false, features = [ "async-await" ] } 62futures = { version = "0.3.17", default-features = false, features = [ "async-await" ] }
64atomic-pool = "1.0" 63atomic-pool = "1.0"
65embedded-nal-async = { version = "0.4.0", optional = true } 64embedded-nal-async = { version = "0.5.0", optional = true }
66atomic-polyfill = { version = "1.0" } 65atomic-polyfill = { version = "1.0" }
diff --git a/embassy-net/src/dns.rs b/embassy-net/src/dns.rs
index 94f75f108..fdd45b314 100644
--- a/embassy-net/src/dns.rs
+++ b/embassy-net/src/dns.rs
@@ -68,7 +68,7 @@ where
68 } 68 }
69} 69}
70 70
71#[cfg(all(feature = "unstable-traits", feature = "nightly"))] 71#[cfg(feature = "nightly")]
72impl<'a, D> embedded_nal_async::Dns for DnsSocket<'a, D> 72impl<'a, D> embedded_nal_async::Dns for DnsSocket<'a, D>
73where 73where
74 D: Driver + 'static, 74 D: Driver + 'static,
diff --git a/embassy-net/src/tcp.rs b/embassy-net/src/tcp.rs
index 367675b13..c903fb245 100644
--- a/embassy-net/src/tcp.rs
+++ b/embassy-net/src/tcp.rs
@@ -382,29 +382,29 @@ impl<'d> TcpIo<'d> {
382mod embedded_io_impls { 382mod embedded_io_impls {
383 use super::*; 383 use super::*;
384 384
385 impl embedded_io::Error for ConnectError { 385 impl embedded_io_async::Error for ConnectError {
386 fn kind(&self) -> embedded_io::ErrorKind { 386 fn kind(&self) -> embedded_io_async::ErrorKind {
387 embedded_io::ErrorKind::Other 387 embedded_io_async::ErrorKind::Other
388 } 388 }
389 } 389 }
390 390
391 impl embedded_io::Error for Error { 391 impl embedded_io_async::Error for Error {
392 fn kind(&self) -> embedded_io::ErrorKind { 392 fn kind(&self) -> embedded_io_async::ErrorKind {
393 embedded_io::ErrorKind::Other 393 embedded_io_async::ErrorKind::Other
394 } 394 }
395 } 395 }
396 396
397 impl<'d> embedded_io::Io for TcpSocket<'d> { 397 impl<'d> embedded_io_async::ErrorType for TcpSocket<'d> {
398 type Error = Error; 398 type Error = Error;
399 } 399 }
400 400
401 impl<'d> embedded_io::asynch::Read for TcpSocket<'d> { 401 impl<'d> embedded_io_async::Read for TcpSocket<'d> {
402 async fn read(&mut self, buf: &mut [u8]) -> Result<usize, Self::Error> { 402 async fn read(&mut self, buf: &mut [u8]) -> Result<usize, Self::Error> {
403 self.io.read(buf).await 403 self.io.read(buf).await
404 } 404 }
405 } 405 }
406 406
407 impl<'d> embedded_io::asynch::Write for TcpSocket<'d> { 407 impl<'d> embedded_io_async::Write for TcpSocket<'d> {
408 async fn write(&mut self, buf: &[u8]) -> Result<usize, Self::Error> { 408 async fn write(&mut self, buf: &[u8]) -> Result<usize, Self::Error> {
409 self.io.write(buf).await 409 self.io.write(buf).await
410 } 410 }
@@ -414,21 +414,21 @@ mod embedded_io_impls {
414 } 414 }
415 } 415 }
416 416
417 impl<'d> embedded_io::Io for TcpReader<'d> { 417 impl<'d> embedded_io_async::ErrorType for TcpReader<'d> {
418 type Error = Error; 418 type Error = Error;
419 } 419 }
420 420
421 impl<'d> embedded_io::asynch::Read for TcpReader<'d> { 421 impl<'d> embedded_io_async::Read for TcpReader<'d> {
422 async fn read(&mut self, buf: &mut [u8]) -> Result<usize, Self::Error> { 422 async fn read(&mut self, buf: &mut [u8]) -> Result<usize, Self::Error> {
423 self.io.read(buf).await 423 self.io.read(buf).await
424 } 424 }
425 } 425 }
426 426
427 impl<'d> embedded_io::Io for TcpWriter<'d> { 427 impl<'d> embedded_io_async::ErrorType for TcpWriter<'d> {
428 type Error = Error; 428 type Error = Error;
429 } 429 }
430 430
431 impl<'d> embedded_io::asynch::Write for TcpWriter<'d> { 431 impl<'d> embedded_io_async::Write for TcpWriter<'d> {
432 async fn write(&mut self, buf: &[u8]) -> Result<usize, Self::Error> { 432 async fn write(&mut self, buf: &[u8]) -> Result<usize, Self::Error> {
433 self.io.write(buf).await 433 self.io.write(buf).await
434 } 434 }
@@ -440,7 +440,7 @@ mod embedded_io_impls {
440} 440}
441 441
442/// TCP client compatible with `embedded-nal-async` traits. 442/// TCP client compatible with `embedded-nal-async` traits.
443#[cfg(all(feature = "unstable-traits", feature = "nightly"))] 443#[cfg(feature = "nightly")]
444pub mod client { 444pub mod client {
445 use core::cell::UnsafeCell; 445 use core::cell::UnsafeCell;
446 use core::mem::MaybeUninit; 446 use core::mem::MaybeUninit;
@@ -527,13 +527,13 @@ pub mod client {
527 } 527 }
528 } 528 }
529 529
530 impl<'d, const N: usize, const TX_SZ: usize, const RX_SZ: usize> embedded_io::Io 530 impl<'d, const N: usize, const TX_SZ: usize, const RX_SZ: usize> embedded_io_async::ErrorType
531 for TcpConnection<'d, N, TX_SZ, RX_SZ> 531 for TcpConnection<'d, N, TX_SZ, RX_SZ>
532 { 532 {
533 type Error = Error; 533 type Error = Error;
534 } 534 }
535 535
536 impl<'d, const N: usize, const TX_SZ: usize, const RX_SZ: usize> embedded_io::asynch::Read 536 impl<'d, const N: usize, const TX_SZ: usize, const RX_SZ: usize> embedded_io_async::Read
537 for TcpConnection<'d, N, TX_SZ, RX_SZ> 537 for TcpConnection<'d, N, TX_SZ, RX_SZ>
538 { 538 {
539 async fn read(&mut self, buf: &mut [u8]) -> Result<usize, Self::Error> { 539 async fn read(&mut self, buf: &mut [u8]) -> Result<usize, Self::Error> {
@@ -541,7 +541,7 @@ pub mod client {
541 } 541 }
542 } 542 }
543 543
544 impl<'d, const N: usize, const TX_SZ: usize, const RX_SZ: usize> embedded_io::asynch::Write 544 impl<'d, const N: usize, const TX_SZ: usize, const RX_SZ: usize> embedded_io_async::Write
545 for TcpConnection<'d, N, TX_SZ, RX_SZ> 545 for TcpConnection<'d, N, TX_SZ, RX_SZ>
546 { 546 {
547 async fn write(&mut self, buf: &[u8]) -> Result<usize, Self::Error> { 547 async fn write(&mut self, buf: &[u8]) -> Result<usize, Self::Error> {