@ipld/car 5.2.0 → 5.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. package/dist/index.min.js +3 -3
  2. package/dist/src/buffer-decoder.d.ts.map +1 -1
  3. package/dist/src/buffer-reader-browser.d.ts.map +1 -1
  4. package/dist/src/buffer-reader.d.ts +1 -1
  5. package/dist/src/buffer-reader.d.ts.map +1 -1
  6. package/dist/src/coding.d.ts +1 -1
  7. package/dist/src/coding.d.ts.map +1 -1
  8. package/dist/src/decoder-common.d.ts +3 -3
  9. package/dist/src/decoder-common.d.ts.map +1 -1
  10. package/dist/src/decoder.d.ts.map +1 -1
  11. package/dist/src/encoder.d.ts.map +1 -1
  12. package/dist/src/index-browser.d.ts +8 -8
  13. package/dist/src/index-browser.d.ts.map +1 -1
  14. package/dist/src/index.d.ts +8 -8
  15. package/dist/src/index.d.ts.map +1 -1
  16. package/dist/src/indexed-reader.d.ts +2 -2
  17. package/dist/src/indexed-reader.d.ts.map +1 -1
  18. package/dist/src/indexer.d.ts.map +1 -1
  19. package/dist/src/iterator-channel.d.ts.map +1 -1
  20. package/dist/src/iterator.d.ts.map +1 -1
  21. package/dist/src/reader-browser.d.ts.map +1 -1
  22. package/dist/src/reader.d.ts +2 -2
  23. package/dist/src/reader.d.ts.map +1 -1
  24. package/dist/src/writer-browser.d.ts +1 -1
  25. package/dist/src/writer-browser.d.ts.map +1 -1
  26. package/dist/src/writer.d.ts +2 -2
  27. package/dist/src/writer.d.ts.map +1 -1
  28. package/package.json +2 -5
  29. package/src/buffer-decoder.js +2 -16
  30. package/src/buffer-reader-browser.js +0 -6
  31. package/src/buffer-reader.js +0 -2
  32. package/src/buffer-writer.js +2 -2
  33. package/src/coding.ts +3 -3
  34. package/src/decoder-common.js +0 -4
  35. package/src/decoder.js +2 -28
  36. package/src/encoder.js +1 -3
  37. package/src/index-browser.js +4 -4
  38. package/src/index.js +3 -3
  39. package/src/indexed-reader.js +0 -10
  40. package/src/indexer.js +0 -8
  41. package/src/iterator-channel.js +0 -4
  42. package/src/iterator.js +0 -18
  43. package/src/reader-browser.js +0 -12
  44. package/src/reader.js +0 -2
  45. package/src/writer-browser.js +1 -7
  46. package/src/writer.js +1 -3
