[package] name = "timeout-iterator" version = "1.1.7" authors = ["Archis Gore "] edition = "2018" license = "Apache-2.0" categories = ["asynchronous", "caching", "rust-patterns"] keywords = ["iterator", "wrapper", "timeout", "peek", "buffer"] readme = "README.md" repository = "https://github.com/polyverse/timeout-iterator" description = """TimeoutIterator is a wrapper over any iterator that adds peek_timeout and next_timeout functions. The canonical use-case is parsing multi-line free-form records (such as tailing a log fime) where it is desirable to consume the very last line, and peek whether the record continues on the next time, but not block indefinitely on the peek.""" [features] default = ["async"] # The default set of optional packages. Most people will want to use these # packages, but they are strictly optional. Note that `session` is not a package # but rather another feature listed in this manifest. async = ["futures", "futures-util", "tokio", "tokio-stream", "pin-project"] sync = [] [dependencies] # Optional - only enabled through the "async" feature futures = { version = "0.3.19", optional = true } futures-util = { version = "0.3.19", optional = true } tokio = { version = "1.15.0", features = ["time"], optional = true } tokio-stream = { version = "0.1.8", optional = true } pin-project = { version = "1.0.8", optional = true } [dev-dependencies] tokio = { version = "1.15.0", features = ["time", "rt", "macros"]} assert_matches = "1.5.0" [package.metadata.cargo-all-features] skip_optional_dependencies = true