[package] name = "git-packetline" version = "0.13.1" repository = "https://github.com/Byron/gitoxide" license = "MIT/Apache-2.0" description = "A WIP crate of the gitoxide project implementing the pkt-line serialization format" authors = ["Sebastian Thiel "] edition = "2018" include = ["src/**/*", "CHANGELOG.md"] [lib] doctest = false [features] #! By default, all IO related capabilities will be missing unless one of the following is chosen. default = [] #! ### _Mutually exclusive_ #! Specifying both causes a compile error, preventing the use of `--all-features`. ## If set, all IO will become blocking. The same types will be used preventing side-by-side usage of blocking and non-blocking IO. blocking-io = [] ## Implement IO traits from `futures-io`. async-io = ["futures-io", "futures-lite", "pin-project-lite"] #! ### Other ## Data structures implement `serde::Serialize` and `serde::Deserialize`. serde1 = ["serde", "bstr/serde"] [[test]] name = "async-packetline" path = "tests/async-packetline.rs" required-features = ["async-io"] [[test]] name = "blocking-packetline" path = "tests/blocking-packetline.rs" required-features = ["blocking-io", "maybe-async/is_sync"] [dependencies] serde = { version = "1.0.114", optional = true, default-features = false, features = ["std", "derive"]} thiserror = "1.0.34" hex = "0.4.2" bstr = { version = "1.0.1", default-features = false, features = ["std"] } # async support futures-io = { version = "0.3.16", optional = true } futures-lite = { version = "1.12.0", optional = true } pin-project-lite = { version = "0.2.6", optional = true } document-features = { version = "0.2.0", optional = true } [dev-dependencies] git-odb = { path = "../git-odb" } git-hash = { path = "../git-hash" } async-std = { version = "1.9.0", features = ["attributes"] } maybe-async = "0.2.6" [package.metadata.docs.rs] features = ["document-features", "blocking-io", "serde1"] rustdoc-args = ["--cfg", "docsrs"]