@@ -1 +1 @@
1
- {"version":3,"file":"reader-browser.d.ts","sourceRoot":"","sources":["../../src/reader-browser.js"],"names":[],"mappings":"AA2LA;;;;GAIG;AACH,6CAHW,WAAW,GACT,QAAQ,SAAS,CAAC,CAa9B;AAzMD;;;;;;;GAOG;AAEH;;;;;;;;;;;;;;;;;;;;GAoBG;AACH;IA6GE;;;;;;;;;;OAUG;IACH,wBAHW,UAAU,GACR,QAAQ,SAAS,CAAC,CAS9B;IAED;;;;;;;;;;;;;;;OAeG;IACH,mCAHW,cAAc,UAAU,CAAC,GACvB,QAAQ,SAAS,CAAC,CAS9B;IAvJD;;;;OAIG;IACH,oBAHW,SAAS,GAAC,WAAW,UACrB,KAAK,EAAE,EAMjB;IAHC,uEAAqB;IACrB,iCAAqB;IACrB,gBAAgD;IAGlD;;;;OAIG;IACH,qBAEC;IAED;;;;;;;;;OASG;IACH,YAFa,QAAQ,GAAG,EAAE,CAAC,CAM1B;IAED;;;;;;;;;;OAUG;IACH,SAHW,GAAG,GACD,QAAQ,OAAO,CAAC,CAM5B;IAED;;;;;;;;;;;;OAYG;IACH,SAHW,GAAG,GACD,QAAQ,KAAK,GAAG,SAAS,CAAC,CAOtC;IAED;;;;;;;;;;;OAWG;IACH,UAFa,eAAe,KAAK,CAAC,CAMjC;IAED;;;;;;;;;;OAUG;IACH,QAFa,eAAe,GAAG,CAAC,CAM/B;CA8CF;AAoBD,6BAA6B;kBA1MhB,OAAO,cAAc,EAAE,GAAG;oBAC1B,OAAO,OAAO,EAAE,KAAK;6BACrB,OAAO,OAAO,EAAE,SAAS;0BACzB,OAAO,UAAU,EAAE,WAAW;wBAC9B,OAAO,UAAU,EAAE,SAAS;0BAC5B,OAAO,UAAU,EAAE,WAAW"}
1
+ {"version":3,"file":"reader-browser.d.ts","sourceRoot":"","sources":["../../src/reader-browser.js"],"names":[],"mappings":"AAiLA;;;;GAIG;AACH,6CAHW,WAAW,GACT,QAAQ,SAAS,CAAC,CAW9B;AA7LD;;;;;;;GAOG;AAEH;;;;;;;;;;;;;;;;;;;;GAoBG;AACH;IAuGE;;;;;;;;;;OAUG;IACH,wBAHW,UAAU,GACR,QAAQ,SAAS,CAAC,CAO9B;IAED;;;;;;;;;;;;;;;OAeG;IACH,mCAHW,cAAc,UAAU,CAAC,GACvB,QAAQ,SAAS,CAAC,CAO9B;IA7ID;;;;OAIG;IACH,oBAHW,SAAS,GAAC,WAAW,UACrB,KAAK,EAAE,EAMjB;IAHC,uEAAqB;IACrB,iCAAqB;IACrB,gBAAgD;IAGlD;;;;OAIG;IACH,qBAEC;IAED;;;;;;;;;OASG;IACH,YAFa,QAAQ,GAAG,EAAE,CAAC,CAI1B;IAED;;;;;;;;;;OAUG;IACH,SAHW,GAAG,GACD,QAAQ,OAAO,CAAC,CAI5B;IAED;;;;;;;;;;;;OAYG;IACH,SAHW,GAAG,GACD,QAAQ,KAAK,GAAG,SAAS,CAAC,CAKtC;IAED;;;;;;;;;;;OAWG;IACH,UAFa,eAAe,KAAK,CAAC,CAMjC;IAED;;;;;;;;;;OAUG;IACH,QAFa,eAAe,GAAG,CAAC,CAM/B;CA0CF;AAkBD,6BAA6B;kBA9LhB,OAAO,cAAc,EAAE,GAAG;oBAC1B,OAAO,OAAO,EAAE,KAAK;6BACrB,OAAO,OAAO,EAAE,SAAS;0BACzB,OAAO,UAAU,EAAE,WAAW;wBAC9B,OAAO,UAAU,EAAE,SAAS;0BAC5B,OAAO,UAAU,EAAE,WAAW"}
@@ -30,6 +30,6 @@ export const __browser: false;
30
30
  export type Block = import('./api').Block;
31
31
  export type BlockIndex = import('./api').BlockIndex;
32
32
  export type CarReaderIface = import('./api').CarReader;
33
- import { CarReader as BrowserCarReader } from "./reader-browser.js";
34
- import fs from "fs";
33
+ import { CarReader as BrowserCarReader } from './reader-browser.js';
34
+ import fs from 'fs';
35
35
  //# sourceMappingURL=reader.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"reader.d.ts","sourceRoot":"","sources":["../../src/reader.js"],"names":[],"mappings":";AAYA;;;GAGG;AACH;IACE;;;;;;;;;;;;;;;;;;;OAmBG;IACH,mBARW,GAAG,QAAQ,CAAC,UAAU,GAAG,MAAM,cAG/B,UAAU,GAGR,QAAQ,KAAK,CAAC,CAmB1B;CACF;AAED,8BAA8B;oBApDjB,OAAO,OAAO,EAAE,KAAK;yBACrB,OAAO,OAAO,EAAE,UAAU;6BAC1B,OAAO,OAAO,EAAE,SAAS"}
1
+ {"version":3,"file":"reader.d.ts","sourceRoot":"","sources":["../../src/reader.js"],"names":[],"mappings":";AAYA;;;GAGG;AACH;IACE;;;;;;;;;;;;;;;;;;;OAmBG;IACH,mBARW,GAAG,QAAQ,CAAC,UAAU,GAAG,MAAM,cAG/B,UAAU,GAGR,QAAQ,KAAK,CAAC,CAiB1B;CACF;AAED,8BAA8B;oBAlDjB,OAAO,OAAO,EAAE,KAAK;yBACrB,OAAO,OAAO,EAAE,UAAU;6BAC1B,OAAO,OAAO,EAAE,SAAS;8CALQ,qBAAqB;eAFpD,IAAI"}
@@ -145,5 +145,5 @@ export type BlockWriter = import('./api').BlockWriter;
145
145
  export type WriterChannel = import('./api').WriterChannel;
146
146
  export type CarEncoder = import('./coding').CarEncoder;
147
147
  export type IteratorChannel = import('./coding').IteratorChannel<Uint8Array>;
