Skip to content
This repository has been archived by the owner on Mar 12, 2020. It is now read-only.

v0.4.1

Compare
Choose a tag to compare
@textileio-machine textileio-machine released this 15 Jun 17:25
03a7834

Changelog

User facing changes

Threads

  • Block nodes now contain two extra links:
    • target, pulled out of the encrypted block, enabling arbitrary nesting of data and message blocks
    • data, the new home for the data link (previously target)
  • With the addition of the extra links, the thread graph is traversable by IPFS without touching the encrypted payloads 🎉, which paves the way for an OrbitDB-like public thread type, and js-threads

Cafe Service

  • Fixes a bug in handleDeliverMessage where the envelope payload was not being correctly unmarshalled

Files

  • Can now take a target (nested files), but currently disabled

Messages

  • Can now take a target (nested messages), but currently disabled

Comments

  • Deprecated (replaced by messages w/ a target), but currently still active

Fixes

  • Fixes an invites bug which caused direct invites to never be sent

Internal Changes

Threads

  • Block indexes now have three states:
    • READY: payload is downloaded and synced (if created locally)
    • QUEUED: waiting to sync
    • PENDING: waiting to download
  • During the thread traversal, the inner payloads (the encrypted part) are downloaded with a queue (BlockDownloads), which are handed in concurrent batches like the other queues, while the thread cursor continues to traverse
  • Traversal handles parents concurrently
  • The actual download could be moved to OS-specific background fetch APIs on mobile, similar to sync

Thread Service

  • Logical cleanup, which is good prep for moving threads to their own repo (go-threads)

References