Skip to content

Instantly share code, notes, and snippets.

@pfrazee
Created November 30, 2016 23:07
Show Gist options
  • Save pfrazee/5e47226f0928765ec7decb1dd6695628 to your computer and use it in GitHub Desktop.
Save pfrazee/5e47226f0928765ec7decb1dd6695628 to your computer and use it in GitHub Desktop.
archive.metadata.peers.forEach((peer) => {
console.log('resetting', upload, peer)
archive.unreplicate(peer.stream)
archive.replicate({ stream: peer.stream, upload })
})
@pfrazee
Copy link
Author

pfrazee commented Nov 30, 2016

Uncaught Exception:
TypeError: Cannot read property 'have' of null
    at Channel.onopen (/Users/paulfrazee/my/beaker-browser/app/node_modules/hypercore/lib/replicate.js:136:17)
    at emitNone (events.js:86:13)
    at Channel.emit (events.js:185:7)
    at Protocol._open (/Users/paulfrazee/my/beaker-browser/app/node_modules/hypercore-protocol/index.js:532:13)
    at Protocol.open (/Users/paulfrazee/my/beaker-browser/app/node_modules/hypercore-protocol/index.js:304:10)
    at ready (/Users/paulfrazee/my/beaker-browser/app/node_modules/hypercore/lib/replicate.js:106:39)
    at /Users/paulfrazee/my/beaker-browser/app/node_modules/hypercore/lib/replicate.js:24:7
    at apply (/Users/paulfrazee/my/beaker-browser/app/node_modules/thunky/index.js:16:28)
    at Feed.open (/Users/paulfrazee/my/beaker-browser/app/node_modules/thunky/index.js:27:3)
    at replicate (/Users/paulfrazee/my/beaker-browser/app/node_modules/hypercore/lib/replicate.js:22:10)

@pfrazee
Copy link
Author

pfrazee commented Nov 30, 2016