148
- import { CID } from "multiformats/cid";
148
+ import { CID } from 'multiformats/cid';
149
149
  //# sourceMappingURL=writer-browser.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"writer-browser.d.ts","sourceRoot":"","sources":["../../src/writer-browser.js"],"names":[],"mappings":"AAKA;;;;;;GAMG;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH;IA6DE;;;;;;;;;;OAUG;IACH,qBAJW,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,GAChB,aAAa,CASzB;IAED;;;;;;;;;;;;;OAaG;IACH,yBAHa,aAAa,CASzB;IAED;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,iCAPW,UAAU,SACV,GAAG,EAAE,GAIH,QAAQ,UAAU,CAAC,CAa/B;IAvID;;;OAGG;IACH,mBAHW,GAAG,EAAE,WACL,UAAU,EAOpB;IAJC,wCAAuB;IACvB,4BAA4B;IAC5B,QADW,QAAQ,IAAI,CAAC,CACa;IACrC,gBAAmB;IAGrB;;;;;;;;;;OAUG;IACH,WAJW,KAAK,GACH,QAAQ,IAAI,CAAC,CAkBzB;IAED;;;;;;;;;OASG;IACH,SAFa,QAAQ,IAAI,CAAC,CAWzB;CA8EF;AAED;;;GAGG;AACH,mDAF8B,UAAU;IAGtC;;OAEG;IACH,sBAFW,cAAc,UAAU,CAAC,EAInC;IADC,qDAAyB;IAOzB,gCAAsB;IAJxB,oEAMC;CACF;AAuCD,6BAA6B;oBAhPhB,OAAO,OAAO,EAAE,KAAK;0BACrB,OAAO,OAAO,EAAE,WAAW;4BAC3B,OAAO,OAAO,EAAE,aAAa;yBAC7B,OAAO,UAAU,EAAE,UAAU;8BAC7B,OAAO,UAAU,EAAE,eAAe,CAAC,UAAU,CAAC"}
1
+ {"version":3,"file":"writer-browser.d.ts","sourceRoot":"","sources":["../../src/writer-browser.js"],"names":[],"mappings":"AAKA;;;;;;GAMG;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH;IAyDE;;;;;;;;;;OAUG;IACH,qBAJW,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,GAChB,aAAa,CASzB;IAED;;;;;;;;;;;;;OAaG;IACH,yBAHa,aAAa,CASzB;IAED;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,iCAPW,UAAU,SACV,GAAG,EAAE,GAIH,QAAQ,UAAU,CAAC,CAW/B;IAjID;;;OAGG;IACH,mBAHW,GAAG,EAAE,WACL,UAAU,EAOpB;IAJC,wCAAuB;IACvB,4BAA4B;IAC5B,QADW,QAAQ,IAAI,CAAC,CACa;IACrC,gBAAmB;IAGrB;;;;;;;;;;OAUG;IACH,WAJW,KAAK,GACH,QAAQ,IAAI,CAAC,CAgBzB;IAED;;;;;;;;;OASG;IACH,SAFa,QAAQ,IAAI,CAAC,CASzB;CA4EF;AAED;;;GAGG;AACH,mDAF8B,UAAU;IAGtC;;OAEG;IACH,sBAFW,cAAc,UAAU,CAAC,EAInC;IADC,qDAAyB;IAOzB,gCAAsB;IAJxB,oEAMC;CACF;AAuCD,6BAA6B;oBA1OhB,OAAO,OAAO,EAAE,KAAK;0BACrB,OAAO,OAAO,EAAE,WAAW;4BAC3B,OAAO,OAAO,EAAE,aAAa;yBAC7B,OAAO,UAAU,EAAE,UAAU;8BAC7B,OAAO,UAAU,EAAE,eAAe,CAAC,UAAU,CAAC;oBAVvC,kBAAkB"}
@@ -40,6 +40,6 @@ export class CarWriter extends BrowserCarWriter implements BlockWriter {
40
40
  export const __browser: false;
41
41
  export type CID = import('multiformats/cid').CID;
42
42
  export type BlockWriter = import('./api').BlockWriter;
43
- import { CarWriter as BrowserCarWriter } from "./writer-browser.js";
44
- import fs from "fs";
43
+ import { CarWriter as BrowserCarWriter } from './writer-browser.js';
44
+ import fs from 'fs';
45
45
  //# sourceMappingURL=writer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"writer.d.ts","sourceRoot":"","sources":["../../src/writer.js"],"names":[],"mappings":";AASA;;;GAGG;AAEH;;;GAGG;AACH;IACE;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACH,6BATW,GAAG,QAAQ,CAAC,UAAU,GAAG,MAAM,SAG/B,GAAG,EAAE,GAIH,QAAQ,IAAI,CAAC,CAqCzB;CACF;AAED,8BAA8B;kBA1EjB,OAAO,kBAAkB,EAAE,GAAG;0BAC9B,OAAO,OAAO,EAAE,WAAW"}
1
+ {"version":3,"file":"writer.d.ts","sourceRoot":"","sources":["../../src/writer.js"],"names":[],"mappings":";AASA;;;GAGG;AAEH;;;GAGG;AACH;IACE;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACH,6BATW,GAAG,QAAQ,CAAC,UAAU,GAAG,MAAM,SAG/B,GAAG,EAAE,GAIH,QAAQ,IAAI,CAAC,CAmCzB;CACF;AAED,8BAA8B;kBAxEjB,OAAO,kBAAkB,EAAE,GAAG;0BAC9B,OAAO,OAAO,EAAE,WAAW;8CAPM,qBAAqB;eAJpD,IAAI"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ipld/car",
3
- "version": "5.2.0",
3
+ "version": "5.2.1",
4
4
  "description": "Content Addressable aRchive format reader and writer",
5
5
  "author": "Rod <rod@vagg.org> (http://r.va.gg/)",
6
6
  "license": "Apache-2.0 OR MIT",
@@ -206,11 +206,8 @@
206
206
  "devDependencies": {
207
207
  "@ipld/dag-pb": "^4.0.0",
208
208
  "@ipld/garbage": "^6.0.0",
209
- "@types/node": "^18.0.0",
210
209
  "@types/varint": "^6.0.0",
211
- "@typescript-eslint/eslint-plugin": "^5.6.0",
212
- "@typescript-eslint/parser": "^5.6.0",
213
- "aegir": "^37.5.6",
210
+ "aegir": "^40.0.11",
214
211
  "jsdoc4readme": "^1.4.0"
215
212
  },
216
213
  "browser": {
@@ -1,8 +1,8 @@
1
+ import { decode as decodeDagCbor } from '@ipld/dag-cbor'
1
2
  import { CID } from 'multiformats/cid'
2
3
  import * as Digest from 'multiformats/hashes/digest'
3
- import { decode as decodeDagCbor } from '@ipld/dag-cbor'
4
- import { CarHeader as headerValidator } from './header-validator.js'
5
4
  import { CIDV0_BYTES, decodeV2Header, decodeVarint, getMultihashLength, V2_HEADER_LENGTH } from './decoder-common.js'
5
+ import { CarHeader as headerValidator } from './header-validator.js'
6
6
 
7
7
  /**
8
8
  * @typedef {import('./api').Block} Block
@@ -50,8 +50,6 @@ export function readHeader (reader, strictVersion) {
50
50
  reader.seek(v2Header.dataOffset - reader.pos)
51
51
  const v1Header = readHeader(reader, 1)
52
52
  return Object.assign(v1Header, v2Header)
53
- /* c8 ignore next 2 */
54
- // Node.js 12 c8 bug
55
53
  }
56
54
 
57
55
  /**
@@ -77,8 +75,6 @@ function readCid (reader) {
77
75
  const bytes = reader.exactly(getMultihashLength(reader.upTo(8)), true)
78
76
  const multihash = Digest.decode(bytes)
79
77
  return CID.create(version, codec, multihash)
80
- /* c8 ignore next 2 */
81
- // Node.js 12 c8 bug
82
78
  }
83
79
 
84
80
  /**
@@ -104,8 +100,6 @@ export function readBlockHead (reader) {
104
100
  const blockLength = length - Number(reader.pos - start) // subtract CID length
105
101
 
106
102
  return { cid, length, blockLength }
107
- /* c8 ignore next 2 */
108
- // Node.js 12 c8 bug
109
103
  }
