-
-
Notifications
You must be signed in to change notification settings - Fork 99
[WIP] feat: migrate to iroh 0.5 #4546
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Is it possible to disable holepunching at first? So we have a stable release with updated iroh without quinn patches, and then enable holepunching in a later version. |
Not entirely, we can disable usage of the relays, but not all of hole punching. |
}; | ||
|
||
// get the hash of the next blob, or finish if there are no more | ||
let Some(blob) = blobs.next() else { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this assumes that the request is complete without gaps. Which I guess is fine, but maybe there should be an assert for the assumption somewhere.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
how would you check for that?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You could do an assert on the request. But then again you are creating the request a few lines earlier, so maybe just have a comment where the request is created? Otherwise check that child_index is consecutive.
6f8135c
to
ad7c324
Compare
@link2xt is this a known issue?
|
No, |
d3259cd
to
d0c5c10
Compare
we need to let the provider know that we want to support iroh collections
a0fdfc8
to
e3f75f9
Compare
I am confused by the latest failures
|
run |
I updated Desktop to use this branch and tried to scan the QR code generated with iroh 0.5, but Android failed with an error "invalid DCBACKUP payload". Is this incompatible with previous version of iroh? EDIT: I have now compiled Android with iroh 0.5 and backup transfer from Desktop to Android worked. So the problem is that QR code format changed and only iroh 0.5 can parse the tickets generated by iroh 0.5. |
ftr, as discussed in n0 chat, we cannot merge this pr in this form for that reason (we would break add-second-device for at least some weeks until all delta chat versions are updated) |
As a temporary solution I forked 0.4.1 and updated dependencies: #4881 |
Current plan is to keep using iroh 0.4 (we are currently at iroh 0.4.2 pre-release) to keep backwards compatibility. We may eventually switch backup transfer to using latest iroh-net directly to setup a connection and use it to stream the .tar file. This should also allow to stream the backup in any direction, so would be a user-visible improvement. |
@dignifiedquire We are ok with breaking compatibility once, but then it makes sense to switch from using full iroh stack to just setting up a connection and allow backup transfer in both directions (see my previous comment) without agreeing in advance on the content. But then I expect that establishing connections given IP addresses and peer ID should be backwards-compatible in future versions of iroh. |
Context: We will be releasing the new version of iroh (
0.5.0
) with support for holepunching next week.This is a WIP PR to track that we can upgrade deltachat easily and test things out.
TODOs
0.5.0
DERP
.