teor
1c8362fe01
Remove unused imports
2021-02-03 08:32:10 +10:00
Jane Lusby
4cf331562c
combine network setup into an exhaustive match
2021-02-03 08:32:10 +10:00
Jane Lusby
4d6ef89248
avoid using async blocks to avoid lifetime bug with generators
2021-02-03 08:32:10 +10:00
Jane Lusby
685a592399
Add clonable wrapper around TryRecvError
2021-02-03 08:32:10 +10:00
teor
6ffeb670ed
Log the failed response in an unreachable panic
2021-02-03 08:32:10 +10:00
teor
eac4fd181a
Add a Setup enum to manage Inbound network setup internal state
...
This change encodes a bunch of invariants in the type system,
and adds explicit failure states for:
* a closed oneshot,
* bugs in the initialization code.
2021-02-03 08:32:10 +10:00
teor
32b032204a
Consistently return Response::Nil during setup
...
And log an info-level message as a diagnostic, in case setup takes a
long time.
2021-02-03 08:32:10 +10:00
teor
94eb91305b
Stop using ServiceExt::call_all due to buffer bugs
...
ServiceExt::call_all leaks Tower::Buffer reservations, so we can't use
it in Zebra.
Instead, use a loop in the returned future.
See #1593 for details.
2021-02-03 08:32:10 +10:00
teor
64bc45cd2e
Fix state readiness hangs for Inbound
...
Use `ServiceExt::oneshot` to perform state requests.
Explain that `ServiceExt::call_all` calls `poll_ready` internally.
Document a state service invariant imposed by `ServiceExt::call_all`.
2021-02-03 08:32:10 +10:00
teor
4d1a2fd02e
Make the Inbound invariant clearer
2021-02-03 08:32:10 +10:00
teor
2a25b9ee72
Remove services that are never `call`ed from Inbound
...
Uses the `ServiceExt::oneshot` design pattern from #1593 .
2021-02-03 08:32:10 +10:00
dependabot[bot]
25b6491929
build(deps): bump sha2 from 0.9.2 to 0.9.3
...
Bumps [sha2](https://github.com/RustCrypto/hashes ) from 0.9.2 to 0.9.3.
- [Release notes](https://github.com/RustCrypto/hashes/releases )
- [Commits](https://github.com/RustCrypto/hashes/compare/sha2-v0.9.2...sha2-v0.9.3 )
Signed-off-by: dependabot[bot] <support@github.com>
2021-02-01 19:14:15 -05:00
teor
3861a85cc5
Mention security disclosure policy in README
2021-01-31 20:20:50 -05:00
dependabot[bot]
c52310ef91
build(deps): bump jubjub from 0.5.1 to 0.6.0
...
Bumps [jubjub](https://github.com/zkcrypto/jubjub ) from 0.5.1 to 0.6.0.
- [Release notes](https://github.com/zkcrypto/jubjub/releases )
- [Changelog](https://github.com/zkcrypto/jubjub/blob/main/RELEASES.md )
- [Commits](https://github.com/zkcrypto/jubjub/commits )
Signed-off-by: dependabot[bot] <support@github.com>
2021-01-30 01:54:06 -05:00
dependabot[bot]
5619cd1056
build(deps): bump serde from 1.0.122 to 1.0.123
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.122 to 1.0.123.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.122...v1.0.123 )
Signed-off-by: dependabot[bot] <support@github.com>
2021-01-29 21:18:29 -05:00
dependabot[bot]
3c6bf4e1cd
build(deps): bump primitive-types from 0.8.0 to 0.9.0
...
Bumps [primitive-types](https://github.com/paritytech/parity-common ) from 0.8.0 to 0.9.0.
- [Release notes](https://github.com/paritytech/parity-common/releases )
- [Commits](https://github.com/paritytech/parity-common/compare/primitive-types-v0.8.0...primitive-types-v0.9.0 )
Signed-off-by: dependabot[bot] <support@github.com>
2021-01-29 21:11:03 -05:00
dependabot[bot]
db9850afd5
build(deps): bump owo-colors from 1.2.1 to 1.3.0
...
Bumps [owo-colors](https://github.com/jam1garner/owo-colors ) from 1.2.1 to 1.3.0.
- [Release notes](https://github.com/jam1garner/owo-colors/releases )
- [Commits](https://github.com/jam1garner/owo-colors/commits )
Signed-off-by: dependabot[bot] <support@github.com>
2021-01-29 21:05:54 -05:00
teor
7ad090367c
Add security disclosure principles
...
Make our security disclosure goals and principles explicit, including:
- prioritising users and researchers
- assuming good faith
- operating a no fault process
- working with researchers regardless of how they disclose
(but we prefer this process)
2021-01-29 17:44:52 -05:00
Deirdre Connolly
f805d2c8ab
Specify v5, not 'latest'
2021-01-29 17:38:46 -05:00
Deirdre Connolly
018fa2ff62
Enable Release Drafter workflow
2021-01-29 17:33:38 -05:00
Alfredo Garcia
6fd5b2db30
Temporally disable sync_large_checkpoints on Windows ( #1658 )
...
* temporally disable sync_large_checkpoints from CI
* Allow large checkpoint sync tests only on ubuntu and macOS
Co-authored-by: Deirdre Connolly <deirdre@zfnd.org>
2021-01-29 17:29:32 -05:00
Alfredo Garcia
4b34482264
Add hints to port conflict and lock file panics ( #1535 )
...
* add hint for port error
* add issue filter for port panic
* add lock file hint
* add metrics endpoint port conflict hint
* add hint for tracing endpoint port conflict
* add acceptance test for resource conflics
* Split out common conflict test code into a function
* Add state, metrics, and tracing conflict tests
* Add a full set of stderr acceptance test functions
This change makes the stdout and stderr acceptance test interfaces
identical.
* move Zcash listener opening
* add todo about hint for disk full
* add constant for lock file
* match path in state cache
* don't match windows cache path
* Use Display for state path logs
Avoids weird escaping on Windows when using Debug
* Add Windows conflict error messages
* Turn PORT_IN_USE_ERROR into a regex
And add another alternative Windows-specific port error
Co-authored-by: teor <teor@riseup.net>
Co-authored-by: Jane Lusby <jane@zfnd.org>
2021-01-29 22:36:33 +10:00
teor
24f1b9bad1
Document the Inbound service in the start module ( #1653 )
2021-01-29 22:19:06 +10:00
teor
21b0360114
Limit concurrent inbound gossipped block requests
...
Uses the "load shed directly" design pattern from #1618 .
2021-01-29 11:02:26 +10:00
teor
3d9888f736
Rewrite a sync comment
2021-01-29 11:02:26 +10:00
teor
270070f2d9
Change a metrics sentinel to f64::NAN ( #1642 )
...
* Change a metrics sentinel to f64::NAN
And document a tricky part of the code
* rustfmt
* rustfmt again
2021-01-28 17:29:57 +10:00
Deirdre Connolly
1b09538277
Bump versions for zebrad 1.0.0-alpha.1 ( #1646 )
...
* Bump versions where appropriate
Tested with cargo install --locked --path etc
* Remove fixed panics from 'Known Issues'
* Change to alpha release series in the README
Co-authored-by: teor <teor@riseup.net>
2021-01-27 20:31:39 -05:00
Alfredo Garcia
374f9400d0
cleanup: remove duplicated isolated test from ci
2021-01-27 12:19:48 -08:00
teor
391c53aa60
Move BoxError to zebrad's lib.rs
...
For consistency with other crates.
2021-01-27 12:14:27 -08:00
teor
b551d81f8d
Explain why we stay connected on Inbound errors
...
We might be syncing using this peer, so it's ok to just ignore
any internal errors in their Inbound requests, and drop the
request.
2021-01-27 12:08:49 -08:00
Deirdre Connolly
29fa9f5a0a
Don't point at PGP for now
...
Update when we generate keys
https://github.com/ZcashFoundation/zebra/issues/1638
2021-01-25 16:57:35 -05:00
Deirdre Connolly
6348e7bdf1
Remove mention of the CVE as Zfnd was not involved with that.
2021-01-25 16:57:35 -05:00
Deirdre Connolly
0c6d055b32
Remove extra newline
...
Co-authored-by: teor <teor@riseup.net>
2021-01-25 16:57:35 -05:00
Deirdre Connolly
90a69910ce
Add imcomplete responsible-disclosure.md
2021-01-25 16:57:35 -05:00
dependabot[bot]
bac46849eb
build(deps): bump serde from 1.0.120 to 1.0.122
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.120 to 1.0.122.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.120...v1.0.122 )
Signed-off-by: dependabot[bot] <support@github.com>
2021-01-25 12:27:39 -05:00
teor
494a5130c1
Fix clippy "unnecessary Vec::push" lints
2021-01-22 11:51:30 -08:00
teor
00c3ad5d8e
Fix clippy "unnecessary Ok" lints
2021-01-22 11:51:30 -08:00
teor
49e6150427
Use collect() to avoid a lint
2021-01-19 11:02:20 -05:00
teor
eadbea1423
Construct structs with ..default() to avoid a lint
2021-01-19 11:02:20 -05:00
teor
b1d28b73fd
Stop disabling lints that no longer cause warnings on nightly
2021-01-19 11:02:20 -05:00
teor
258789ed9b
Use the rustc unknown lints attribute
...
The clippy unknown lints attribute was deprecated in
nightly in rust-lang/rust#80524 . The old lint name now produces a
warning.
Since we're using `allow(unknown_lints)` to suppress warnings, we need to
add the canonical name, so we can continue to build without warnings on
nightly.
But we also need to keep the old name, so we can continue to build
without warnings on stable.
And therefore, we also need to disable the "removed lints" warning,
otherwise we'll get warnings about the old name on nightly.
We'll need to keep this transitional clippy config until rustc 1.51 is
stable.
2021-01-19 11:02:20 -05:00
dependabot[bot]
112821a266
build(deps): bump serde from 1.0.119 to 1.0.120
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.119 to 1.0.120.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.119...v1.0.120 )
Signed-off-by: dependabot[bot] <support@github.com>
2021-01-19 10:58:03 -05:00
teor
05fff8e6f7
Revert "Stop panicking when fail_with is called twice on a connection"
...
But keep the extra error information.
2021-01-18 00:23:36 -05:00
teor
4fe81da953
Improve logging for connection state errors
2021-01-18 00:23:36 -05:00
teor
a6c1cd3c35
Stop panicking when fail_with is called twice on a connection
...
We can't rule out the connection state changing between the state checks
and any eventual failures, particularly in the presence of async code.
So we turn this panic into a warning.
2021-01-18 00:23:36 -05:00
teor
44c8fafc29
Stop processing the request after failing an overloaded connection
...
zebra-network's Connection expects that `fail_with` is only called once
per connection, but the overload handling code continues to process the
current request after an overload error, potentially leading to further
failures.
Closes #1599
2021-01-18 00:23:36 -05:00
dependabot[bot]
3a093cca39
build(deps): bump secp256k1 from 0.20.0 to 0.20.1
...
Bumps [secp256k1](https://github.com/rust-bitcoin/rust-secp256k1 ) from 0.20.0 to 0.20.1.
- [Release notes](https://github.com/rust-bitcoin/rust-secp256k1/releases )
- [Changelog](https://github.com/rust-bitcoin/rust-secp256k1/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rust-bitcoin/rust-secp256k1/commits )
Signed-off-by: dependabot[bot] <support@github.com>
2021-01-17 21:38:41 -05:00
dependabot[bot]
75b510a9f6
build(deps): bump futures from 0.3.11 to 0.3.12
...
Bumps [futures](https://github.com/rust-lang/futures-rs ) from 0.3.11 to 0.3.12.
- [Release notes](https://github.com/rust-lang/futures-rs/releases )
- [Changelog](https://github.com/rust-lang/futures-rs/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rust-lang/futures-rs/compare/0.3.11...0.3.12 )
Signed-off-by: dependabot[bot] <support@github.com>
2021-01-17 15:42:13 -05:00
teor
0f0fb93b5c
Update some comments in zebra-network
...
Add ticket numbers, and update based on design decisions and new code.
2021-01-15 09:02:10 -05:00
dependabot[bot]
68e2942f83
build(deps): bump futures from 0.3.9 to 0.3.11
...
Bumps [futures](https://github.com/rust-lang/futures-rs ) from 0.3.9 to 0.3.11.
- [Release notes](https://github.com/rust-lang/futures-rs/releases )
- [Changelog](https://github.com/rust-lang/futures-rs/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rust-lang/futures-rs/compare/0.3.9...0.3.11 )
Signed-off-by: dependabot[bot] <support@github.com>
2021-01-15 08:46:33 -05:00