110
104
 
111
105
  /**
@@ -148,8 +142,6 @@ export function bytesReader (bytes) {
148
142
  return {
149
143
  upTo (length) {
150
144
  return bytes.subarray(pos, pos + Math.min(length, bytes.length - pos))
151
- /* c8 ignore next 2 */
152
- // Node.js 12 c8 bug
153
145
  },
154
146
 
155
147
  exactly (length, seek = false) {
@@ -162,8 +154,6 @@ export function bytesReader (bytes) {
162
154
  pos += length
163
155
  }
164
156
  return out
165
- /* c8 ignore next 2 */
166
- // Node.js 12 c8 bug
167
157
  },
168
158
 
169
159
  seek (length) {
@@ -197,8 +187,6 @@ export function limitReader (reader, byteLimit) {
197
187
  bytes = bytes.subarray(0, byteLimit - bytesRead)
198
188
  }
199
189
  return bytes
200
- /* c8 ignore next 2 */
201
- // Node.js 12 c8 bug
202
190
  },
203
191
 
204
192
  exactly (length, seek = false) {
@@ -210,8 +198,6 @@ export function limitReader (reader, byteLimit) {
210
198
  bytesRead += length
211
199
  }
212
200
  return bytes
213
- /* c8 ignore next 2 */
214
- // Node.js 12 c8 bug
215
201
  },
216
202
 
217
203
  seek (length) {
@@ -61,8 +61,6 @@ export class CarBufferReader {
61
61
  */
62
62
  getRoots () {
63
63
  return this._header.roots
64
- /* c8 ignore next 2 */
65
- // Node.js 12 c8 bug
66
64
  }
67
65
 
68
66
  /**
@@ -77,8 +75,6 @@ export class CarBufferReader {
77
75
  */
78
76
  has (key) {
79
77
  return this._blocks.some(b => b.cid.equals(key))
80
- /* c8 ignore next 2 */
81
- // Node.js 12 c8 bug
82
78
  }
83
79
 
84
80
  /**
@@ -95,8 +91,6 @@ export class CarBufferReader {
95
91
  */
96
92
  get (key) {
97
93
  return this._blocks.find(b => b.cid.equals(key))
98
- /* c8 ignore next 2 */
99
- // Node.js 12 c8 bug
100
94
  }
101
95
 
102
96
  /**
@@ -45,8 +45,6 @@ export class CarBufferReader extends BrowserCarBufferReader {
45
45
  throw new Error(`Failed to read entire block (${read} instead of ${blockLength})`)
46
46
  }
47
47
  return { cid, bytes }
48
- /* c8 ignore next 2 */
49
- // Node.js 12 c8 bug
50
48
  }
51
49
  }
52
50
 
@@ -1,7 +1,7 @@
1
- import varint from 'varint'
1
+ import * as CBOR from '@ipld/dag-cbor'
2
2
  import { Token, Type } from 'cborg'
3
3
  import { tokensToLength } from 'cborg/length'
4
- import * as CBOR from '@ipld/dag-cbor'
4
+ import varint from 'varint'
5
5
 
6
6
  /**
7
7
  * @typedef {import('./api').CID} CID
package/src/coding.ts CHANGED
@@ -1,5 +1,5 @@
1
- import type { CID } from 'multiformats/cid'
2
1
  import type { Block, BlockIndex } from './api.js'
2
+ import type { CID } from 'multiformats/cid'
3
3
 
4
4
  export interface CarEncoder {
5
5
  setRoots: (roots: CID[]) => Promise<void>
@@ -38,7 +38,7 @@ export interface CarV2Header extends CarV2FixedHeader {
38
38
  }
39
39
 
40
40
  export interface CarDecoder {
41
- header: () => Promise<CarHeader|CarV2Header>
41
+ header: () => Promise<CarHeader | CarV2Header>
42
42
 
43
43
  blocks: () => AsyncGenerator<Block>
44
44
 
@@ -57,7 +57,7 @@ export interface BytesReader extends Seekable {
57
57
  pos: number
58
58
  }
59
59
 
60
- export interface BytesBufferReader extends Seekable{
60
+ export interface BytesBufferReader extends Seekable {
61
61
  upTo: (length: number) => Uint8Array
62
62
 
63
63
  exactly: (length: number, seek?: boolean) => Uint8Array
@@ -27,8 +27,6 @@ export function decodeVarint (bytes, seeker) {
27
27
  const i = varint.decode(bytes)
28
28
  seeker.seek(/** @type {number} */(varint.decode.bytes))
29
29
  return i
30
- /* c8 ignore next 2 */
31
- // Node.js 12 c8 bug
32
30
  }
33
31
 
34
32
  /**
@@ -57,8 +55,6 @@ export function decodeV2Header (bytes) {
57
55
  indexOffset: Number(dv.getBigUint64(offset += 8, true))
58
56
  }
59
57
  return header
60
- /* c8 ignore next 2 */
61
- // Node.js 12 c8 bug
62
58
  }
63
59
 
64
60
  /**
package/src/decoder.js CHANGED
@@ -1,8 +1,8 @@
1
+ import { decode as decodeDagCbor } from '@ipld/dag-cbor'
1
2
  import { CID } from 'multiformats/cid'
2
3
  import * as Digest from 'multiformats/hashes/digest'
3
- import { decode as decodeDagCbor } from '@ipld/dag-cbor'
4
- import { CarHeader as headerValidator } from './header-validator.js'
5
4
  import { CIDV0_BYTES, decodeV2Header, decodeVarint, getMultihashLength, V2_HEADER_LENGTH } from './decoder-common.js'
5
+ import { CarHeader as headerValidator } from './header-validator.js'
6
6
 
7
7
  /**
8
8
  * @typedef {import('./api').Block} Block
@@ -51,8 +51,6 @@ export async function readHeader (reader, strictVersion) {
51
51
  reader.seek(v2Header.dataOffset - reader.pos)
52
52
  const v1Header = await readHeader(reader, 1)
53
53
  return Object.assign(v1Header, v2Header)
54
- /* c8 ignore next 2 */
55
- // Node.js 12 c8 bug
56
54
  }
57
55
 
58
56
  /**
@@ -76,8 +74,6 @@ async function readCid (reader) {
76
74
  const bytes = await reader.exactly(getMultihashLength(await reader.upTo(8)), true)
77
75
  const multihash = Digest.decode(bytes)
78
76
  return CID.create(version, codec, multihash)
79
- /* c8 ignore next 2 */
80
- // Node.js 12 c8 bug
81
77
  }
82
78
 
83
79
  /**
@@ -103,8 +99,6 @@ export async function readBlockHead (reader) {
103
99
  const blockLength = length - Number(reader.pos - start) // subtract CID length
104
100
 
105
101
  return { cid, length, blockLength }
106
- /* c8 ignore next 2 */
107
- // Node.js 12 c8 bug
108
102
  }
109
103
 
110
104
  /**
@@ -115,8 +109,6 @@ async function readBlock (reader) {
115
109
  const { cid, blockLength } = await readBlockHead(reader)
116
110
  const bytes = await reader.exactly(blockLength, true)
117
111
  return { bytes, cid }
118
- /* c8 ignore next 2 */
119
- // Node.js 12 c8 bug
120
112
  }