Peer {
  domain: null,
  _events: {},
  _eventsCount: 0,
  _maxListeners: undefined,
  _tick: 0,
  _index: 0,
  _blocks: 0,
  uploading: false,
  downloading: true,
  maxRequests: 1024,
  feed: 
   Feed {
     domain: null,
     _events: 
      { close: [Function: onclose],
        download: [Function],
        upload: [Function],
        'peer-add': [Function],
        'peer-remove': [Function],
        'download-finished': [Function] },
     _eventsCount: 6,
     _maxListeners: undefined,
     options: 
      { live: false,
        sparse: true,
        file: [Function: file],
        key: <Buffer fc 9f 5f 9b 79 00 8f 54 46 49 cc ff d8 e4 d7 85 05 4a 8c 19 e7 6f d1 b8 05 de a0 1a 11 72 01 6c>,
        valueEncoding: [Object],
        storage: [Object] },
     key: <Buffer 30 2f 0b ad ee 2b 7b 70 89 20 3d 63 7d 5d d9 6c 51 b8 bb f8 25 aa f5 06 94 18 2c 46 35 c3 4b 41>,
     secretKey: <Buffer 39 a2 72 0b 96 34 39 85 d8 63 06 1c 2c 0a a5 ad 0d 66 4c 8a 19 f4 9b 0b 30 98 40 63 5a d9 1e 4e 30 2f 0b ad ee 2b 7b 70 89 20 3d 63 7d 5d d9 6c 51 b8 ... >,
     discoveryKey: <Buffer 5a 45 bf 27 eb 00 7b f3 4c 2f f0 0f 43 48 8b 80 43 b7 82 05 e9 1e d7 31 7e fb ad 50 5f 94 1a a6>,
     prefix: <Buffer 54 e9 81 c7 22 52 bf 6b ef 37 06 0c 6d 43 17 dd 80 cd cb a0 78 87 54 aa 3a 36 dd c7 d1 bf 5b 0c>,
     live: true,
     open: [Function],
     opened: true,
     tree: TreeIndex { bitfield: [Object] },
     bitfield: Bitfield { length: 8, buffer: <Buffer c0> },
     blocks: 2,
     bytes: 64,
     storage: null,
     valueEncoding: 
      { encode: [Object],
        decode: [Object],
        encodingLength: [Function] },
     peers: [ [Circular] ],
     selection: 
      Selection {
        _feed: [Circular],
        _reserved: [Object],
        _ranges: [Object],
        _offsets: [Object] },
     _sync: [Function],
     _first: true,
     _db: 
      LevelUP {
        domain: null,
        _events: [Object],
        _eventsCount: 1,
        _maxListeners: Infinity,
        options: [Object],
        _codec: [Object],
        _status: 'open',
        location: '/Users/paulfrazee/Library/Application Support/Beaker Browser/Hyperdrive',
        db: [Object] },
     _core: 
      Hypercore {
        id: <Buffer 1c 55 50 da 58 d5 64 1a 83 c3 02 d0 29 a3 86 07 51 80 2a 07 8f e5 47 14 f6 3e b0 55 48 2e 5f b0>,
        _open: [Object],
        _db: [Object],
        _nodes: [Object],
        _data: [Object],
        _signatures: [Object],
        _feeds: [Object],
        _bitfields: [Object],
        _storage: null,
        _valueEncoding: [Object] },
     _prefix: '!54e981c72252bf6bef37060c6d4317dd80cdcba0788754aa3a36ddc7d1bf5b0c!',
     _merkle: 
      MerkleGenerator {
        roots: [Object],
        blocks: 2,
        _leaf: [Function],
        _parent: [Function] },
     _missing: 0,
     _appendCallback: null,
     _buffer: null,
     _bufferCallbacks: null,
     _afterAppend: [Function: afterAppend],
     _appending: 0,
     _appendingBytes: 0,
     _downloaded: 0 },
  channel: 
   Channel {
     domain: null,
     _events: 
      { handshake: [Function],
        have: [Function: onhave],
        want: [Function: onwant],
        request: [Function: onrequest],
        data: [Function: ondata],
        cancel: [Function: oncancel],
        pause: [Function: onpause],
        resume: [Function: onresume],
        tick: [Function: ontick],
        end: [Function: onend],
        open: [Function: onopen] },
     _eventsCount: 11,
     _maxListeners: undefined,
     state: [Circular],
     protocol: 
      Protocol {
        _readableState: [Object],
        readable: true,
        domain: null,
        _events: [Object],
        _eventsCount: 9,
        _maxListeners: undefined,
        _writableState: [Object],
        writable: true,
        allowHalfOpen: true,
        _writable: [Object],
        _readable: [Object],
        _readable2: [Object],
        _forwardDestroy: true,
        _forwardEnd: true,
        _corked: 0,
        _ondrain: null,
        _drained: true,
        _forwarding: false,
        _unwrite: [Function: clear],
        _unread: [Function: clear],
        _ended: false,
        destroyed: false,
        channels: [Object],
        private: true,
        id: <Buffer 1c 55 50 da 58 d5 64 1a 83 c3 02 d0 29 a3 86 07 51 80 2a 07 8f e5 47 14 f6 3e b0 55 48 2e 5f b0>,
        remoteId: <Buffer b9 34 25 34 fe e1 16 4c bb 31 12 c3 1a b9 79 fe b0 a7 38 c8 ad 27 84 fd ef dd 52 26 5f 65 3f 5c>,
        _finalized: false,
        _paused: 0,
        _local: [Object],
        _remote: [Object],
        _remoteExtensions: [Object],
        _localExtensions: [Object],
        _keepAlive: 2,
        _remoteKeepAlive: 3,
        _interval: [Object],
        _encode: [Object],
        _decode: [Object] },
     opened: true,
     closed: false,
     key: <Buffer 30 2f 0b ad ee 2b 7b 70 89 20 3d 63 7d 5d d9 6c 51 b8 bb f8 25 aa f5 06 94 18 2c 46 35 c3 4b 41>,
     discoveryKey: <Buffer 5a 45 bf 27 eb 00 7b f3 4c 2f f0 0f 43 48 8b 80 43 b7 82 05 e9 1e d7 31 7e fb ad 50 5f 94 1a a6>,
     local: 0,
     remote: 0,
     buffer: [],
     _nonce: <Buffer 28 bf d7 a6 07 d8 31 38 10 b5 50 e7 ad 24 63 8e 86 0f 4b e3 b1 65 c0 8e>,
     _remoteNonce: <Buffer a9 85 73 2e ed 76 45 5a e6 79 af e7 eb d8 5f 75 3a 7c 4d 53 1a 1a 8a 6c>,
     _ready: true,
     _firstNonce: <Buffer 28 bf d7 a6 07 d8 31 38 10 b5 50 e7 ad 24 63 8e 86 0f 4b e3 b1 65 c0 8c> },
  stream: 
   Protocol {
     _readableState: 
      ReadableState {
        objectMode: false,
        highWaterMark: 16384,
        buffer: [],
        length: 0,
        pipes: [Object],
        pipesCount: 1,
        flowing: true,
        ended: false,
        endEmitted: false,
        reading: true,
        sync: false,
        needReadable: true,
        emittedReadable: false,
        readableListening: false,
        resumeScheduled: false,
        defaultEncoding: 'utf8',
        ranOut: false,
        awaitDrain: 0,
        readingMore: false,
        decoder: null,
        encoding: null },
     readable: true,
     domain: null,
     _events: 
      { end: [Object],
        close: [Object],
        finish: [Object],
        timeout: [Object],
        handshake: [Function: onhandshake],
        error: [Object],
        unpipe: [Function: onunpipe],
        drain: [Function],
        data: [Function: ondata] },
     _eventsCount: 9,
     _maxListeners: undefined,
     _writableState: 
      WritableState {
        objectMode: false,
        highWaterMark: 16384,
        needDrain: false,
        ending: false,
        ended: false,
        finished: false,
        decodeStrings: true,
        defaultEncoding: 'utf8',
        length: 0,
        writing: false,
        corked: 0,
        sync: false,
        bufferProcessing: false,
        onwrite: [Function],
        writecb: null,
        writelen: 0,
        bufferedRequest: null,
        lastBufferedRequest: null,
        pendingcb: 0,
        prefinished: false,
        errorEmitted: false,
        bufferedRequestCount: 0,
        corkedRequestsFree: [Object] },
     writable: true,
     allowHalfOpen: true,
     _writable: 
      Decoder {
        _readableState: [Object],
        readable: true,
        domain: null,
        _events: [Object],
        _eventsCount: 7,
        _maxListeners: undefined,
        _writableState: [Object],
        writable: true,
        allowHalfOpen: true,
        _transformState: [Object],
        _missing: 0,
        _message: null,
        _limit: 8388608,
        _allowEmpty: true,
        _prefix: <Buffer 00 00 00 00>,
        _ptr: 0 },
     _readable: 
      Readable {
        _readableState: [Object],
        readable: true,
        domain: null,
        _events: [Object],
        _eventsCount: 5,
        _maxListeners: undefined,
        _read: [Function: noop] },
     _readable2: 
      Readable {
        _readableState: [Object],
        readable: true,
        domain: null,
        _events: [Object],
        _eventsCount: 5,
        _maxListeners: undefined,
        _read: [Function: noop] },
     _forwardDestroy: true,
     _forwardEnd: true,
     _corked: 0,
     _ondrain: null,
     _drained: true,
     _forwarding: false,
     _unwrite: [Function: clear],
     _unread: [Function: clear],
     _ended: false,
     destroyed: false,
     channels: 
      { '5a45bf27eb007bf34c2ff00f43488b8043b78205e91ed7317efbad505f941aa6': [Object],
        f96e845cbe2e7a57091f7f1cf6faa529b2af467bdaa885fcc21f8b6a0fdd9654: [Object] },
     private: true,
     id: <Buffer 1c 55 50 da 58 d5 64 1a 83 c3 02 d0 29 a3 86 07 51 80 2a 07 8f e5 47 14 f6 3e b0 55 48 2e 5f b0>,
     remoteId: <Buffer b9 34 25 34 fe e1 16 4c bb 31 12 c3 1a b9 79 fe b0 a7 38 c8 ad 27 84 fd ef dd 52 26 5f 65 3f 5c>,
     _finalized: false,
     _paused: 0,
     _local: [ [Object], [Object] ],
     _remote: [ [Object] ],
     _remoteExtensions: [ undefined ],
     _localExtensions: [ undefined ],
     _keepAlive: 2,
     _remoteKeepAlive: 3,
     _interval: 
      Timeout {
        _called: false,
        _idleTimeout: 1250,
        _idlePrev: null,
        _idleNext: null,
        _idleStart: 2639,
        _onTimeout: [Function: wrapper],
        _repeat: [Function: kick],
        _handle: [Object] },
     _encode: 
      Readable {
        _readableState: [Object],
        readable: true,
        domain: null,
        _events: [Object],
        _eventsCount: 5,
        _maxListeners: undefined,
        _read: [Function: noop] },
     _decode: 
      Decoder {
        _readableState: [Object],
        readable: true,
        domain: null,
        _events: [Object],
        _eventsCount: 7,
        _maxListeners: undefined,
        _writableState: [Object],
        writable: true,
        allowHalfOpen: true,
        _transformState: [Object],
        _missing: 0,
        _message: null,
        _limit: 8388608,
        _allowEmpty: true,
        _prefix: <Buffer 00 00 00 00>,
        _ptr: 0 } },
  remotePausing: false,
  remoteBitfield: Bitfield { length: 16, buffer: <Buffer 00 00> },
  remoteTree: TreeIndex { bitfield: Bitfield { length: 16, buffer: <Buffer 00 00> } },
  remoteRequests: [],
  reading: false,
  pausing: false,
  responses: [],
  requests: [] }

