rust-ipfs/Cargo.toml
Joonas Koivunen 6cbf679644
Add pubsub http (#120)
* add: pubsub http api
* add: get shoveling and subscription complications going

currently the missing piece is seeing locally sent messages in the
subscribed streams, then maybe creating a more complicated API for
subscribing which will require a single task for shoveling into the
responses.

* chore: lower timeout to pass the tests

Should probably have another drop sender here.

* fix: close stream on first error

tokio::sync::broadcast will continue after telling how many items were
lost, which seems likely with the small buffer and quickly firing more
than the buffer elements.

* fix: raise the buffer size for subscribe responses
* feat: use custom rust-libp2p to pass tests

the v0.16.2-with-floodsub-opts includes "subscribers see locally
published messages" which is needed for the conformance tests to pass.
this has been PR'd as https://github.com/libp2p/rust-libp2p/pull/1520.

* fix: pubsub test after changing the floodsub impl
2020-03-25 21:42:06 +02:00

52 lines
1.6 KiB
TOML

[package]
name = "ipfs"
version = "0.1.0"
authors = ["David Craven <david@craven.ch>"]
edition = "2018"
license = "MIT OR Apache-2.0"
[features]
default = []
nightly = []
all = ["rocksdb"]
[dependencies]
anyhow = "1.0.26"
async-std = { version = "1.5.0", features = ["attributes", "std"] }
async-trait = "0.1.24"
bitswap = { path = "bitswap" }
byteorder = "1.3.4"
dirs = "2.0.2"
domain = { git = "https://github.com/nlnetlabs/domain", features = ["resolv"] }
futures = { version = "0.3.4", features = ["compat", "io-compat"] }
libipld = { version = "0.1.0", features = ["dag-pb"] }
libp2p = "0.16.2"
log = "0.4.8"
multibase = "0.8.0"
multihash = "0.10.1"
prost = "0.6.1"
rand = "0.7.3"
rocksdb = { version = "0.13.0", optional = true }
serde = { version = "1.0.104", features = ["derive"] }
serde_json = "1.0.48"
thiserror = "1.0.11"
void = "1.0.2"
[build-dependencies]
prost-build = "0.6.1"
[dev-dependencies]
env_logger = "0.7.1"
[workspace]
members = [ "bitswap", "http", "examples" ]
[patch.crates-io]
ctr = { git = "https://github.com/koivunej/stream-ciphers.git", branch = "ctr128-64to128" }
# these are needed for the floodsub local originated messages to be seen by subscribers
libp2p = { git = "https://github.com/koivunej/rust-libp2p.git", branch = "v0.16.2-with-floodsub-opts" }
libp2p-core = { git = "https://github.com/koivunej/rust-libp2p.git", branch = "v0.16.2-with-floodsub-opts" }
libp2p-swarm = { git = "https://github.com/koivunej/rust-libp2p.git", branch = "v0.16.2-with-floodsub-opts" }
libp2p-floodsub = { git = "https://github.com/koivunej/rust-libp2p.git", branch = "v0.16.2-with-floodsub-opts" }