121
113
 
122
114
  /**
@@ -129,8 +121,6 @@ async function readBlockIndex (reader) {
129
121
  const index = { cid, length, blockLength, offset, blockOffset: reader.pos }
130
122
  reader.seek(index.blockLength)
131
123
  return index
132
- /* c8 ignore next 2 */
133
- // Node.js 12 c8 bug
134
124
  }
135
125
 
136
126
  /**
@@ -150,8 +140,6 @@ export function createDecoder (reader) {
150
140
  reader = limitReader(reader, header.dataSize - v1length)
151
141
  }
152
142
  return header
153
- /* c8 ignore next 2 */
154
- // Node.js 12 c8 bug
155
143
  })()
156
144
 
157
145
  return {
@@ -187,9 +175,7 @@ export function bytesReader (bytes) {
187
175
  return {
188
176
  async upTo (length) {
189
177
  const out = bytes.subarray(pos, pos + Math.min(length, bytes.length - pos))
190
- /* c8 ignore next 2 */
191
178
  return out
192
- // Node.js 12 c8 bug
193
179
  },
194
180
 
195
181
  async exactly (length, seek = false) {
@@ -201,8 +187,6 @@ export function bytesReader (bytes) {
201
187
  pos += length
202
188
  }
203
189
  return out
204
- /* c8 ignore next 2 */
205
- // Node.js 12 c8 bug
206
190
  },
207
191
 
208
192
  seek (length) {
@@ -266,8 +250,6 @@ export function chunkReader (readChunk /*, closer */) {
266
250
  await read(length)
267
251
  }
268
252
  return currentChunk.subarray(offset, offset + Math.min(currentChunk.length - offset, length))
269
- /* c8 ignore next 2 */
270
- // Node.js 12 c8 bug
271
253
  },
272
254
 
273
255
  async exactly (length, seek = false) {
@@ -283,8 +265,6 @@ export function chunkReader (readChunk /*, closer */) {
283
265
  offset += length
284
266
  }
285
267
  return out
286
- /* c8 ignore next 2 */
287
- // Node.js 12 c8 bug
288
268
  },
289
269
 
290
270
  seek (length) {
@@ -315,8 +295,6 @@ export function asyncIterableReader (asyncIterable) {
315
295
  return null
316
296
  }
317
297
  return next.value
318
- /* c8 ignore next 2 */
319
- // Node.js 12 c8 bug
320
298
  }
321
299
 
322
300
  return chunkReader(readChunk)
@@ -343,8 +321,6 @@ export function limitReader (reader, byteLimit) {
343
321
  bytes = bytes.subarray(0, byteLimit - bytesRead)
344
322
  }
345
323
  return bytes
346
- /* c8 ignore next 2 */
347
- // Node.js 12 c8 bug
348
324
  },
349
325
 
350
326
  async exactly (length, seek = false) {
@@ -356,8 +332,6 @@ export function limitReader (reader, byteLimit) {
356
332
  bytesRead += length
357
333
  }
358
334
  return bytes
359
- /* c8 ignore next 2 */
360
- // Node.js 12 c8 bug
361
335
  },
362
336
 
363
337
  seek (length) {
package/src/encoder.js CHANGED
@@ -1,5 +1,5 @@
1
- import varint from 'varint'
2
1
  import { encode as dagCborEncode } from '@ipld/dag-cbor'
2
+ import varint from 'varint'
3
3
 
4
4
  /**
5
5
  * @typedef {import('multiformats').CID} CID
@@ -60,8 +60,6 @@ function createEncoder (writer) {
60
60
  */
61
61
  async close () {
62
62
  await writer.end()
63
- /* c8 ignore next 2 */
64
- // Node.js 12 c8 bug
65
63
  }
66
64
  }
67
65
  }
@@ -1,10 +1,10 @@
1
- import { CarReader } from './reader-browser.js'
1
+ import { CarBufferReader } from './buffer-reader.js'
2
+ import * as CarBufferWriter from './buffer-writer.js'
3
+ import { CarIndexedReader } from './indexed-reader-browser.js'
2
4
  import { CarIndexer } from './indexer.js'
3
5
  import { CarBlockIterator, CarCIDIterator } from './iterator.js'
6
+ import { CarReader } from './reader-browser.js'
4
7
  import { CarWriter } from './writer-browser.js'
5
- import { CarIndexedReader } from './indexed-reader-browser.js'
6
- import { CarBufferReader } from './buffer-reader.js'
7
- import * as CarBufferWriter from './buffer-writer.js'
8
8
 
9
9
  export {
10
10
  CarReader,
package/src/index.js CHANGED
@@ -1,10 +1,10 @@
1
- import { CarReader } from './reader.js'
2
1
  import { CarBufferReader } from './buffer-reader.js'
2
+ import * as CarBufferWriter from './buffer-writer.js'
3
+ import { CarIndexedReader } from './indexed-reader.js'
3
4
  import { CarIndexer } from './indexer.js'
4
5
  import { CarBlockIterator, CarCIDIterator } from './iterator.js'
6
+ import { CarReader } from './reader.js'
5
7
  import { CarWriter } from './writer.js'
6
- import { CarIndexedReader } from './indexed-reader.js'
7
- import * as CarBufferWriter from './buffer-writer.js'
8
8
 
9
9
  // @see https://www.iana.org/assignments/media-types/application/vnd.ipld.car
10
10
  export const contentType = 'application/vnd.ipld.car'
@@ -76,8 +76,6 @@ export class CarIndexedReader {
76
76
  */
77
77
  async getRoots () {
78
78
  return this._roots
79
- /* c8 ignore next 2 */
80
- // Node.js 12 c8 bug
81
79
  }
82
80
 
83
81
  /**
@@ -92,8 +90,6 @@ export class CarIndexedReader {
92
90
  */
93
91
  async has (key) {
94
92
  return this._index.has(key.toString())
95
- /* c8 ignore next 2 */
96
- // Node.js 12 c8 bug
97
93
  }
98
94
 
99
95
  /**
@@ -122,8 +118,6 @@ export class CarIndexedReader {
122
118
  blockOffset: blockIndex.blockOffset
123
119
  }
124
120
  return NodeCarReader.readRaw(this._fd, readIndex)
125
- /* c8 ignore next 2 */
126
- // Node.js 12 c8 bug
127
121
  }
128
122
 
129
123
  /**
@@ -177,8 +171,6 @@ export class CarIndexedReader {
177
171
  if (this._fd) {
178
172
  return this._fd.close()
179
173
  }
180
- /* c8 ignore next 2 */
181
- // Node.js 12 c8 bug
182
174
  }
183
175
 
184
176
  /**
@@ -213,8 +205,6 @@ export class CarIndexedReader {
213
205
  order.push(cidStr)
214
206
  }
215
207
  return new CarIndexedReader(iterable.version, path, await iterable.getRoots(), index, order)
216
- /* c8 ignore next 2 */
217
- // Node.js 12 c8 bug
218
208
  }
219
209
  }
220
210
 
package/src/indexer.js CHANGED
@@ -70,8 +70,6 @@ export class CarIndexer {
70
70
  */
71
71
  async getRoots () {
72
72
  return this._roots
73
- /* c8 ignore next 2 */
74
- // Node.js 12 c8 bug
75
73
  }
76
74
 
77
75
  /**
@@ -97,8 +95,6 @@ export class CarIndexer {
97
95
  throw new TypeError('fromBytes() requires a Uint8Array')
98
96
  }
99
97
  return decodeIndexerComplete(bytesReader(bytes))
100
- /* c8 ignore next 2 */
101
- // Node.js 12 c8 bug
102
98
  }
103
99
 
104
100
  /**
@@ -118,8 +114,6 @@ export class CarIndexer {
118
114
  throw new TypeError('fromIterable() requires an async iterable')
119
115
  }
120
116
  return decodeIndexerComplete(asyncIterableReader(asyncIterable))
121
- /* c8 ignore next 2 */
122
- // Node.js 12 c8 bug
123
117
  }
124
118
  }
125
119
 
@@ -133,6 +127,4 @@ async function decodeIndexerComplete (reader) {
133
127
  const { version, roots } = await decoder.header()
134
128
 
135
129
  return new CarIndexer(version, roots, decoder.blocksIndex())
136
- /* c8 ignore next 2 */
137
- // Node.js 12 c8 bug
138
130
  }
@@ -53,8 +53,6 @@ export function create () {
53
53
  const drainer = makeDrainer()
54
54
  outWaitResolver()
55
55
  await drainer
56
- /* c8 ignore next 2 */
57
- // Node.js 12 c8 bug
58
56
  }
59
57
  }
60
58
 
@@ -86,8 +84,6 @@ export function create () {
86
84
  }
87
85
 
88
86
  return outWait
89
- /* c8 ignore next 2 */
90
- // Node.js 12 c8 bug
91
87
  }
92
88
  }
93
89
 
package/src/iterator.js CHANGED
@@ -38,8 +38,6 @@ export class CarIteratorBase {
38
38
  */
39
39
  async getRoots () {
40
40
  return this._roots
41
- /* c8 ignore next 2 */
42
- // Node.js 12 c8 bug
43
41
  }
44
42
  }
45
43
 
@@ -114,8 +112,6 @@ export class CarBlockIterator extends CarIteratorBase {
114
112
  static async fromBytes (bytes) {
115
113
  const { version, roots, iterator } = await fromBytes(bytes)
116
114
  return new CarBlockIterator(version, roots, iterator)
117
- /* c8 ignore next 2 */
118
- // Node.js 12 c8 bug
119
115
  }
120
116
 
121
117
  /**
@@ -133,8 +129,6 @@ export class CarBlockIterator extends CarIteratorBase {
133
129
  static async fromIterable (asyncIterable) {
134
130
  const { version, roots, iterator } = await fromIterable(asyncIterable)
135
131
  return new CarBlockIterator(version, roots, iterator)
136
- /* c8 ignore next 2 */
137
- // Node.js 12 c8 bug
138
132
  }
139
133
  }
140
134
 
@@ -199,8 +193,6 @@ export class CarCIDIterator extends CarIteratorBase {
199
193
  return next
200
194
  }
201
195
  return { done: false, value: next.value.cid }
202
- /* c8 ignore next 2 */
203
- // Node.js 12 c8 bug
204
196
  }
205
197
  }
206
198
  }
@@ -220,8 +212,6 @@ export class CarCIDIterator extends CarIteratorBase {
220
212
  static async fromBytes (bytes) {
221
213
  const { version, roots, iterator } = await fromBytes(bytes)
222
214
  return new CarCIDIterator(version, roots, iterator)
223
- /* c8 ignore next 2 */
224
- // Node.js 12 c8 bug
225
215
  }
226
216
 
227
217
  /**
@@ -240,8 +230,6 @@ export class CarCIDIterator extends CarIteratorBase {
240
230
  static async fromIterable (asyncIterable) {
241
231
  const { version, roots, iterator } = await fromIterable(asyncIterable)
242
232
  return new CarCIDIterator(version, roots, iterator)
243
- /* c8 ignore next 2 */
244
- // Node.js 12 c8 bug
245
233
  }
246
234
  }
247
235
 
@@ -254,8 +242,6 @@ async function fromBytes (bytes) {
254
242
  throw new TypeError('fromBytes() requires a Uint8Array')
255
243
  }
256
244
  return decodeIterator(bytesReader(bytes))
257
- /* c8 ignore next 2 */
258
- // Node.js 12 c8 bug
259
245
  }
260
246
 
261
247
  /**
@@ -267,8 +253,6 @@ async function fromIterable (asyncIterable) {
267
253
  throw new TypeError('fromIterable() requires an async iterable')
268
254
  }
269
255
  return decodeIterator(asyncIterableReader(asyncIterable))
270
- /* c8 ignore next 2 */
271
- // Node.js 12 c8 bug
272
256
  }
273
257
 
274
258
  /**
@@ -280,6 +264,4 @@ async function decodeIterator (reader) {
280
264
  const decoder = createDecoder(reader)
281
265
  const { version, roots } = await decoder.header()
282
266
  return { version, roots, iterator: decoder.blocks() }
283
- /* c8 ignore next 2 */
284
- // Node.js 12 c8 bug
285
267
  }
@@ -63,8 +63,6 @@ export class CarReader {
63
63
  */
64
64
  async getRoots () {
65
65
  return this._header.roots
66
- /* c8 ignore next 2 */
67
- // Node.js 12 c8 bug
68
66
  }
69
67
 
70
68
  /**
@@ -80,8 +78,6 @@ export class CarReader {
80
78
  */
81
79
  async has (key) {
82
80
  return this._keys.indexOf(key.toString()) > -1
83
- /* c8 ignore next 2 */
84
- // Node.js 12 c8 bug
85
81
  }
86
82
 
87
83
  /**
@@ -100,8 +96,6 @@ export class CarReader {
100
96
  async get (key) {
101
97
  const index = this._keys.indexOf(key.toString())
102
98
  return index > -1 ? this._blocks[index] : undefined
103
- /* c8 ignore next 2 */
104
- // Node.js 12 c8 bug
105
99
  }
106
100
 
107
101
  /**
@@ -155,8 +149,6 @@ export class CarReader {
155
149
  throw new TypeError('fromBytes() requires a Uint8Array')
156
150
  }
157
151
  return decodeReaderComplete(bytesReader(bytes))
158
- /* c8 ignore next 2 */
159
- // Node.js 12 c8 bug
160
152
  }
161
153
 
162
154
  /**
@@ -180,8 +172,6 @@ export class CarReader {
180
172
  throw new TypeError('fromIterable() requires an async iterable')
181
173
  }
182
174
  return decodeReaderComplete(asyncIterableReader(asyncIterable))
183
- /* c8 ignore next 2 */
184
- // Node.js 12 c8 bug
185
175
  }
186
176
  }
187
177
 
@@ -199,8 +189,6 @@ export async function decodeReaderComplete (reader) {
199
189
  }
200
190
 
201
191
  return new CarReader(header, blocks)
202
- /* c8 ignore next 2 */
203
- // Node.js 12 c8 bug
204
192
  }
205
193
 
206
194
  export const __browser = true
package/src/reader.js CHANGED
@@ -50,8 +50,6 @@ export class CarReader extends BrowserCarReader {
50
50
  throw new Error(`Failed to read entire block (${read} instead of ${blockLength})`)
51
51
  }
52
52
  return { cid, bytes }
53
- /* c8 ignore next 2 */
54
- // Node.js 12 c8 bug
55
53
  }
56
54
  }
57
55