# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO # # When uploading crates to the registry Cargo will automatically # "normalize" Cargo.toml files for maximal compatibility # with all versions of Cargo and also rewrite `path` dependencies # to registry (e.g., crates.io) dependencies. # # If you are reading this file be aware that the original Cargo.toml # will likely look very different (and much more reasonable). # See Cargo.toml.orig for the original contents. [package] edition = "2021" rust-version = "1.79" name = "ethercrab" version = "0.4.4" exclude = [ "dumps", "doc", "NOTES.md", "SPECNOTES.md", ] description = "An EtherCAT master in pure Rust that is no_std compatible" documentation = "https://docs.rs/ethercrab" readme = "README.md" keywords = [ "ethercat", "beckhoff", "automation", "fieldbus", "soem", ] categories = [ "science::robotics", "no-std", "network-programming", ] license = "MIT OR Apache-2.0" repository = "https://github.com/ethercrab-rs/ethercrab" resolver = "2" [package.metadata.docs.rs] default-target = "x86_64-unknown-linux-gnu" targets = [ "x86_64-unknown-linux-gnu", "x86_64-pc-windows-gnu", ] [profile.profiling] debug = 2 inherits = "release" [[example]] name = "akd" required-features = ["std"] [[example]] name = "dc" required-features = ["std"] [[example]] name = "ec400" required-features = ["std"] [[example]] name = "ek1100" required-features = ["std"] [[example]] name = "multiple-groups" required-features = ["std"] [[example]] name = "dump-eeprom" required-features = [ "std", "__internals", ] [[bench]] name = "pdu_loop" harness = false [[bench]] name = "frame" harness = false [dependencies.async-io] version = "2.0.0" optional = true [dependencies.atomic-waker] version = "1.1.2" [dependencies.atomic_enum] version = "0.3.0" [dependencies.atomic_refcell] version = "0.1.13" [dependencies.bitflags] version = "2.4.1" [dependencies.defmt] version = "0.3.5" optional = true [dependencies.embassy-time] version = "0.3.0" [dependencies.embedded-io-async] version = "0.6.0" default-features = false [dependencies.ethercrab-wire] version = "0.1.4" [dependencies.futures-lite] version = "2.0.0" default-features = false [dependencies.heapless] version = "0.8.0" [dependencies.log] version = "0.4.20" optional = true default-features = false [dependencies.sealed] version = "0.5.0" [dependencies.serde] version = "1.0.190" features = ["derive"] optional = true [dependencies.smlang] version = "0.6.0" [dependencies.smoltcp] version = "0.11.0" features = [ "proto-ipv4", "socket-raw", "medium-ethernet", ] default-features = false [dev-dependencies.anyhow] version = "1.0.82" [dev-dependencies.arbitrary] version = "1.3.1" features = ["derive"] [dev-dependencies.cassette] version = "0.2.5" [dev-dependencies.core_affinity] version = "0.8.1" [dev-dependencies.criterion] version = "0.5.1" features = ["cargo_bench_support"] default-features = false [dev-dependencies.csv] version = "1.3.0" [dev-dependencies.env_logger] version = "0.11.1" [dev-dependencies.heckcheck] version = "2.0.1" [dev-dependencies.pcap-file] version = "2.0.0" [dev-dependencies.pretty_assertions] version = "1.4.0" [dev-dependencies.serde] version = "1.0.190" features = ["derive"] default-features = false [dev-dependencies.signal-hook] version = "0.3.17" [dev-dependencies.smol] version = "2.0.0" [dev-dependencies.ta] version = "0.5.0" [dev-dependencies.thread-priority] version = "0.16.0" [dev-dependencies.tokio] version = "1.33.0" features = [ "rt-multi-thread", "macros", "sync", "time", ] [features] __internals = [] default = ["std"] defmt = [ "dep:defmt", "smoltcp/defmt", "embedded-io-async/defmt-03", "heapless/defmt-03", "ethercrab-wire/defmt-03", ] log = ["dep:log"] serde = [ "dep:serde", "bitflags/serde", ] std = [ "dep:pnet_datalink", "dep:async-io", "smoltcp/phy-raw_socket", "log", "futures-lite/std", "embedded-io-async/std", "ethercrab-wire/std", ] [target."cfg(target_os = \"linux\")".dependencies.io-uring] version = "0.6.3" [target."cfg(target_os = \"linux\")".dependencies.slab] version = "0.4.9" [target."cfg(target_os = \"linux\")".dependencies.smallvec] version = "1.13.1" features = ["const_generics"] [target."cfg(target_os = \"linux\")".dependencies.timerfd] version = "1.5.0" [target."cfg(target_os = \"windows\")".dependencies.async-channel] version = "2.2.0" [target."cfg(target_os = \"windows\")".dependencies.pnet_datalink] version = "0.34.0" features = ["std"] optional = true [target."cfg(unix)".dependencies.libc] version = "0.2.149" [target."cfg(unix)".dependencies.nix] version = "0.28.0" features = ["net"]