diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 3fbffec..d6d559e 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -109,3 +109,97 @@ jobs: - name: npm publish working-directory: api/js run: npm publish --dry-run + + release-tlfsc: + strategy: + fail-fast: false + matrix: + platform: + - target: x86_64-unknown-linux-gnu + host: ubuntu-latest + file: tlfsc + tar: tar --zstd + - target: x86_64-apple-darwin + host: macos-latest + file: tlfsc + tar: gtar --zstd + - target: x86_64-pc-windows-msvc + host: windows-latest + file: tlfsc.exe + tar: "\"C:\\Program Files\\Git\\usr\\bin\\tar.exe\" -I zstd" + runs-on: ${{ matrix.platform.host }} + steps: + - name: Checkout sources + uses: actions/checkout@v2 + + - name: Install rust toolchain + uses: hecrj/setup-rust-action@v1 + + - name: Build tlfsc + working-directory: tlfsc + run: cargo build --release + + - name: Create artefact + working-directory: target/release + shell: bash + run: ${{ matrix.platform.tar }} -cf tlfsc.${{ matrix.platform.target }}.tar.zst ${{ matrix.platform.file }} + + release-libtlfs: + strategy: + fail-fast: false + matrix: + platform: + - target: x86_64-unknown-linux-gnu + host: ubuntu-latest + file: libtlfs.so + tar: tar --zstd + - target: x86_64-apple-darwin + host: macos-latest + file: libtlfs.dylib + tar: gtar --zstd + - target: x86_64-pc-windows-msvc + host: windows-latest + file: tlfs.dll tlfs.dll.lib tlfs.pdb + tar: "\"C:\\Program Files\\Git\\usr\\bin\\tar.exe\" -I zstd" + - target: aarch64-linux-android + host: ubuntu-latest + file: libtlfs.so + tar: tar --zstd + - target: aarch64-apple-ios + host: macos-latest + file: libtlfs.a + tar: gtar --zstd + runs-on: ${{ matrix.platform.host }} + steps: + - name: Checkout sources + uses: actions/checkout@v2 + + - name: Install rust toolchain + uses: hecrj/setup-rust-action@v1 + with: + rust-version: nightly + targets: ${{ matrix.platform.target }} + + - name: Install cargo apk + if: contains(matrix.platform.target, 'android') + run: cargo install cargo-apk --locked --git https://github.com/rust-windowing/android-ndk-rs/ --branch update-subcommand + + - name: Build tlfs + working-directory: api + if: contains(matrix.platform.target, 'android') == false + run: cargo build --release --target ${{ matrix.platform.target }} + + - name: Build tlfs (android) + working-directory: api + if: contains(matrix.platform.target, 'android') + run: sudo apt-get update && sudo apt-get install -y gcc-multilib && cargo apk build --release --target ${{ matrix.platform.target }} + + - name: Create artefact + working-directory: target/${{ matrix.platform.target }}/release + shell: bash + run: mkdir libtlfs && cp ${{ matrix.platform.file }} libtlfs/ + + - name: Create artefact + working-directory: target/${{ matrix.platform.target }}/release + shell: bash + run: ${{ matrix.platform.tar }} -cf libtlfs.${{ matrix.platform.target }}.tar.zst libtlfs diff --git a/Cargo.lock b/Cargo.lock index 9d3f8d5..ee4d0e2 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -96,9 +96,9 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.52" +version = "1.0.56" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "84450d0b4a8bd1ba4144ce8ce718fbc5d071358b1e5384bace6536b3d1f2d5b3" +checksum = "4361135be9122e0870de935d7c439aef945b9f9ddd4199a553b5270b49c82a27" [[package]] name = "arrayref" @@ -141,14 +141,14 @@ dependencies = [ [[package]] name = "async-datachannel" -version = "0.2.2" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "770e0eb88dc946ee38b7a211ddaee8bb1e3c8acabbf4c9a970fcb7b23d567e02" +checksum = "efc422f9984e7b6d5c1ec27577506f5bdf84c822b84ce25221aed9329f97c36d" dependencies = [ "anyhow", "datachannel", "futures", - "parking_lot", + "parking_lot 0.12.0", "serde", "tokio", "tracing", @@ -156,9 +156,9 @@ dependencies = [ [[package]] name = "async-datachannel-wasm" -version = "0.1.2" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "213166efb861bb888151e2d753fb9563d0202cb4ba57ee9120e4bc25570dc077" +checksum = "6723aaaf1aacb4bfb92c4cb809a967cbb7a22b1a3fd5081a7282ad9241cfafcd" dependencies = [ "anyhow", "futures", @@ -216,7 +216,7 @@ dependencies = [ "parking", "polling", "slab", - "socket2 0.4.2", + "socket2 0.4.4", "waker-fn", "winapi", ] @@ -307,9 +307,9 @@ dependencies = [ [[package]] name = "async-tungstenite" -version = "0.16.1" +version = "0.17.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5682ea0913e5c20780fe5785abacb85a411e7437bf52a1bedb93ddb3972cb8dd" +checksum = "7922abeade7dd8948c20dfa1f85dc48cc952d2e0791f7c42b8b1cbb07a57129d" dependencies = [ "futures-io", "futures-util", @@ -318,7 +318,7 @@ dependencies = [ "pin-project-lite 0.2.7", "tokio", "tokio-native-tls", - "tungstenite 0.16.0", + "tungstenite 0.17.2", ] [[package]] @@ -447,13 +447,11 @@ checksum = "cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693" [[package]] name = "blake2" -version = "0.9.2" +version = "0.10.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0a4e37d16930f5459780f5621038b6382b9bb37c19016f39fb6b5808d831f174" +checksum = "b9cf849ee05b2ee5fba5e36f97ff8ec2533916700fc0758d40d92136a42f3388" dependencies = [ - "crypto-mac 0.8.0", - "digest 0.9.0", - "opaque-debug 0.3.0", + "digest 0.10.3", ] [[package]] @@ -620,9 +618,9 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" [[package]] name = "chacha20" -version = "0.7.3" +version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f08493fa7707effc63254c66c6ea908675912493cd67952eda23c09fae2610b1" +checksum = "01b72a433d0cf2aef113ba70f62634c56fddb0f244e6377185c56a7cadbd8f91" dependencies = [ "cfg-if", "cipher", @@ -632,9 +630,9 @@ dependencies = [ [[package]] name = "chacha20poly1305" -version = "0.8.2" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6547abe025f4027edacd9edaa357aded014eecec42a5070d9b885c3c334aba2" +checksum = "3b84ed6d1d5f7aa9bdde921a5090e0ca4d934d250ea3b402a5fab3a994e28a2a" dependencies = [ "aead", "chacha20", @@ -732,12 +730,6 @@ dependencies = [ "cache-padded", ] -[[package]] -name = "const-oid" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e4c78c047431fee22c1a7bb92e00ad095a02a983affe4d8a72e2a2c62c1b94f3" - [[package]] name = "const_fn" version = "0.4.9" @@ -793,6 +785,15 @@ version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5827cebf4670468b8772dd191856768aedcb1b0278a04f989f7766351917b9dc" +[[package]] +name = "core2" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b49ba7ef1ad6107f8824dbe97de947cbaac53c44e7f9756a1fba0d37c1eec505" +dependencies = [ + "memchr", +] + [[package]] name = "cpp_build" version = "0.5.6" @@ -860,51 +861,14 @@ dependencies = [ "lazy_static", ] -[[package]] -name = "crunchy" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7" - -[[package]] -name = "crypto-bigint" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03c6a1d5fa1de37e071642dfa44ec552ca5b299adb128fab16138e24b548fd21" -dependencies = [ - "generic-array 0.14.4", - "rand_core 0.6.3", - "subtle", - "zeroize", -] - [[package]] name = "crypto-common" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "683d6b536309245c849479fba3da410962a43ed8e51c26b729208ec0ac2798d0" -dependencies = [ - "generic-array 0.14.4", -] - -[[package]] -name = "crypto-mac" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b584a330336237c1eecd3e94266efb216c56ed91225d634cb2991c5f3fd1aeab" -dependencies = [ - "generic-array 0.14.4", - "subtle", -] - -[[package]] -name = "crypto-mac" -version = "0.11.1" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1d1a86f49236c215f271d40892d5fc950490551400b02ef360692c29815c714" +checksum = "57952ca27b5e3606ff4dd79b0020231aaf9d6aa76dc05fd30137538c50bd3ce8" dependencies = [ "generic-array 0.14.4", - "subtle", + "typenum", ] [[package]] @@ -939,6 +903,19 @@ dependencies = [ "zeroize", ] +[[package]] +name = "curve25519-dalek" +version = "4.0.0-pre.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "12dc3116fe595d7847c701796ac1b189bd86b81f4f593c6f775f9d80fb2e29f4" +dependencies = [ + "byteorder", + "digest 0.10.3", + "rand_core 0.6.3", + "subtle", + "zeroize", +] + [[package]] name = "data-encoding" version = "2.3.2" @@ -947,24 +924,23 @@ checksum = "3ee2393c4a91429dffb4bedf19f4d6abf27d8a732c8ce4980305d782e5426d57" [[package]] name = "datachannel" -version = "0.7.2" +version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ddb063de4c3b9cee6411cefc04eda005e83f4ef512ac1fa879dba84984be820b" +checksum = "b85d6ca89857db6eaba136c3422c3275ead6f74214ce47bbc2a278161885c991" dependencies = [ "datachannel-sys", "derivative", - "lazy_static", "log", - "parking_lot", + "parking_lot 0.12.0", "serde", "webrtc-sdp", ] [[package]] name = "datachannel-sys" -version = "0.15.5" +version = "0.16.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e343dbf8481de75d555ac610e6bd4fb329890b2dd5d50e506e482987933fb36e" +checksum = "52a6ad38c1a6c760a1919090f4128442e774b5aa4d9117421072a680dec339e2" dependencies = [ "bindgen", "cmake", @@ -973,15 +949,6 @@ dependencies = [ "openssl-src", ] -[[package]] -name = "der" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6919815d73839e7ad218de758883aae3a257ba6759ce7a9992501efbb53d705c" -dependencies = [ - "const-oid", -] - [[package]] name = "derivative" version = "2.2.0" @@ -1013,13 +980,13 @@ dependencies = [ [[package]] name = "digest" -version = "0.10.1" +version = "0.10.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b697d66081d42af4fba142d56918a3cb21dc8eb63372c6b85d14f44fb9c5979b" +checksum = "f2fb860ca6fafa5552fb6d0e816a69c8e49f0908bf524e30a90d97c85892d506" dependencies = [ "block-buffer 0.10.0", "crypto-common", - "generic-array 0.14.4", + "subtle", ] [[package]] @@ -1038,30 +1005,12 @@ dependencies = [ "quick-error 1.2.3", ] -[[package]] -name = "dtoa" -version = "0.4.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56899898ce76aaf4a0f24d914c97ea6ed976d42fec6ad33fcbb0a1103e07b2b0" - [[package]] name = "dtoa" version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5caaa75cbd2b960ff1e5392d2cfb1f44717fffe12fc1f32b7b5d1267f99732a6" -[[package]] -name = "ecdsa" -version = "0.13.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d0d69ae62e0ce582d56380743515fefaf1a8c70cec685d9677636d7e30ae9dc9" -dependencies = [ - "der", - "elliptic-curve", - "rfc6979", - "signature", -] - [[package]] name = "ed25519" version = "1.3.0" @@ -1077,7 +1026,7 @@ version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c762bae6dcaf24c4c84667b8579785430908723d5c889f469d76a41d59cc7a9d" dependencies = [ - "curve25519-dalek", + "curve25519-dalek 3.2.0", "ed25519", "rand 0.7.3", "serde", @@ -1091,23 +1040,6 @@ version = "1.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e78d4f1cc4ae33bbfc157ed5d5a5ef3bc29227303d595861deb238fcec4e9457" -[[package]] -name = "elliptic-curve" -version = "0.11.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "decb3a27ea454a5f23f96eb182af0671c12694d64ecc33dada74edd1301f6cfc" -dependencies = [ - "crypto-bigint", - "der", - "ff", - "generic-array 0.14.4", - "group", - "rand_core 0.6.3", - "sec1", - "subtle", - "zeroize", -] - [[package]] name = "enum-as-inner" version = "0.3.3" @@ -1154,16 +1086,6 @@ dependencies = [ "instant", ] -[[package]] -name = "ff" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b2958d04124b9f27f175eaeb9a9f383d026098aa837eadd8ba22c11f13a05b9e" -dependencies = [ - "rand_core 0.6.3", - "subtle", -] - [[package]] name = "ffi-gen" version = "0.1.13" @@ -1248,9 +1170,9 @@ dependencies = [ [[package]] name = "futures" -version = "0.3.19" +version = "0.3.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28560757fe2bb34e79f907794bb6b22ae8b0e5c669b638a1132f2592b19035b4" +checksum = "f73fe65f54d1e12b726f517d3e2135ca3125a437b6d998caf1962961f7172d9e" dependencies = [ "futures-channel", "futures-core", @@ -1263,9 +1185,9 @@ dependencies = [ [[package]] name = "futures-channel" -version = "0.3.19" +version = "0.3.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba3dda0b6588335f360afc675d0564c17a77a2bda81ca178a4b6081bd86c7f0b" +checksum = "c3083ce4b914124575708913bca19bfe887522d6e2e6d0952943f5eac4a74010" dependencies = [ "futures-core", "futures-sink", @@ -1273,15 +1195,15 @@ dependencies = [ [[package]] name = "futures-core" -version = "0.3.19" +version = "0.3.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d0c8ff0461b82559810cdccfde3215c3f373807f5e5232b71479bff7bb2583d7" +checksum = "0c09fd04b7e4073ac7156a9539b57a484a8ea920f79c7c675d05d289ab6110d3" [[package]] name = "futures-executor" -version = "0.3.19" +version = "0.3.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "29d6d2ff5bb10fb95c85b8ce46538a2e5f5e7fdc755623a7d4529ab8a4ed9d2a" +checksum = "9420b90cfa29e327d0429f19be13e7ddb68fa1cccb09d65e5706b8c7a749b8a6" dependencies = [ "futures-core", "futures-task", @@ -1291,9 +1213,9 @@ dependencies = [ [[package]] name = "futures-io" -version = "0.3.19" +version = "0.3.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1f9d34af5a1aac6fb380f735fe510746c38067c5bf16c7fd250280503c971b2" +checksum = "fc4045962a5a5e935ee2fdedaa4e08284547402885ab326734432bed5d12966b" [[package]] name = "futures-lite" @@ -1312,9 +1234,9 @@ dependencies = [ [[package]] name = "futures-macro" -version = "0.3.19" +version = "0.3.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6dbd947adfffb0efc70599b3ddcf7b5597bb5fa9e245eb99f62b3a5f7bb8bd3c" +checksum = "33c1e13800337f4d4d7a316bf45a567dbcb6ffe087f16424852d97e97a91f512" dependencies = [ "proc-macro2", "quote", @@ -1334,15 +1256,15 @@ dependencies = [ [[package]] name = "futures-sink" -version = "0.3.19" +version = "0.3.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3055baccb68d74ff6480350f8d6eb8fcfa3aa11bdc1a1ae3afdd0514617d508" +checksum = "21163e139fa306126e6eedaf49ecdb4588f939600f0b1e770f4205ee4b7fa868" [[package]] name = "futures-task" -version = "0.3.19" +version = "0.3.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ee7c6485c30167ce4dfb83ac568a849fe53274c831081476ee13e0dce1aad72" +checksum = "57c66a976bf5909d801bbef33416c41372779507e7a6b3a5e25e4749c58f776a" [[package]] name = "futures-timer" @@ -1356,9 +1278,9 @@ dependencies = [ [[package]] name = "futures-util" -version = "0.3.19" +version = "0.3.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d9b5cf40b47a271f77a8b1bec03ca09044d99d2372c0de244e66430761127164" +checksum = "d8b7abd5d659d9b90c8cba917f6ec750a74e2dc23902ef9cd4cc8c8b22e6036a" dependencies = [ "futures-channel", "futures-core", @@ -1468,17 +1390,6 @@ dependencies = [ "web-sys", ] -[[package]] -name = "group" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc5ac374b108929de78460075f3dc439fa66df9d8fc77e8f12caa5165fcf0c89" -dependencies = [ - "ff", - "rand_core 0.6.3", - "subtle", -] - [[package]] name = "h2" version = "0.3.9" @@ -1562,37 +1473,6 @@ version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" -[[package]] -name = "hmac" -version = "0.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "126888268dcc288495a26bf004b38c5fdbb31682f992c84ceb046a1f0fe38840" -dependencies = [ - "crypto-mac 0.8.0", - "digest 0.9.0", -] - -[[package]] -name = "hmac" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a2a2320eb7ec0ebe8da8f744d7812d9fc4cb4d09344ac01898dbcb6a20ae69b" -dependencies = [ - "crypto-mac 0.11.1", - "digest 0.9.0", -] - -[[package]] -name = "hmac-drbg" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "17ea0a1394df5b6574da6e0c1ade9e78868c9fb0a4e5ef4428e32da4676b85b1" -dependencies = [ - "digest 0.9.0", - "generic-array 0.14.4", - "hmac 0.8.1", -] - [[package]] name = "hostname" version = "0.3.1" @@ -1661,7 +1541,7 @@ dependencies = [ "httpdate", "itoa 0.4.8", "pin-project-lite 0.2.7", - "socket2 0.4.2", + "socket2 0.4.4", "tokio", "tower-service", "tracing", @@ -1679,17 +1559,6 @@ dependencies = [ "unicode-normalization", ] -[[package]] -name = "if-addrs" -version = "0.6.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2273e421f7c4f0fc99e1934fe4776f59d8df2972f4199d703fc0da9f2a9f73de" -dependencies = [ - "if-addrs-sys", - "libc", - "winapi", -] - [[package]] name = "if-addrs" version = "0.7.0" @@ -1700,16 +1569,6 @@ dependencies = [ "winapi", ] -[[package]] -name = "if-addrs-sys" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "de74b9dd780476e837e5eb5ab7c88b49ed304126e412030a0adba99c8efe79ea" -dependencies = [ - "cc", - "libc", -] - [[package]] name = "if-watch" version = "1.0.0" @@ -1720,7 +1579,7 @@ dependencies = [ "core-foundation", "fnv", "futures", - "if-addrs 0.7.0", + "if-addrs", "ipnet", "log", "rtnetlink", @@ -1800,9 +1659,9 @@ checksum = "1aab8fc367588b89dcee83ab0fd66b72b50b72fa1904d7095045ace2b0c81c35" [[package]] name = "js-sys" -version = "0.3.55" +version = "0.3.56" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7cc9ffccd38c451a86bf13657df244e9c3f37493cce8e5e21e940963777acc84" +checksum = "a38fc24e30fd564ce974c02bf1d337caddff65be6cc4735a1f7eab22a7440f04" dependencies = [ "wasm-bindgen", ] @@ -1836,9 +1695,9 @@ checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55" [[package]] name = "libc" -version = "0.2.112" +version = "0.2.119" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b03d17f364a3a042d5e5d46b053bbbf82c92c9430c592dd4c064dc6ee997125" +checksum = "1bf2e165bb3457c8e098ea76f3e3bc9db55f87aa90d52d0e6be741470916aaa4" [[package]] name = "libloading" @@ -1852,9 +1711,9 @@ dependencies = [ [[package]] name = "libp2p" -version = "0.41.1" +version = "0.43.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2ec5b70fc23ed1b1b1169ce0d1116260a343f67cf7088b498b8d99255cd68c32" +checksum = "4e8570e25fa03d4385405dbeaf540ba00e3ee50942f03d84e1a8928a029f35f9" dependencies = [ "atomic", "bytes", @@ -1863,53 +1722,26 @@ dependencies = [ "getrandom 0.2.3", "instant", "lazy_static", - "libp2p-core 0.30.0", - "libp2p-dns 0.30.0", + "libp2p-core", + "libp2p-dns", "libp2p-identify", - "libp2p-metrics 0.2.0", + "libp2p-mdns", + "libp2p-metrics", "libp2p-mplex", - "libp2p-noise 0.33.0", + "libp2p-noise", + "libp2p-ping", "libp2p-pnet", "libp2p-relay", "libp2p-rendezvous", - "libp2p-swarm 0.32.0", - "libp2p-swarm-derive 0.26.0", - "libp2p-tcp 0.30.0", - "libp2p-websocket", - "libp2p-yamux 0.34.0", - "multiaddr", - "parking_lot", - "pin-project 1.0.10", - "rand 0.7.3", - "smallvec", -] - -[[package]] -name = "libp2p" -version = "0.42.0" -source = "git+https://github.com/libp2p/rust-libp2p?branch=master#ddc035170d94d68507b0f11da7b157e13854cca7" -dependencies = [ - "atomic", - "bytes", - "futures", - "futures-timer", - "getrandom 0.2.3", - "instant", - "lazy_static", - "libp2p-core 0.31.0", - "libp2p-dns 0.31.0", - "libp2p-mdns", - "libp2p-metrics 0.3.0", - "libp2p-noise 0.34.0", - "libp2p-ping", "libp2p-request-response", - "libp2p-swarm 0.33.0", - "libp2p-swarm-derive 0.26.1", - "libp2p-tcp 0.31.0", + "libp2p-swarm", + "libp2p-swarm-derive", + "libp2p-tcp", "libp2p-wasm-ext", - "libp2p-yamux 0.35.0", + "libp2p-websocket", + "libp2p-yamux", "multiaddr", - "parking_lot", + "parking_lot 0.12.0", "pin-project 1.0.10", "rand 0.7.3", "smallvec", @@ -1917,52 +1749,20 @@ dependencies = [ [[package]] name = "libp2p-broadcast" -version = "0.7.0" -source = "git+https://github.com/cloudpeers/libp2p-broadcast?branch=tlfs#f6d0e7ff01a6218c23880f470f0be00a3d4b4e18" -dependencies = [ - "fnv", - "futures", - "libp2p 0.42.0", -] - -[[package]] -name = "libp2p-core" -version = "0.30.0" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bef22d9bba1e8bcb7ec300073e6802943fe8abb8190431842262b5f1c30abba1" +checksum = "6b3dcc9ca893fdfff764670b179dccf208c923d83bcb6c53bdfd8b8f3a01f6a9" dependencies = [ - "asn1_der", - "bs58", - "ed25519-dalek", - "either", "fnv", "futures", - "futures-timer", - "lazy_static", - "libsecp256k1", - "log", - "multiaddr", - "multihash", - "multistream-select 0.10.4", - "parking_lot", - "pin-project 1.0.10", - "prost", - "prost-build", - "rand 0.8.4", - "ring", - "rw-stream-sink", - "sha2 0.9.8", - "smallvec", - "thiserror", - "unsigned-varint", - "void", - "zeroize", + "libp2p", ] [[package]] name = "libp2p-core" -version = "0.31.0" -source = "git+https://github.com/libp2p/rust-libp2p?branch=master#ddc035170d94d68507b0f11da7b157e13854cca7" +version = "0.32.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9164ec41455856e8187addc870bb4fe1ea2ee28e1a9244831d449a2429b32c1a" dependencies = [ "asn1_der", "bs58", @@ -1973,13 +1773,11 @@ dependencies = [ "futures-timer", "instant", "lazy_static", - "libsecp256k1", "log", "multiaddr", "multihash", - "multistream-select 0.11.0", - "p256", - "parking_lot", + "multistream-select", + "parking_lot 0.12.0", "pin-project 1.0.10", "prost", "prost-build", @@ -1996,24 +1794,12 @@ dependencies = [ [[package]] name = "libp2p-dns" -version = "0.30.0" +version = "0.32.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb8f89d15cb6e3c5bc22afff7513b11bab7856f2872d3cfba86f7f63a06bc498" +checksum = "7838647d33978b77f943687412f4a39e74234c8342cbfdad14282b465b272cb4" dependencies = [ "futures", - "libp2p-core 0.30.0", - "log", - "smallvec", - "trust-dns-resolver", -] - -[[package]] -name = "libp2p-dns" -version = "0.31.0" -source = "git+https://github.com/libp2p/rust-libp2p?branch=master#ddc035170d94d68507b0f11da7b157e13854cca7" -dependencies = [ - "futures", - "libp2p-core 0.31.0", + "libp2p-core", "log", "smallvec", "trust-dns-resolver", @@ -2021,14 +1807,14 @@ dependencies = [ [[package]] name = "libp2p-identify" -version = "0.32.1" +version = "0.34.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32329181638a103321c05ef697f406abbccc695780b7c7d3dc34206758e9eb09" +checksum = "1f219b4d4660fe3a04bf5fe6b5970902b7c1918e25b2536be8c70efc480f88f8" dependencies = [ "futures", "futures-timer", - "libp2p-core 0.30.0", - "libp2p-swarm 0.32.0", + "libp2p-core", + "libp2p-swarm", "log", "lru", "prost", @@ -2038,8 +1824,9 @@ dependencies = [ [[package]] name = "libp2p-mdns" -version = "0.34.0" -source = "git+https://github.com/libp2p/rust-libp2p?branch=master#ddc035170d94d68507b0f11da7b157e13854cca7" +version = "0.35.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "54d1914576978e5f3b15ac99e2cda9b56471ce64f1cfc7c2b09ac0cee147175e" dependencies = [ "async-io", "data-encoding", @@ -2047,51 +1834,42 @@ dependencies = [ "futures", "if-watch", "lazy_static", - "libp2p-core 0.31.0", - "libp2p-swarm 0.33.0", + "libp2p-core", + "libp2p-swarm", "log", "rand 0.8.4", "smallvec", - "socket2 0.4.2", + "socket2 0.4.4", "void", ] [[package]] name = "libp2p-metrics" -version = "0.2.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d59f3be49edeecff13ef0d0dc28295ba4a33910611715f04236325d08e4119e0" +checksum = "d29e4e5e4c5aa567fe1ee3133afe088dc2d2fd104e20c5c2c5c2649f75129677" dependencies = [ - "libp2p-core 0.30.0", + "libp2p-core", "libp2p-identify", - "libp2p-swarm 0.32.0", - "open-metrics-client 0.12.0", -] - -[[package]] -name = "libp2p-metrics" -version = "0.3.0" -source = "git+https://github.com/libp2p/rust-libp2p?branch=master#ddc035170d94d68507b0f11da7b157e13854cca7" -dependencies = [ - "libp2p-core 0.31.0", "libp2p-ping", - "libp2p-swarm 0.33.0", - "open-metrics-client 0.14.0", + "libp2p-relay", + "libp2p-swarm", + "prometheus-client", ] [[package]] name = "libp2p-mplex" -version = "0.30.0" +version = "0.32.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f2cd64ef597f40e14bfce0497f50ecb63dd6d201c61796daeb4227078834fbf" +checksum = "442eb0c9fff0bf22a34f015724b4143ce01877e079ed0963c722d94c07c72160" dependencies = [ "asynchronous-codec", "bytes", "futures", - "libp2p-core 0.30.0", + "libp2p-core", "log", "nohash-hasher", - "parking_lot", + "parking_lot 0.12.0", "rand 0.7.3", "smallvec", "unsigned-varint", @@ -2099,36 +1877,15 @@ dependencies = [ [[package]] name = "libp2p-noise" -version = "0.33.0" +version = "0.35.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8772c7a99088221bb7ca9c5c0574bf55046a7ab4c319f3619b275f28c8fb87a" +checksum = "9dd7e0c94051cda67123be68cf6b65211ba3dde7277be9068412de3e7ffd63ef" dependencies = [ "bytes", - "curve25519-dalek", + "curve25519-dalek 3.2.0", "futures", "lazy_static", - "libp2p-core 0.30.0", - "log", - "prost", - "prost-build", - "rand 0.8.4", - "sha2 0.9.8", - "snow", - "static_assertions", - "x25519-dalek", - "zeroize", -] - -[[package]] -name = "libp2p-noise" -version = "0.34.0" -source = "git+https://github.com/libp2p/rust-libp2p?branch=master#ddc035170d94d68507b0f11da7b157e13854cca7" -dependencies = [ - "bytes", - "curve25519-dalek", - "futures", - "lazy_static", - "libp2p-core 0.31.0", + "libp2p-core", "log", "prost", "prost-build", @@ -2142,14 +1899,15 @@ dependencies = [ [[package]] name = "libp2p-ping" -version = "0.33.0" -source = "git+https://github.com/libp2p/rust-libp2p?branch=master#ddc035170d94d68507b0f11da7b157e13854cca7" +version = "0.34.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9ab44a12d372d6abdd326c468c1d5b002be06fbd923c5a799d6a9d3b36646ca3" dependencies = [ "futures", "futures-timer", "instant", - "libp2p-core 0.31.0", - "libp2p-swarm 0.33.0", + "libp2p-core", + "libp2p-swarm", "log", "rand 0.7.3", "void", @@ -2171,45 +1929,48 @@ dependencies = [ [[package]] name = "libp2p-relay" -version = "0.5.0" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "352001594ebc7538538c5439e6bf8348995ebf28b1b042d8193532e90bc77aee" +checksum = "517be90a2ce60b6c3bdfe88f34cc789c61dafe6f694a7b45e644af7353880fa3" dependencies = [ "asynchronous-codec", "bytes", + "either", "futures", "futures-timer", "instant", - "libp2p-core 0.30.0", - "libp2p-swarm 0.32.0", + "libp2p-core", + "libp2p-swarm", "log", "pin-project 1.0.10", "prost", "prost-build", - "rand 0.7.3", + "rand 0.8.4", "smallvec", + "static_assertions", + "thiserror", "unsigned-varint", "void", ] [[package]] name = "libp2p-rendezvous" -version = "0.2.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "921bc44c31225d42ac282e0e5a2f5311e4c50906a9e02d861fe8107a9396be49" +checksum = "597e4a022dd2e168ce1218faf6b3aead5c427fb828eb4f982cef7c40d4b7f49e" dependencies = [ "asynchronous-codec", "bimap", "futures", "futures-timer", "instant", - "libp2p-core 0.30.0", - "libp2p-swarm 0.32.0", + "libp2p-core", + "libp2p-swarm", "log", "prost", "prost-build", "rand 0.8.4", - "sha2 0.9.8", + "sha2 0.10.1", "thiserror", "unsigned-varint", "void", @@ -2217,15 +1978,16 @@ dependencies = [ [[package]] name = "libp2p-request-response" -version = "0.15.0" -source = "git+https://github.com/libp2p/rust-libp2p?branch=master#ddc035170d94d68507b0f11da7b157e13854cca7" +version = "0.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "12388a73626d1727524069cce0bb05a9c428581de435278a070c55ae27cc7e73" dependencies = [ "async-trait", "bytes", "futures", "instant", - "libp2p-core 0.31.0", - "libp2p-swarm 0.33.0", + "libp2p-core", + "libp2p-swarm", "log", "rand 0.7.3", "smallvec", @@ -2234,97 +1996,62 @@ dependencies = [ [[package]] name = "libp2p-swarm" -version = "0.32.0" +version = "0.34.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb84d40627cd109bbbf43da9269d4ef75903f42356c88d98b2b55c47c430c792" -dependencies = [ - "either", - "futures", - "futures-timer", - "instant", - "libp2p-core 0.30.0", - "log", - "rand 0.7.3", - "smallvec", - "void", -] - -[[package]] -name = "libp2p-swarm" -version = "0.33.0" -source = "git+https://github.com/libp2p/rust-libp2p?branch=master#ddc035170d94d68507b0f11da7b157e13854cca7" +checksum = "53ab2d4eb8ef2966b10fdf859245cdd231026df76d3c6ed2cf9e418a8f688ec9" dependencies = [ "either", + "fnv", "futures", "futures-timer", "instant", - "libp2p-core 0.31.0", + "libp2p-core", "log", + "pin-project 1.0.10", "rand 0.7.3", "smallvec", + "thiserror", "void", ] [[package]] name = "libp2p-swarm-derive" -version = "0.26.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7dd93a7dad9b61c39797572e4fb4fdba8415d6348b4e745b3d4cb008f84331ab" -dependencies = [ - "quote", - "syn", -] - -[[package]] -name = "libp2p-swarm-derive" -version = "0.26.1" -source = "git+https://github.com/libp2p/rust-libp2p?branch=master#ddc035170d94d68507b0f11da7b157e13854cca7" -dependencies = [ - "quote", - "syn", -] - -[[package]] -name = "libp2p-tcp" -version = "0.30.0" +version = "0.27.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7399c5b6361ef525d41c11fcf51635724f832baf5819b30d3d873eabb4fbae4b" +checksum = "4b8153a6472e84ec888ef2bf21deafe8d4214e811f0f162abbf07156c27f8fa8" dependencies = [ - "futures", - "futures-timer", - "if-addrs 0.6.7", - "ipnet", - "libc", - "libp2p-core 0.30.0", - "log", - "socket2 0.4.2", - "tokio", + "quote", + "syn", ] [[package]] name = "libp2p-tcp" -version = "0.31.0" -source = "git+https://github.com/libp2p/rust-libp2p?branch=master#ddc035170d94d68507b0f11da7b157e13854cca7" +version = "0.32.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "193447aa729c85aac2376828df76d171c1a589c9e6b58fcc7f9d9a020734122c" dependencies = [ "async-io", "futures", "futures-timer", + "if-addrs", "if-watch", "ipnet", "libc", - "libp2p-core 0.31.0", + "libp2p-core", "log", - "socket2 0.4.2", + "socket2 0.4.4", + "tokio", ] [[package]] name = "libp2p-wasm-ext" -version = "0.31.0" -source = "git+https://github.com/libp2p/rust-libp2p?branch=master#ddc035170d94d68507b0f11da7b157e13854cca7" +version = "0.32.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4f6ea0f84a967ef59a16083f222c18115ae2e91db69809dce275df62e101b279" dependencies = [ "futures", "js-sys", - "libp2p-core 0.31.0", + "libp2p-core", "parity-send-wrapper", "wasm-bindgen", "wasm-bindgen-futures", @@ -2332,8 +2059,9 @@ dependencies = [ [[package]] name = "libp2p-webrtc" -version = "0.2.1" -source = "git+https://github.com/wngr/libp2p-webrtc?branch=tlfs#e809482edd3033745e52877a71f7ffd01bd86d0e" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5f9c4d1cdf66c4f95307d90fc2ef6dcfa719b0d29dc5aa5ad6a9db34c32cc041" dependencies = [ "anyhow", "async-datachannel", @@ -2342,9 +2070,9 @@ dependencies = [ "async-tungstenite", "futures-timer", "http", - "libp2p 0.42.0", + "libp2p", "log", - "parking_lot", + "parking_lot 0.12.0", "pin-project 1.0.10", "send_wrapper 0.5.0", "serde", @@ -2356,14 +2084,14 @@ dependencies = [ [[package]] name = "libp2p-websocket" -version = "0.32.0" +version = "0.34.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa92005fbd67695715c821e1acfe4d7be9fd2d88738574e93d645c49ec2831c8" +checksum = "c932834c3754501c368d1bf3d0fb458487a642b90fc25df082a3a2f3d3b32e37" dependencies = [ "either", "futures", "futures-rustls", - "libp2p-core 0.30.0", + "libp2p-core", "log", "quicksink", "rw-stream-sink", @@ -2374,77 +2102,17 @@ dependencies = [ [[package]] name = "libp2p-yamux" -version = "0.34.0" +version = "0.36.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e7362abb8867d7187e7e93df17f460d554c997fc5c8ac57dc1259057f6889af" -dependencies = [ - "futures", - "libp2p-core 0.30.0", - "parking_lot", - "thiserror", - "yamux", -] - -[[package]] -name = "libp2p-yamux" -version = "0.35.0" -source = "git+https://github.com/libp2p/rust-libp2p?branch=master#ddc035170d94d68507b0f11da7b157e13854cca7" +checksum = "be902ebd89193cd020e89e89107726a38cfc0d16d18f613f4a37d046e92c7517" dependencies = [ "futures", - "libp2p-core 0.31.0", - "parking_lot", + "libp2p-core", + "parking_lot 0.12.0", "thiserror", "yamux", ] -[[package]] -name = "libsecp256k1" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0452aac8bab02242429380e9b2f94ea20cea2b37e2c1777a1358799bbe97f37" -dependencies = [ - "arrayref", - "base64", - "digest 0.9.0", - "hmac-drbg", - "libsecp256k1-core", - "libsecp256k1-gen-ecmult", - "libsecp256k1-gen-genmult", - "rand 0.8.4", - "serde", - "sha2 0.9.8", - "typenum", -] - -[[package]] -name = "libsecp256k1-core" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5be9b9bb642d8522a44d533eab56c16c738301965504753b03ad1de3425d5451" -dependencies = [ - "crunchy", - "digest 0.9.0", - "subtle", -] - -[[package]] -name = "libsecp256k1-gen-ecmult" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3038c808c55c87e8a172643a7d87187fc6c4174468159cb3090659d55bcb4809" -dependencies = [ - "libsecp256k1-core", -] - -[[package]] -name = "libsecp256k1-gen-genmult" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3db8d6ba2cec9eacc40e6e8ccc98931840301f1006e95647ceb2dd5c3aa06f7c" -dependencies = [ - "libsecp256k1-core", -] - [[package]] name = "libz-sys" version = "1.1.3" @@ -2464,9 +2132,9 @@ checksum = "7fb9b38af92608140b86b693604b9ffcc5824240a484d1ecd4795bacb2fe88f3" [[package]] name = "lock_api" -version = "0.4.5" +version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "712a4d093c9976e24e7dbca41db895dabcbac38eb5f4045393d17a95bdfb1109" +checksum = "88943dd7ef4a2e5a4bfa2753aaab3013e34ce2533d1996fb18ef591e315e2b3b" dependencies = [ "scopeguard", ] @@ -2584,9 +2252,9 @@ dependencies = [ [[package]] name = "mio" -version = "0.7.14" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8067b404fe97c70829f082dec8bcf4f71225d7eaea1d8645349cb76fa06205cc" +checksum = "ba272f85fa0b41fc91872be579b3bbe0f56b792aa361a380eb669469f68dafb2" dependencies = [ "libc", "log", @@ -2606,9 +2274,9 @@ dependencies = [ [[package]] name = "multiaddr" -version = "0.13.0" +version = "0.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48ee4ea82141951ac6379f964f71b20876d43712bea8faf6dd1a375e08a46499" +checksum = "3c580bfdd8803cce319b047d239559a22f809094aaea4ac13902a1fdcfcd4261" dependencies = [ "arrayref", "bs58", @@ -2624,22 +2292,22 @@ dependencies = [ [[package]] name = "multihash" -version = "0.14.0" +version = "0.16.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "752a61cd890ff691b4411423d23816d5866dd5621e4d1c5687a53b94b5a979d8" +checksum = "7392bffd88bc0c4f8297e36a777ab9f80b7127409c4a1acb8fee99c9f27addcd" dependencies = [ - "digest 0.9.0", - "generic-array 0.14.4", + "core2", + "digest 0.10.3", "multihash-derive", - "sha2 0.9.8", + "sha2 0.10.1", "unsigned-varint", ] [[package]] name = "multihash-derive" -version = "0.7.2" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "424f6e86263cd5294cbd7f1e95746b95aca0e0d66bff31e5a40d6baa87b4aa99" +checksum = "fc076939022111618a5026d3be019fd8b366e76314538ff9a1b59ffbcbf98bcd" dependencies = [ "proc-macro-crate", "proc-macro-error", @@ -2673,24 +2341,11 @@ dependencies = [ "twoway", ] -[[package]] -name = "multistream-select" -version = "0.10.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56a336acba8bc87c8876f6425407dbbe6c417bf478b22015f8fb0994ef3bc0ab" -dependencies = [ - "bytes", - "futures", - "log", - "pin-project 1.0.10", - "smallvec", - "unsigned-varint", -] - [[package]] name = "multistream-select" version = "0.11.0" -source = "git+https://github.com/libp2p/rust-libp2p?branch=master#ddc035170d94d68507b0f11da7b157e13854cca7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "363a84be6453a70e63513660f4894ef815daf88e3356bffcda9ca27d810ce83b" dependencies = [ "bytes", "futures", @@ -2859,41 +2514,6 @@ version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5" -[[package]] -name = "open-metrics-client" -version = "0.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7337d80c23c2d8b1349563981bc4fb531220733743ba8115454a67b181173f0d" -dependencies = [ - "dtoa 0.4.8", - "itoa 0.4.8", - "open-metrics-client-derive-text-encode", - "owning_ref", -] - -[[package]] -name = "open-metrics-client" -version = "0.14.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f85842b073145726190373213c63f852020fb884c841a3a1f390637267a2fb8c" -dependencies = [ - "dtoa 1.0.2", - "itoa 1.0.1", - "open-metrics-client-derive-text-encode", - "owning_ref", -] - -[[package]] -name = "open-metrics-client-derive-text-encode" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a15c83b586f00268c619c1cb3340ec1a6f59dd9ba1d9833a273a68e6d5cd8ffc" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - [[package]] name = "openssl" version = "0.10.38" @@ -2955,18 +2575,6 @@ dependencies = [ "stable_deref_trait", ] -[[package]] -name = "p256" -version = "0.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d0e0c5310031b5d4528ac6534bccc1446c289ac45c47b277d5aa91089c5f74fa" -dependencies = [ - "ecdsa", - "elliptic-curve", - "sec1", - "sha2 0.9.8", -] - [[package]] name = "parity-send-wrapper" version = "0.1.0" @@ -2987,7 +2595,17 @@ checksum = "7d17b78036a60663b797adeaee46f5c9dfebb86948d1255007a1d6be0271ff99" dependencies = [ "instant", "lock_api", - "parking_lot_core", + "parking_lot_core 0.8.5", +] + +[[package]] +name = "parking_lot" +version = "0.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "87f5ec2493a61ac0506c0f4199f99070cbe83857b0337006a30f3e6719b8ef58" +dependencies = [ + "lock_api", + "parking_lot_core 0.9.1", ] [[package]] @@ -3004,6 +2622,19 @@ dependencies = [ "winapi", ] +[[package]] +name = "parking_lot_core" +version = "0.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "28141e0cc4143da2443301914478dc976a61ffdb3f043058310c70df2fed8954" +dependencies = [ + "cfg-if", + "libc", + "redox_syscall", + "smallvec", + "windows-sys", +] + [[package]] name = "paste" version = "1.0.6" @@ -3250,6 +2881,29 @@ dependencies = [ "unicode-xid", ] +[[package]] +name = "prometheus-client" +version = "0.15.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c9a896938cc6018c64f279888b8c7559d3725210d5db9a3a1ee6bc7188d51d34" +dependencies = [ + "dtoa", + "itoa 1.0.1", + "owning_ref", + "prometheus-client-derive-text-encode", +] + +[[package]] +name = "prometheus-client-derive-text-encode" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e8e12d01b9d66ad9eb4529c57666b6263fc1993cb30261d83ead658fdd932652" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + [[package]] name = "proptest" version = "1.0.0" @@ -3533,7 +3187,7 @@ dependencies = [ "anyhow", "clap 3.0.0-rc.8", "hex", - "libp2p 0.41.1", + "libp2p", "rustls-pemfile", "tokio", "tracing", @@ -3569,17 +3223,6 @@ dependencies = [ "quick-error 1.2.3", ] -[[package]] -name = "rfc6979" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96ef608575f6392792f9ecf7890c00086591d29a83910939d430753f7c050525" -dependencies = [ - "crypto-bigint", - "hmac 0.11.0", - "zeroize", -] - [[package]] name = "ring" version = "0.16.20" @@ -3650,15 +3293,6 @@ dependencies = [ "semver 0.9.0", ] -[[package]] -name = "rustc_version" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0dfe2087c51c460008730de8b57e6a320782fbfb312e1f4d520e6c6fae155ee" -dependencies = [ - "semver 0.11.0", -] - [[package]] name = "rustc_version" version = "0.4.0" @@ -3794,18 +3428,6 @@ version = "4.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1c107b6f4780854c8b126e228ea8869f4d7b71260f962fefb57b996b8959ba6b" -[[package]] -name = "sec1" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08da66b8b0965a5555b6bd6639e68ccba85e1e2506f5fbb089e93f8a04e1a2d1" -dependencies = [ - "der", - "generic-array 0.14.4", - "subtle", - "zeroize", -] - [[package]] name = "security-framework" version = "2.3.1" @@ -3835,16 +3457,7 @@ version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403" dependencies = [ - "semver-parser 0.7.0", -] - -[[package]] -name = "semver" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f301af10236f6df4160f7c3f04eec6dbc70ace82d23326abad5edee88801c6b6" -dependencies = [ - "semver-parser 0.10.2", + "semver-parser", ] [[package]] @@ -3859,15 +3472,6 @@ version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" -[[package]] -name = "semver-parser" -version = "0.10.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "00b0bef5b7f9e0df16536d3961cfb6e84331c065b4066afb39768d0e319411f7" -dependencies = [ - "pest", -] - [[package]] name = "send_wrapper" version = "0.4.0" @@ -3885,18 +3489,18 @@ dependencies = [ [[package]] name = "serde" -version = "1.0.133" +version = "1.0.136" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97565067517b60e2d1ea8b268e59ce036de907ac523ad83a0475da04e818989a" +checksum = "ce31e24b01e1e524df96f1c2fdd054405f8d7376249a5110886fb4b658484789" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.133" +version = "1.0.136" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed201699328568d8d08208fdd080e3ff594e6c422e438b6705905da01005d537" +checksum = "08597e7152fcd306f41838ed3e37be9eaeed2b61c42e2117266a554fab4662f9" dependencies = [ "proc-macro2", "quote", @@ -3905,9 +3509,9 @@ dependencies = [ [[package]] name = "serde_json" -version = "1.0.74" +version = "1.0.79" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ee2bb9cd061c5865d345bb02ca49fcef1391741b672b54a0bf7b679badec3142" +checksum = "8e8d9fa5c3b304765ce1fd9c4c8a3de2c8db365a5b91be52f186efc675681d95" dependencies = [ "itoa 1.0.1", "ryu", @@ -3951,6 +3555,17 @@ dependencies = [ "opaque-debug 0.3.0", ] +[[package]] +name = "sha-1" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "028f48d513f9678cda28f6e4064755b3fbb2af6acd672f2c209b62323f7aea0f" +dependencies = [ + "cfg-if", + "cpufeatures", + "digest 0.10.3", +] + [[package]] name = "sha1" version = "0.6.0" @@ -3978,7 +3593,7 @@ checksum = "99c3bd8169c58782adad9290a9af5939994036b76187f7b4f0e6de91dbbfc0ec" dependencies = [ "cfg-if", "cpufeatures", - "digest 0.10.1", + "digest 0.10.3", ] [[package]] @@ -4022,10 +3637,6 @@ name = "signature" version = "1.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f2807892cfa58e081aa1f1111391c7a0649d4fa127a4ffbe34bcbfb35a1171a4" -dependencies = [ - "digest 0.9.0", - "rand_core 0.6.3", -] [[package]] name = "slab" @@ -4041,20 +3652,19 @@ checksum = "1ecab6c735a6bb4139c0caafd0cc3635748bbb3acf4550e8138122099251f309" [[package]] name = "snow" -version = "0.8.0" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6142f7c25e94f6fd25a32c3348ec230df9109b463f59c8c7acc4bd34936babb7" +checksum = "774d05a3edae07ce6d68ea6984f3c05e9bba8927e3dd591e3b479e5b03213d0d" dependencies = [ "aes-gcm", "blake2", "chacha20poly1305", - "rand 0.8.4", + "curve25519-dalek 4.0.0-pre.2", "rand_core 0.6.3", "ring", - "rustc_version 0.3.3", - "sha2 0.9.8", + "rustc_version 0.4.0", + "sha2 0.10.1", "subtle", - "x25519-dalek", ] [[package]] @@ -4070,9 +3680,9 @@ dependencies = [ [[package]] name = "socket2" -version = "0.4.2" +version = "0.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5dc90fe6c7be1a323296982db1836d1ea9e47b6839496dde9a541bc496df3516" +checksum = "66d72b759436ae32898a2af0a14218dbf55efde3feeb170eb623637db85ee1e0" dependencies = [ "libc", "winapi", @@ -4389,10 +3999,11 @@ dependencies = [ "async-std", "async-trait", "bytecheck", + "datachannel", "ed25519-dalek", "fnv", "futures", - "libp2p 0.42.0", + "libp2p", "libp2p-broadcast", "libp2p-webrtc", "log-panics", @@ -4436,7 +4047,7 @@ dependencies = [ "hex", "js-sys", "log-panics", - "parking_lot", + "parking_lot 0.11.2", "proptest", "rkyv", "smallvec", @@ -4465,9 +4076,9 @@ dependencies = [ [[package]] name = "tokio" -version = "1.15.0" +version = "1.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fbbf1c778ec206785635ce8ad57fe52b3009ae9e0c9f574a728f3049d3e55838" +checksum = "2af73ac49756f3f7c01172e34a23e5d0216f6c32333757c2c61feb2bbff5a5ee" dependencies = [ "bytes", "libc", @@ -4475,9 +4086,10 @@ dependencies = [ "mio", "num_cpus", "once_cell", - "parking_lot", + "parking_lot 0.12.0", "pin-project-lite 0.2.7", "signal-hook-registry", + "socket2 0.4.4", "tokio-macros", "winapi", ] @@ -4558,9 +4170,9 @@ checksum = "360dfd1d6d30e05fda32ace2c8c70e9c0a9da713275777f5a4dbb8a1893930c6" [[package]] name = "tracing" -version = "0.1.29" +version = "0.1.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "375a639232caf30edfc78e8d89b2d4c375515393e7af7e16f01cd96917fb2105" +checksum = "4a1bdf54a7c28a2bbf701e1d2233f6c77f473486b94bee4f9678da5a148dca7f" dependencies = [ "cfg-if", "log", @@ -4582,9 +4194,9 @@ dependencies = [ [[package]] name = "tracing-attributes" -version = "0.1.18" +version = "0.1.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f4f480b8f81512e825f337ad51e94c1eb5d3bbdf2b363dcd01e2b19a9ffe3f8e" +checksum = "2e65ce065b4b5c53e73bb28912318cb8c9e9ad3921f1d669eb0e68b4c8143a2b" dependencies = [ "proc-macro2", "quote", @@ -4593,11 +4205,12 @@ dependencies = [ [[package]] name = "tracing-core" -version = "0.1.21" +version = "0.1.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f4ed65637b8390770814083d20756f87bfa2c21bf2f110babdc5438351746e4" +checksum = "aa31669fa42c09c34d94d8165dd2012e8ff3c66aca50f3bb226b68f216f2706c" dependencies = [ "lazy_static", + "valuable", ] [[package]] @@ -4677,7 +4290,7 @@ dependencies = [ "lazy_static", "log", "lru-cache", - "parking_lot", + "parking_lot 0.11.2", "resolv-conf", "smallvec", "thiserror", @@ -4712,9 +4325,9 @@ dependencies = [ [[package]] name = "tungstenite" -version = "0.16.0" +version = "0.17.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ad3713a14ae247f22a728a0456a545df14acf3867f905adff84be99e23b3ad1" +checksum = "d96a2dea40e7570482f28eb57afbe42d97551905da6a9400acc5c328d24004f5" dependencies = [ "base64", "byteorder", @@ -4724,7 +4337,7 @@ dependencies = [ "log", "native-tls", "rand 0.8.4", - "sha-1 0.9.8", + "sha-1 0.10.0", "thiserror", "url", "utf-8", @@ -4858,6 +4471,12 @@ version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9" +[[package]] +name = "valuable" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d" + [[package]] name = "value-bag" version = "1.0.0-alpha.8" @@ -4978,9 +4597,9 @@ checksum = "fd6fbd9a79829dd1ad0cc20627bf1ed606756a7f77edff7b66b7064f9cb327c6" [[package]] name = "wasm-bindgen" -version = "0.2.78" +version = "0.2.79" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "632f73e236b219150ea279196e54e610f5dbafa5d61786303d4da54f84e47fce" +checksum = "25f1af7423d8588a3d840681122e72e6a24ddbcb3f0ec385cac0d12d24256c06" dependencies = [ "cfg-if", "wasm-bindgen-macro", @@ -4988,9 +4607,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-backend" -version = "0.2.78" +version = "0.2.79" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a317bf8f9fba2476b4b2c85ef4c4af8ff39c3c7f0cdfeed4f82c34a880aa837b" +checksum = "8b21c0df030f5a177f3cba22e9bc4322695ec43e7257d865302900290bcdedca" dependencies = [ "bumpalo", "lazy_static", @@ -5003,9 +4622,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-futures" -version = "0.4.28" +version = "0.4.29" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e8d7523cb1f2a4c96c1317ca690031b714a51cc14e05f712446691f413f5d39" +checksum = "2eb6ec270a31b1d3c7e266b999739109abce8b6c87e4b31fcfcd788b65267395" dependencies = [ "cfg-if", "js-sys", @@ -5015,9 +4634,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro" -version = "0.2.78" +version = "0.2.79" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d56146e7c495528bf6587663bea13a8eb588d39b36b679d83972e1a2dbbdacf9" +checksum = "2f4203d69e40a52ee523b2529a773d5ffc1dc0071801c87b3d270b471b80ed01" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -5025,9 +4644,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.78" +version = "0.2.79" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7803e0eea25835f8abdc585cd3021b3deb11543c6fe226dcd30b228857c5c5ab" +checksum = "bfa8a30d46208db204854cadbb5d4baf5fcf8071ba5bf48190c3e59937962ebc" dependencies = [ "proc-macro2", "quote", @@ -5038,15 +4657,15 @@ dependencies = [ [[package]] name = "wasm-bindgen-shared" -version = "0.2.78" +version = "0.2.79" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0237232789cf037d5480773fe568aac745bfe2afbc11a863e97901780a6b47cc" +checksum = "3d958d035c4438e28c70e4321a2911302f10135ce78a9c7834c0cab4123d06a2" [[package]] name = "web-sys" -version = "0.3.55" +version = "0.3.56" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38eb105f1c59d9eaa6b5cdc92b859d85b926e82cb2e0945cd0c9259faa6fe9fb" +checksum = "c060b319f29dd25724f09a2ba1418f142f539b2be99fbf4d2d5a8f7330afb8eb" dependencies = [ "js-sys", "wasm-bindgen", @@ -5163,11 +4782,24 @@ version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "aac7fef12f4b59cd0a29339406cc9203ab44e440ddff6b3f5a41455349fa9cf3" dependencies = [ - "windows_aarch64_msvc", - "windows_i686_gnu", - "windows_i686_msvc", - "windows_x86_64_gnu", - "windows_x86_64_msvc", + "windows_aarch64_msvc 0.29.0", + "windows_i686_gnu 0.29.0", + "windows_i686_msvc 0.29.0", + "windows_x86_64_gnu 0.29.0", + "windows_x86_64_msvc 0.29.0", +] + +[[package]] +name = "windows-sys" +version = "0.32.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3df6e476185f92a12c072be4a189a0210dcdcf512a1891d6dff9edb874deadc6" +dependencies = [ + "windows_aarch64_msvc 0.32.0", + "windows_i686_gnu 0.32.0", + "windows_i686_msvc 0.32.0", + "windows_x86_64_gnu 0.32.0", + "windows_x86_64_msvc 0.32.0", ] [[package]] @@ -5176,30 +4808,60 @@ version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c3d027175d00b01e0cbeb97d6ab6ebe03b12330a35786cbaca5252b1c4bf5d9b" +[[package]] +name = "windows_aarch64_msvc" +version = "0.32.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d8e92753b1c443191654ec532f14c199742964a061be25d77d7a96f09db20bf5" + [[package]] name = "windows_i686_gnu" version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8793f59f7b8e8b01eda1a652b2697d87b93097198ae85f823b969ca5b89bba58" +[[package]] +name = "windows_i686_gnu" +version = "0.32.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6a711c68811799e017b6038e0922cb27a5e2f43a2ddb609fe0b6f3eeda9de615" + [[package]] name = "windows_i686_msvc" version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8602f6c418b67024be2996c512f5f995de3ba417f4c75af68401ab8756796ae4" +[[package]] +name = "windows_i686_msvc" +version = "0.32.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "146c11bb1a02615db74680b32a68e2d61f553cc24c4eb5b4ca10311740e44172" + [[package]] name = "windows_x86_64_gnu" version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f3d615f419543e0bd7d2b3323af0d86ff19cbc4f816e6453f36a2c2ce889c354" +[[package]] +name = "windows_x86_64_gnu" +version = "0.32.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c912b12f7454c6620635bbff3450962753834be2a594819bd5e945af18ec64bc" + [[package]] name = "windows_x86_64_msvc" version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "11d95421d9ed3672c280884da53201a5c46b7b2765ca6faf34b0d71cf34a3561" +[[package]] +name = "windows_x86_64_msvc" +version = "0.32.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "504a2476202769977a040c6364301a3f65d0cc9e3fb08600b2bda150a0488316" + [[package]] name = "winreg" version = "0.6.2" @@ -5233,21 +4895,21 @@ version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2392b6b94a576b4e2bf3c5b2757d63f10ada8020a2e4d08ac849ebcf6ea8e077" dependencies = [ - "curve25519-dalek", + "curve25519-dalek 3.2.0", "rand_core 0.5.1", "zeroize", ] [[package]] name = "yamux" -version = "0.9.0" +version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7d9028f208dd5e63c614be69f115c1b53cacc1111437d4c765185856666c107" +checksum = "29d4c1dd079043fe673e79fe3c3a260ae2d2fb413f1062cae9e062748df0df03" dependencies = [ "futures", "log", "nohash-hasher", - "parking_lot", + "parking_lot 0.11.2", "rand 0.8.4", "static_assertions", ] diff --git a/Cargo.toml b/Cargo.toml index c86f424..b37cd0a 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -22,11 +22,12 @@ lto = true anyhow = "1.0.51" async-trait = "0.1.52" bytecheck = "0.6.7" +datachannel = "0.7.4" ed25519-dalek = "1.0.1" fnv = "1.0.7" futures = "0.3.17" -libp2p-broadcast = "0.7.0" -libp2p-webrtc = "0.2.1" +libp2p-broadcast = "0.9.0" +libp2p-webrtc = "0.3.0" log-panics = "2.0.0" rkyv = "0.7.26" tlfs-crdt = { version = "0.1.0", path = "crdt" } @@ -35,7 +36,7 @@ tracing-log = "0.1.2" tracing-subscriber = { version = "0.3.3", default-features = false, features = ["env-filter", "fmt"] } [dependencies.libp2p] -version = "0.42.0" +version = "0.43.0" default-features = false features = [ "dns-tokio", @@ -52,7 +53,7 @@ tracing-wasm = "0.2.1" wasm-bindgen-futures = "0.4.28" [target.'cfg(target_arch = "wasm32")'.dependencies.libp2p] -version = "0.42.0" +version = "0.43.0" default-features = false features = [ "wasm-bindgen", @@ -67,10 +68,3 @@ async-global-executor = { version = "2.0.2", features = ["tokio"] } [target.'cfg(target_os = "android")'.dependencies] tracing-android = "0.1.6" - -[patch.crates-io] -#wait for new lip2p release -libp2p = { git = "https://github.com/libp2p/rust-libp2p", branch = "master" } -#wait for new lip2p release -libp2p-webrtc = { git = "https://github.com/wngr/libp2p-webrtc", branch = "tlfs" } -libp2p-broadcast = { git = "https://github.com/cloudpeers/libp2p-broadcast", branch = "tlfs" } diff --git a/cloud-relay/Cargo.toml b/cloud-relay/Cargo.toml index e9bb6b9..47e60a7 100644 --- a/cloud-relay/Cargo.toml +++ b/cloud-relay/Cargo.toml @@ -8,7 +8,7 @@ acme-lib = "0.8.2" anyhow = "1.0.51" clap = { version = "3.0.0-rc.4", features = ["derive"] } hex = "0.4.3" -libp2p = { version = "0.41.0", features = [ +libp2p = { version = "0.43.0", features = [ "noise", "mplex", "pnet", diff --git a/src/lib.rs b/src/lib.rs index 3afc315..795c867 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -355,7 +355,7 @@ fn init_tracing() { #[cfg(target_os = "android")] use tracing_subscriber::layer::SubscriberExt; #[cfg(target_os = "android")] - let subscriber = subscriber.with(tracing_android::layer("com.cloudpeer")?); + let subscriber = subscriber.with(tracing_android::layer("com.cloudpeer").ok()); tracing::subscriber::set_global_default(subscriber).ok(); std::env::set_var("RUST_BACKTRACE", "1"); } else if cfg!(target_family = "wasm") { diff --git a/src/sync.rs b/src/sync.rs index 2d9b249..46109b3 100644 --- a/src/sync.rs +++ b/src/sync.rs @@ -341,7 +341,7 @@ impl Behaviour { ) -> Poll< NetworkBehaviourAction< ::OutEvent, - ::ProtocolsHandler, + ::ConnectionHandler, >, > { if let Some(peer) = self.dial.pop_front() {