This change makes sure that nodes don't gossip announcements back to
the announcers.
Since the tests were relying on this mechanism to populate the routing
table, we had to change a few more things, such as adding the inventory
to the node's routing table.
Signed-off-by: Alexis Sellier <self@cloudhead.io>
The tests were flaky because the routes are sampled at a moment
when gossip could still be happening. Instead, we check the
local inventory directly to build the expected routing table.
Signed-off-by: Alexis Sellier <self@cloudhead.io>
By allowing the node to run using a `MockSigner`, we speed up tests
significantly, since PBKDF2 doesn't need to run.
Signed-off-by: Alexis Sellier <self@cloudhead.io>
Instead of only being interested in messages from "now", we request
messages from one hour in the past up to now. This lets nodes catch
up on state more quickly, without having to wait for new announcements.
Signed-off-by: Alexis Sellier <self@cloudhead.io>
Workaround a client documentation test dependency on radicle's
radicle-remote-helper.
The framework has yet to support using the projects version directly. A
proper fix is non-trivial.
Signed-off-by: Slack Coder <slackcoder@server.ky>
Define git author name and email address, and others to allow using it
deterministically in documentation tests.
Signed-off-by: Slack Coder <slackcoder@server.ky>
Use '-'s to avoid trailing spaces on items when listing patches.
The spaces are used as part of the format with colouring. However they
are a nuisance to support in testing given the autoformatting of editors
to remove them.
Signed-off-by: Slack Coder <slackcoder@server.ky>
Make `rad patch` accept subcommands for specifying its operation in
place of the '--command' notation.
For instance `rad patch update` versus `rad patch --update`. Also make
the default operation list active patches, replacing patch creation.
Patch creation is now done via `rad patch open`.
Make these changes in a way consistent with other commands like `rad
delegate`.
Add '--no-confirm' to patch to support this subcommand's documentation
test.
Signed-off-by: Slack Coder <slackcoder@server.ky>
We shouldn't be marking attempted peers as "connected". We should wait
for the connection to be properly established.
Signed-off-by: Alexis Sellier <alexis@radicle.xyz>
There are few unrelated changes in this commit that I wasn't able to
split out, mostly due to laziness, so I'll list them here:
* The node startup logic is moved out of the main function, and into a
dedicated functionin `client.rs`.
* There is a tentative worker implementation that is untested, and
handles git replication both ways. It's likely lacking in various ways
but I wanted to get it in there anyway.
* `Address` was moved from `radicle-node` to `radicle`, because it's
needed to send `Connect` commands from the node handle.
* The `netservices` dependency was updated.
* Finally, there is a first end-to-end node test, which currently
doesn't use NoiseXK, but uses the new reactor in `netservices`.
Signed-off-by: Alexis Sellier <self@cloudhead.io>