Alexis Sellier
7d5347b74f
node: Document worker a little more
2023-01-29 21:34:40 +01:00
Alexis Sellier
b92dc59204
node: Turn off `--atomic` when not supported
2023-01-29 18:22:41 +01:00
Alexis Sellier
23cf44f4c7
node: Rename `client` module to `runtime`
2023-01-29 17:33:07 +01:00
Alexis Sellier
02be334144
node: Use `git-daemon` as backend
2023-01-29 17:26:01 +01:00
Alexis Sellier
d9e1055067
Improve logging
2023-01-28 23:58:16 +01:00
Alexis Sellier
deeb160c2d
node: Improve stderr logging for git process
2023-01-27 17:04:20 +01:00
Alexis Sellier
be95222fb5
node: Fix bug in upload-pack
...
We were not properly exiting one of the threads that was copying
data from the stream to the upload-pack process. This is a fix.
2023-01-27 15:09:17 +01:00
Alexis Sellier
963ad3c3d7
Get `rad clone` working correctly
2023-01-25 11:35:20 +01:00
Alexis Sellier
fea14ff7b3
Update `clone` functionality for new replication
2023-01-25 10:21:57 +01:00
Alexis Sellier
ef950d515a
node: Fully integrate worker fetch into service
2023-01-25 10:21:57 +01:00
Alexis Sellier
ec2e7d7ee1
node: Refactor fetch response code
...
Only user-requested fetches require a response.
Signed-off-by: Alexis Sellier <self@cloudhead.io>
2023-01-25 10:21:57 +01:00
Alexis Sellier
d25c47ad0e
node: Get rid of worker response channel
2023-01-18 17:45:46 +01:00
Alexis Sellier
067b532154
node: Get replication test to pass
...
Signed-off-by: Alexis Sellier <self@cloudhead.io>
2023-01-18 17:45:46 +01:00
Alexis Sellier
b9484b6832
node: Implement graceful shutdown
...
Signed-off-by: Alexis Sellier <alexis@radicle.xyz>
2023-01-18 17:44:16 +01:00
Alexis Sellier
3d04849b7b
node: Properly parse replication data
...
Fix all of the `FIXME` in the worker.
Signed-off-by: Alexis Sellier <self@cloudhead.io>
2023-01-17 12:59:00 +01:00
Alexis Sellier
63e7248847
node: Complete Noise handshake integration
...
Co-authored-by: Dr. Maxim Orlovsky <dr.orlovsky@gmail.com>
Signed-off-by: Alexis Sellier <self@cloudhead.io>
2023-01-17 11:01:36 +01:00
Alexis Sellier
438ae84304
node: Implement E2E node test
...
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>
2023-01-12 20:34:31 +01:00
Dr Maxim Orlovsky
cf0d55fb11
node: Update io-reactor
...
Signed-off-by: Alexis Sellier <alexis@radicle.xyz>
2023-01-06 11:27:07 +01:00
Dr. Maxim Orlovsky
947c89a398
node: Implement simple worker thread pool
2023-01-05 15:56:08 +01:00
Dr. Maxim Orlovsky
a7b1c19746
node: Implement worker thread handover
...
Also implements listener behavior.
Signed-off-by: Alexis Sellier <alexis@radicle.xyz>
2023-01-05 15:16:38 +01:00