@pfrazee
Copy link
Author

pfrazee commented Nov 30, 2016

State after unreplicate():

resetting false Peer {
  domain: null,
  _events: {},
  _eventsCount: 0,
  _maxListeners: undefined,
  _tick: 0,
  _index: 0,
  _blocks: 2,
  uploading: true,
  downloading: true,
  maxRequests: 1024,
  feed: 
   Feed {
     domain: null,
     _events: 
      { close: [Function: onclose],
        download: [Function],
        upload: [Function],
        'peer-add': [Function],
        'peer-remove': [Function],
        'download-finished': [Function] },
     _eventsCount: 6,
     _maxListeners: undefined,
     options: 
      { live: false,
        sparse: true,
        file: [Function: file],
        key: <Buffer fc 9f 5f 9b 79 00 8f 54 46 49 cc ff d8 e4 d7 85 05 4a 8c 19 e7 6f d1 b8 05 de a0 1a 11 72 01 6c>,
        valueEncoding: [Object],
        storage: [Object] },
     key: <Buffer 30 2f 0b ad ee 2b 7b 70 89 20 3d 63 7d 5d d9 6c 51 b8 bb f8 25 aa f5 06 94 18 2c 46 35 c3 4b 41>,
     secretKey: <Buffer 39 a2 72 0b 96 34 39 85 d8 63 06 1c 2c 0a a5 ad 0d 66 4c 8a 19 f4 9b 0b 30 98 40 63 5a d9 1e 4e 30 2f 0b ad ee 2b 7b 70 89 20 3d 63 7d 5d d9 6c 51 b8 ... >,
     discoveryKey: <Buffer 5a 45 bf 27 eb 00 7b f3 4c 2f f0 0f 43 48 8b 80 43 b7 82 05 e9 1e d7 31 7e fb ad 50 5f 94 1a a6>,
     prefix: <Buffer 54 e9 81 c7 22 52 bf 6b ef 37 06 0c 6d 43 17 dd 80 cd cb a0 78 87 54 aa 3a 36 dd c7 d1 bf 5b 0c>,
     live: true,
     open: [Function],
     opened: true,
     tree: TreeIndex { bitfield: [Object] },
     bitfield: Bitfield { length: 8, buffer: <Buffer c0> },
     blocks: 2,
     bytes: 64,
     storage: null,
     valueEncoding: 
      { encode: [Object],
        decode: [Object],
        encodingLength: [Function] },
     peers: [],
     selection: 
      Selection {
        _feed: [Circular],
        _reserved: [Object],
        _ranges: [Object],
        _offsets: [Object] },
     _sync: [Function],
     _first: true,
     _db: 
      LevelUP {
        domain: null,
        _events: [Object],
        _eventsCount: 1,
        _maxListeners: Infinity,
        options: [Object],
        _codec: [Object],
        _status: 'open',
        location: '/Users/paulfrazee/Library/Application Support/Beaker Browser/Hyperdrive',
        db: [Object] },
     _core: 
      Hypercore {
        id: <Buffer 98 0e 6f 8d ee 64 97 c8 b2 e7 6b 9a b7 d1 c0 4f 9e 3f 58 9e 06 c5 6b 5d dd a0 f2 a7 b5 15 bd 1e>,
        _open: [Object],
        _db: [Object],
        _nodes: [Object],
        _data: [Object],
        _signatures: [Object],
        _feeds: [Object],
        _bitfields: [Object],
        _storage: null,
        _valueEncoding: [Object] },
     _prefix: '!54e981c72252bf6bef37060c6d4317dd80cdcba0788754aa3a36ddc7d1bf5b0c!',
     _merkle: 
      MerkleGenerator {
        roots: [Object],
        blocks: 2,
        _leaf: [Function],
        _parent: [Function] },
     _missing: 0,
     _appendCallback: null,
     _buffer: null,
     _bufferCallbacks: null,
     _afterAppend: [Function: afterAppend],
     _appending: 0,
     _appendingBytes: 0,
     _downloaded: 0 },
  channel: 
   Channel {
     domain: null,
     _events: 
      { handshake: [Function],
        have: [Function: onhave],
        want: [Function: onwant],
        request: [Function: onrequest],
        data: [Function: ondata],
        cancel: [Function: oncancel],
        pause: [Function: onpause],
        resume: [Function: onresume],
        tick: [Function: ontick],
        end: [Function: onend],
        open: [Function: onopen] },
     _eventsCount: 11,
     _maxListeners: undefined,
     state: [Circular],
     protocol: 
      Protocol {
        _readableState: [Object],
        readable: true,
        domain: null,
        _events: [Object],
        _eventsCount: 9,
        _maxListeners: undefined,
        _writableState: [Object],
        writable: true,
        allowHalfOpen: true,
        _writable: [Object],
        _readable: [Object],
        _readable2: [Object],
        _forwardDestroy: true,
        _forwardEnd: true,
        _corked: 0,
        _ondrain: null,
        _drained: true,
        _forwarding: false,
        _unwrite: [Function: clear],
        _unread: [Function: clear],
        _ended: false,
        destroyed: false,
        channels: [Object],
        private: true,
        id: <Buffer 98 0e 6f 8d ee 64 97 c8 b2 e7 6b 9a b7 d1 c0 4f 9e 3f 58 9e 06 c5 6b 5d dd a0 f2 a7 b5 15 bd 1e>,
        remoteId: <Buffer b9 34 25 34 fe e1 16 4c bb 31 12 c3 1a b9 79 fe b0 a7 38 c8 ad 27 84 fd ef dd 52 26 5f 65 3f 5c>,
        _finalized: false,
        _paused: 0,
        _local: [Object],
        _remote: [Object],
        _remoteExtensions: [Object],
        _localExtensions: [Object],
        _keepAlive: 0,
        _remoteKeepAlive: 0,
        _interval: [Object],
        _encode: [Object],
        _decode: [Object] },
     opened: true,
     closed: true,
     key: <Buffer 30 2f 0b ad ee 2b 7b 70 89 20 3d 63 7d 5d d9 6c 51 b8 bb f8 25 aa f5 06 94 18 2c 46 35 c3 4b 41>,
     discoveryKey: <Buffer 5a 45 bf 27 eb 00 7b f3 4c 2f f0 0f 43 48 8b 80 43 b7 82 05 e9 1e d7 31 7e fb ad 50 5f 94 1a a6>,
     local: -1,
     remote: 0,
     buffer: [],
     _nonce: <Buffer 4c ad 50 54 bf ba 62 8f 5b 19 ec 05 8d 33 24 b2 9e 53 95 61 43 2c 73 f5>,
     _remoteNonce: <Buffer 10 24 37 45 82 53 78 f4 b8 7c 80 6e c3 98 00 da e2 e8 b6 f2 d8 58 97 b2>,
     _ready: true,
     _firstNonce: <Buffer 4c ad 50 54 bf ba 62 8f 5b 19 ec 05 8d 33 24 b2 9e 53 95 61 43 2c 73 f1> },
  stream: 
   Protocol {
     _readableState: 
      ReadableState {
        objectMode: false,
        highWaterMark: 16384,
        buffer: [],
        length: 0,
        pipes: [Object],
        pipesCount: 1,
        flowing: true,
        ended: false,
        endEmitted: false,
        reading: true,
        sync: false,
        needReadable: true,
        emittedReadable: false,
        readableListening: false,
        resumeScheduled: false,
        defaultEncoding: 'utf8',
        ranOut: false,
        awaitDrain: 0,
        readingMore: true,
        decoder: null,
        encoding: null },
     readable: true,
     domain: null,
     _events: 
      { end: [Object],
        close: [Object],
        finish: [Object],
        timeout: [Object],
        handshake: [Function: onhandshake],
        error: [Object],
        unpipe: [Function: onunpipe],
        drain: [Function],
        data: [Function: ondata] },
     _eventsCount: 9,
     _maxListeners: undefined,
     _writableState: 
      WritableState {
        objectMode: false,
        highWaterMark: 16384,
        needDrain: false,
        ending: false,
        ended: false,
        finished: false,
        decodeStrings: true,
        defaultEncoding: 'utf8',
        length: 0,
        writing: false,
        corked: 0,
        sync: false,
        bufferProcessing: false,
        onwrite: [Function],
        writecb: null,
        writelen: 0,
        bufferedRequest: null,
        lastBufferedRequest: null,
        pendingcb: 0,
        prefinished: false,
        errorEmitted: false,
        bufferedRequestCount: 0,
        corkedRequestsFree: [Object] },
     writable: true,
     allowHalfOpen: true,
     _writable: 
      Decoder {
        _readableState: [Object],
        readable: true,
        domain: null,
        _events: [Object],
        _eventsCount: 7,
        _maxListeners: undefined,
        _writableState: [Object],
        writable: true,
        allowHalfOpen: true,
        _transformState: [Object],
        _missing: 0,
        _message: null,
        _limit: 8388608,
        _allowEmpty: true,
        _prefix: <Buffer 00 00 00 00>,
        _ptr: 0 },
     _readable: 
      Readable {
        _readableState: [Object],
        readable: true,
        domain: null,
        _events: [Object],
        _eventsCount: 5,
        _maxListeners: undefined,
        _read: [Function: noop] },
     _readable2: 
      Readable {
        _readableState: [Object],
        readable: true,
        domain: null,
        _events: [Object],
        _eventsCount: 5,
        _maxListeners: undefined,
        _read: [Function: noop] },
     _forwardDestroy: true,
     _forwardEnd: true,
     _corked: 0,
     _ondrain: null,
     _drained: true,
     _forwarding: false,
     _unwrite: [Function: clear],
     _unread: [Function: clear],
     _ended: false,
     destroyed: false,
     channels: 
      { '5a45bf27eb007bf34c2ff00f43488b8043b78205e91ed7317efbad505f941aa6': [Object],
        f96e845cbe2e7a57091f7f1cf6faa529b2af467bdaa885fcc21f8b6a0fdd9654: [Object] },
     private: true,
     id: <Buffer 98 0e 6f 8d ee 64 97 c8 b2 e7 6b 9a b7 d1 c0 4f 9e 3f 58 9e 06 c5 6b 5d dd a0 f2 a7 b5 15 bd 1e>,
     remoteId: <Buffer b9 34 25 34 fe e1 16 4c bb 31 12 c3 1a b9 79 fe b0 a7 38 c8 ad 27 84 fd ef dd 52 26 5f 65 3f 5c>,
     _finalized: false,
     _paused: 0,
     _local: [ null, null ],
     _remote: [ [Object], [Object] ],
     _remoteExtensions: [ undefined ],
     _localExtensions: [ undefined ],
     _keepAlive: 0,
     _remoteKeepAlive: 0,
     _interval: 
      Timeout {
        _called: false,
        _idleTimeout: 1250,
        _idlePrev: null,
        _idleNext: null,
        _idleStart: 2857,
        _onTimeout: [Function: wrapper],
        _repeat: [Function: kick],
        _handle: [Object] },
     _encode: 
      Readable {
        _readableState: [Object],
        readable: true,
        domain: null,
        _events: [Object],
        _eventsCount: 5,
        _maxListeners: undefined,
        _read: [Function: noop] },
     _decode: 
      Decoder {
        _readableState: [Object],
        readable: true,
        domain: null,
        _events: [Object],
        _eventsCount: 7,
        _maxListeners: undefined,
        _writableState: [Object],
        writable: true,
        allowHalfOpen: true,
        _transformState: [Object],
        _missing: 0,
        _message: null,
        _limit: 8388608,
        _allowEmpty: true,
        _prefix: <Buffer 00 00 00 00>,
        _ptr: 0 } },
  remotePausing: false,
  remoteBitfield: Bitfield { length: 16, buffer: <Buffer c0 00> },
  remoteTree: TreeIndex { bitfield: Bitfield { length: 16, buffer: <Buffer e0 00> } },
  remoteRequests: [],
  reading: false,
  pausing: false,
  responses: [],
  requests: [] }

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment