spacedrive icon indicating copy to clipboard operation
spacedrive copied to clipboard

[ENG-759] P2P Cleanup

Open oscartbeaumont opened this issue 1 year ago • 2 comments

Changes:

  • [x] Rename NodeInformation struct
  • [x] Refactor encoding/decoding protocol to reduce bugs
  • [x] Split unicast and multicast because using multicast is almost certainly a misuse of the P2P library.
  • [x] Remove Volume to Node relation -> Remove node_id from Volume
  • [x] Remove Job to Node relation
  • [x] Remove Location to Node relation
  • [x] Remove duplicate node_local_id from Library struct
  • [x] Replace Node table with Instance table
  • [x] Remove local_id from Library as it's kinda redundant
  • [x] Enable Prisma migrations data loss in prod
  • [x] Primitive library-based pairing working
  • [x] Fix the migration system yielding an invalid JSON file if original.len() > updated.len()

oscartbeaumont avatar Jun 30 '23 04:06 oscartbeaumont

ENG-759 Refactor P2P crate

Some parts of the P2P system just aren't working how I intended. The change from node level to library level pairing has brought up a heap of technical problems.

  • [ ] MDNS needs to be per library per node not just per node
    • [ ] How should the core express the concept of a library to it?
  • [ ] All verification of TLS or pairing at a node level needs to be thrown out the window completely
  • [ ] Broadcast streams can probably be thrown in the garbage cause they are also certainly the wrong thing to use.
  • [ ] Custom PeerId struct should be yeeted and the concept of them shouldn't be exposed to allocation space anymore
  • [ ] A connection intent style system probs needs exist as part of the tunnel or similar abstraction
  • [ ] Basic binary handling abstraction or utils to clean up and reduce errors in application level code
  • [ ] Rename Spacetime module
  • [ ] Can or should we unify Tunnel and SpacetimeStream??

linear[bot] avatar Jun 30 '23 04:06 linear[bot]

The latest updates on your projects. Learn more about Vercel for Git ↗︎

2 Ignored Deployments
Name Status Preview Comments Updated (UTC)
spacedrive-landing ⬜️ Ignored (Inspect) Visit Preview Jul 12, 2023 6:19am
spacedrive-web ⬜️ Ignored (Inspect) Visit Preview Jul 12, 2023 6:19am

vercel[bot] avatar Jun 30 '23 04:06 vercel[bot]