rqbit/TODO.md
2023-11-24 14:08:02 +00:00

1.1 KiB

  • when we have the whole torrent, there's no point talking to peers that also have the whole torrent and keep reconnecting to them.
  • per-file stats
  • [x (partial)] per-peer stats
  • use some concurrent hashmap e.g. flurry or dashmap
  • tracing instead of logging. Debugging peers: RUST_LOG=[{peer=.*}]=debug test-log for tests
  • reopen read only is bugged
  • initializing/checking
    • blocks the whole process. Need to break it up. On slower devices (rpi) just hangs for a good while
    • checking torrents should be visible right away
  • server persistence
    • it would be nice to restart the server and keep the state
  • torrent actions
    • pause/unpause
    • remove including from disk
  • DHT
    • for torrents with a few seeds might be cool to re-query DHT once in a while
    • it's sending many requests now way too fast, locks up Mac OS UI annoyingly

someday:

  • cancellation from the client-side for the lib (i.e. stop the torrent manager)

refactor:

  • where are peers stored
  • http api pause/unpause etc
  • when a live torrent fails writing to disk, it should transition to error state