@atproto/repo 0.6.2 → 0.6.4

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 (89) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/bench/mst.bench.ts +2 -2
  3. package/dist/block-map.d.ts +1 -1
  4. package/dist/block-map.d.ts.map +1 -1
  5. package/dist/block-map.js +2 -2
  6. package/dist/block-map.js.map +1 -1
  7. package/dist/data-diff.d.ts +2 -3
  8. package/dist/data-diff.d.ts.map +1 -1
  9. package/dist/data-diff.js +5 -9
  10. package/dist/data-diff.js.map +1 -1
  11. package/dist/mst/diff.d.ts +1 -1
  12. package/dist/mst/diff.d.ts.map +1 -1
  13. package/dist/mst/diff.js +3 -6
  14. package/dist/mst/diff.js.map +1 -1
  15. package/dist/mst/mst.d.ts +5 -5
  16. package/dist/mst/mst.d.ts.map +1 -1
  17. package/dist/mst/mst.js +14 -18
  18. package/dist/mst/mst.js.map +1 -1
  19. package/dist/mst/util.d.ts +1 -1
  20. package/dist/mst/util.d.ts.map +1 -1
  21. package/dist/mst/util.js +1 -1
  22. package/dist/mst/util.js.map +1 -1
  23. package/dist/mst/walker.d.ts +1 -1
  24. package/dist/mst/walker.d.ts.map +1 -1
  25. package/dist/mst/walker.js +0 -1
  26. package/dist/mst/walker.js.map +1 -1
  27. package/dist/parse.d.ts +2 -2
  28. package/dist/parse.d.ts.map +1 -1
  29. package/dist/parse.js.map +1 -1
  30. package/dist/readable-repo.d.ts +4 -4
  31. package/dist/readable-repo.d.ts.map +1 -1
  32. package/dist/readable-repo.js +4 -5
  33. package/dist/readable-repo.js.map +1 -1
  34. package/dist/repo.d.ts +4 -4
  35. package/dist/repo.d.ts.map +1 -1
  36. package/dist/repo.js +12 -12
  37. package/dist/repo.js.map +1 -1
  38. package/dist/storage/memory-blockstore.d.ts +2 -2
  39. package/dist/storage/memory-blockstore.d.ts.map +1 -1
  40. package/dist/storage/memory-blockstore.js +4 -7
  41. package/dist/storage/memory-blockstore.js.map +1 -1
  42. package/dist/storage/readable-blockstore.d.ts +2 -2
  43. package/dist/storage/readable-blockstore.d.ts.map +1 -1
  44. package/dist/storage/sync-storage.d.ts +2 -2
  45. package/dist/storage/sync-storage.d.ts.map +1 -1
  46. package/dist/storage/sync-storage.js +2 -5
  47. package/dist/storage/sync-storage.js.map +1 -1
  48. package/dist/storage/types.d.ts +3 -3
  49. package/dist/storage/types.d.ts.map +1 -1
  50. package/dist/sync/consumer.d.ts +3 -3
  51. package/dist/sync/consumer.d.ts.map +1 -1
  52. package/dist/sync/consumer.js +6 -9
  53. package/dist/sync/consumer.js.map +1 -1
  54. package/dist/sync/provider.d.ts +1 -1
  55. package/dist/sync/provider.d.ts.map +1 -1
  56. package/dist/sync/provider.js +5 -8
  57. package/dist/sync/provider.js.map +1 -1
  58. package/dist/types.d.ts +3 -3
  59. package/dist/types.d.ts.map +1 -1
  60. package/dist/types.js +1 -1
  61. package/dist/types.js.map +1 -1
  62. package/dist/util.d.ts +5 -5
  63. package/dist/util.d.ts.map +1 -1
  64. package/dist/util.js +4 -7
  65. package/dist/util.js.map +1 -1
  66. package/package.json +8 -5
  67. package/src/block-map.ts +2 -2
  68. package/src/data-diff.ts +2 -4
  69. package/src/mst/diff.ts +2 -2
  70. package/src/mst/mst.ts +7 -10
  71. package/src/mst/util.ts +3 -3
  72. package/src/mst/walker.ts +0 -2
  73. package/src/parse.ts +3 -3
  74. package/src/readable-repo.ts +6 -8
  75. package/src/repo.ts +9 -9
  76. package/src/storage/memory-blockstore.ts +2 -2
  77. package/src/storage/readable-blockstore.ts +2 -2
  78. package/src/storage/sync-storage.ts +2 -2
  79. package/src/storage/types.ts +3 -3
  80. package/src/sync/consumer.ts +7 -7
  81. package/src/sync/provider.ts +3 -3
  82. package/src/types.ts +4 -4
  83. package/src/util.ts +12 -13
  84. package/tests/_util.ts +9 -9
  85. package/tests/commit-data.test.ts +1 -1
  86. package/tests/mst.test.ts +3 -5
  87. package/tests/proofs.test.ts +0 -1
  88. package/tests/repo.test.ts +3 -3
  89. package/tests/sync.test.ts +2 -3
package/dist/util.js CHANGED
@@ -22,23 +22,20 @@ var __importStar = (this && this.__importStar) || function (mod) {
22
22
  __setModuleDefault(result, mod);
23
23
  return result;
24
24
  };
25
- var __importDefault = (this && this.__importDefault) || function (mod) {
26
- return (mod && mod.__esModule) ? mod : { "default": mod };
27
- };
28
25
  Object.defineProperty(exports, "__esModule", { value: true });
29
26
  exports.ensureV3Commit = exports.cidForRecord = exports.cborToLexRecord = exports.cborToLex = exports.verifyCommitSig = exports.signCommit = exports.metaEqual = exports.formatDataKey = exports.parseDataKey = exports.ensureCreates = exports.diffToWriteDescripts = exports.readCarWithRoot = exports.readCarStream = exports.readCar = exports.carToBlocks = exports.blocksToCarFile = exports.blocksToCarStream = void 0;
30
27
  exports.verifyIncomingCarBlocks = verifyIncomingCarBlocks;
31
28
  exports.writeCarStream = writeCarStream;
32
29
  exports.writeCar = writeCar;
33
30
  const promises_1 = require("node:timers/promises");
34
- const cbor = __importStar(require("@ipld/dag-cbor"));
35
31
  const iterator_1 = require("@ipld/car/iterator");
36
32
  const writer_1 = require("@ipld/car/writer");
33
+ const cbor = __importStar(require("@ipld/dag-cbor"));
37
34
  const common_1 = require("@atproto/common");
38
- const lexicon_1 = require("@atproto/lexicon");
39
35
  const crypto = __importStar(require("@atproto/crypto"));
36
+ const lexicon_1 = require("@atproto/lexicon");
37
+ const block_map_1 = require("./block-map");
40
38
  const types_1 = require("./types");
41
- const block_map_1 = __importDefault(require("./block-map"));
42
39
  async function* verifyIncomingCarBlocks(car) {
43
40
  for await (const block of car) {
44
41
  await (0, common_1.verifyCidForBytes)(block.cid, block.bytes);
@@ -77,7 +74,7 @@ const blocksToCarFile = (root, blocks) => {
77
74
  exports.blocksToCarFile = blocksToCarFile;
78
75
  const carToBlocks = async (car) => {
79
76
  const roots = await car.getRoots();
80
- const blocks = new block_map_1.default();
77
+ const blocks = new block_map_1.BlockMap();
81
78
  for await (const block of verifyIncomingCarBlocks(car)) {
82
79
  blocks.set(block.cid, block.bytes);
83
80
  // break up otherwise "synchronous" work in car parsing
package/dist/util.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,12 +1,15 @@
1
1
  {
2
2
  "name": "@atproto/repo",
3
- "version": "0.6.2",
3
+ "version": "0.6.4",
4
4
  "license": "MIT",
5
5
  "description": "atproto repo and MST implementation",
6
6
  "keywords": [
7
7
  "atproto",
8
8
  "mst"
9
9
  ],
10
+ "engines": {
11
+ "node": ">=18.7.0"
12
+ },
10
13
  "homepage": "https://atproto.com",
11
14
  "repository": {
12
15
  "type": "git",
@@ -21,10 +24,10 @@
21
24
  "multiformats": "^9.9.0",
22
25
  "uint8arrays": "3.0.0",
23
26
  "zod": "^3.23.8",
24
- "@atproto/common": "^0.4.6",
25
- "@atproto/common-web": "^0.3.2",
26
- "@atproto/crypto": "^0.4.3",
27
- "@atproto/lexicon": "^0.4.5"
27
+ "@atproto/common": "^0.4.8",
28
+ "@atproto/common-web": "^0.4.0",
29
+ "@atproto/crypto": "^0.4.4",
30
+ "@atproto/lexicon": "^0.4.6"
28
31
  },
29
32
  "devDependencies": {
30
33
  "jest": "^28.1.2",
package/src/block-map.ts CHANGED
@@ -1,7 +1,7 @@
1
- import { lexToIpld, LexValue } from '@atproto/lexicon'
2
- import { dataToCborBlock } from '@atproto/common'
3
1
  import { CID } from 'multiformats/cid'
4
2
  import * as uint8arrays from 'uint8arrays'
3
+ import { dataToCborBlock } from '@atproto/common'
4
+ import { LexValue, lexToIpld } from '@atproto/lexicon'
5
5
 
6
6
  export class BlockMap {
7
7
  private map: Map<string, Uint8Array> = new Map()
package/src/data-diff.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import { CID } from 'multiformats'
2
- import CidSet from './cid-set'
2
+ import { BlockMap } from './block-map'
3
+ import { CidSet } from './cid-set'
3
4
  import { MST, NodeEntry, mstDiff } from './mst'
4
- import BlockMap from './block-map'
5
5
 
6
6
  export class DataDiff {
7
7
  adds: Record<string, DataAdd> = {}
@@ -115,5 +115,3 @@ export type DataDelete = {
115
115
  key: string
116
116
  cid: CID
117
117
  }
118
-
119
- export default DataDiff
package/src/mst/diff.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import { DataDiff } from '../data-diff'
2
- import MST from './mst'
3
- import MstWalker from './walker'
2
+ import { MST } from './mst'
3
+ import { MstWalker } from './walker'
4
4
 
5
5
  export const nullDiff = async (tree: MST): Promise<DataDiff> => {
6
6
  const diff = new DataDiff()
package/src/mst/mst.ts CHANGED
@@ -1,14 +1,13 @@
1
- import z from 'zod'
2
- import { CID } from 'multiformats'
3
-
4
- import { ReadableBlockstore } from '../storage'
5
- import { schema as common, cidForCbor, dataToCborBlock } from '@atproto/common'
6
1
  import { BlockWriter } from '@ipld/car/writer'
7
- import * as util from './util'
8
- import BlockMap from '../block-map'
9
- import CidSet from '../cid-set'
2
+ import { CID } from 'multiformats'
3
+ import { z } from 'zod'
4
+ import { cidForCbor, dataToCborBlock, schema as common } from '@atproto/common'
5
+ import { BlockMap } from '../block-map'
6
+ import { CidSet } from '../cid-set'
10
7
  import { MissingBlockError, MissingBlocksError } from '../error'
11
8
  import * as parse from '../parse'
9
+ import { ReadableBlockstore } from '../storage'
10
+ import * as util from './util'
12
11
 
13
12
  /**
14
13
  * This is an implementation of a Merkle Search Tree (MST)
@@ -811,5 +810,3 @@ export class Leaf {
811
810
  }
812
811
  }
813
812
  }
814
-
815
- export default MST
package/src/mst/util.ts CHANGED
@@ -1,9 +1,9 @@
1
1
  import { CID } from 'multiformats'
2
2
  import * as uint8arrays from 'uint8arrays'
3
- import { ReadableBlockstore } from '../storage'
4
- import { sha256 } from '@atproto/crypto'
5
- import { MST, Leaf, NodeEntry, NodeData, MstOpts } from './mst'
6
3
  import { cidForCbor } from '@atproto/common'
4
+ import { sha256 } from '@atproto/crypto'
5
+ import { ReadableBlockstore } from '../storage'
6
+ import { Leaf, MST, MstOpts, NodeData, NodeEntry } from './mst'
7
7
 
8
8
  export const leadingZerosOnHash = async (key: string | Uint8Array) => {
9
9
  const hash = await sha256(key)
package/src/mst/walker.ts CHANGED
@@ -116,5 +116,3 @@ export class MstWalker {
116
116
  }
117
117
  }
118
118
  }
119
-
120
- export default MstWalker
package/src/parse.ts CHANGED
@@ -1,7 +1,7 @@
1
- import { check, cborDecode } from '@atproto/common'
2
- import { RepoRecord } from '@atproto/lexicon'
3
1
  import { CID } from 'multiformats/cid'
4
- import BlockMap from './block-map'
2
+ import { cborDecode, check } from '@atproto/common'
3
+ import { RepoRecord } from '@atproto/lexicon'
4
+ import { BlockMap } from './block-map'
5
5
  import { MissingBlockError, UnexpectedObjectError } from './error'
6
6
  import { cborToLexRecord } from './util'
7
7
 
@@ -1,12 +1,12 @@
1
1
  import { CID } from 'multiformats/cid'
2
- import { def, RepoContents, Commit } from './types'
3
- import { ReadableBlockstore } from './storage'
4
- import { MST } from './mst'
2
+ import { RepoRecord } from '@atproto/lexicon'
3
+ import { MissingBlocksError } from './error'
5
4
  import log from './logger'
6
- import * as util from './util'
5
+ import { MST } from './mst'
7
6
  import * as parse from './parse'
8
- import { MissingBlocksError } from './error'
9
- import { RepoRecord } from '@atproto/lexicon'
7
+ import { ReadableBlockstore } from './storage'
8
+ import { Commit, RepoContents, def } from './types'
9
+ import * as util from './util'
10
10
 
11
11
  type Params = {
12
12
  storage: ReadableBlockstore
@@ -85,5 +85,3 @@ export class ReadableRepo {
85
85
  return contents
86
86
  }
87
87
  }
88
-
89
- export default ReadableRepo
package/src/repo.ts CHANGED
@@ -1,23 +1,23 @@
1
1
  import { CID } from 'multiformats/cid'
2
- import { dataToCborBlock, TID } from '@atproto/common'
2
+ import { TID, dataToCborBlock } from '@atproto/common'
3
3
  import * as crypto from '@atproto/crypto'
4
4
  import { lexToIpld } from '@atproto/lexicon'
5
+ import { BlockMap } from './block-map'
6
+ import { CidSet } from './cid-set'
7
+ import { DataDiff } from './data-diff'
8
+ import log from './logger'
9
+ import { MST } from './mst'
10
+ import { ReadableRepo } from './readable-repo'
11
+ import { RepoStorage } from './storage'
5
12
  import {
6
13
  Commit,
7
14
  CommitData,
8
- def,
9
15
  RecordCreateOp,
10
16
  RecordWriteOp,
11
17
  WriteOpAction,
18
+ def,
12
19
  } from './types'
13
- import { RepoStorage } from './storage'
14
- import { MST } from './mst'
15
- import DataDiff from './data-diff'
16
- import log from './logger'
17
- import BlockMap from './block-map'
18
- import { ReadableRepo } from './readable-repo'
19
20
  import * as util from './util'
20
- import CidSet from './cid-set'
21
21
 
22
22
  type Params = {
23
23
  storage: RepoStorage
@@ -1,7 +1,7 @@
1
1
  import { CID } from 'multiformats/cid'
2
+ import { BlockMap } from '../block-map'
2
3
  import { CommitData } from '../types'
3
- import BlockMap from '../block-map'
4
- import ReadableBlockstore from './readable-blockstore'
4
+ import { ReadableBlockstore } from './readable-blockstore'
5
5
  import { RepoStorage } from './types'
6
6
 
7
7
  export class MemoryBlockstore
@@ -1,7 +1,7 @@
1
+ import { CID } from 'multiformats/cid'
1
2
  import { check } from '@atproto/common'
2
3
  import { RepoRecord } from '@atproto/lexicon'
3
- import { CID } from 'multiformats/cid'
4
- import BlockMap from '../block-map'
4
+ import { BlockMap } from '../block-map'
5
5
  import { MissingBlockError } from '../error'
6
6
  import * as parse from '../parse'
7
7
  import { cborToLexRecord } from '../util'
@@ -1,6 +1,6 @@
1
1
  import { CID } from 'multiformats/cid'
2
- import BlockMap from '../block-map'
3
- import ReadableBlockstore from './readable-blockstore'
2
+ import { BlockMap } from '../block-map'
3
+ import { ReadableBlockstore } from './readable-blockstore'
4
4
 
5
5
  export class SyncStorage extends ReadableBlockstore {
6
6
  constructor(
@@ -1,8 +1,8 @@
1
- import stream from 'stream'
1
+ import stream from 'node:stream'
2
2
  import { CID } from 'multiformats/cid'
3
- import { RepoRecord } from '@atproto/lexicon'
4
3
  import { check } from '@atproto/common'
5
- import BlockMap from '../block-map'
4
+ import { RepoRecord } from '@atproto/lexicon'
5
+ import { BlockMap } from '../block-map'
6
6
  import { CommitData } from '../types'
7
7
 
8
8
  export interface RepoStorage {
@@ -1,17 +1,17 @@
1
1
  import { CID } from 'multiformats/cid'
2
+ import { BlockMap } from '../block-map'
3
+ import { DataDiff } from '../data-diff'
4
+ import { MST } from '../mst'
5
+ import { ReadableRepo } from '../readable-repo'
2
6
  import { MemoryBlockstore, ReadableBlockstore, SyncStorage } from '../storage'
3
- import DataDiff from '../data-diff'
4
- import ReadableRepo from '../readable-repo'
5
- import * as util from '../util'
6
7
  import {
7
- RecordClaim,
8
8
  RecordCidClaim,
9
+ RecordClaim,
9
10
  VerifiedDiff,
10
11
  VerifiedRepo,
12
+ def,
11
13
  } from '../types'
12
- import { def } from '../types'
13
- import { MST } from '../mst'
14
- import BlockMap from '../block-map'
14
+ import * as util from '../util'
15
15
 
16
16
  export const verifyRepoCar = async (
17
17
  carBytes: Uint8Array,
@@ -1,11 +1,11 @@
1
- import { def, RecordPath } from '../types'
2
1
  import { BlockWriter } from '@ipld/car/writer'
3
2
  import { CID } from 'multiformats/cid'
4
- import CidSet from '../cid-set'
3
+ import { CidSet } from '../cid-set'
5
4
  import { MissingBlocksError } from '../error'
5
+ import { MST } from '../mst'
6
6
  import { ReadableBlockstore, RepoStorage } from '../storage'
7
+ import { RecordPath, def } from '../types'
7
8
  import * as util from '../util'
8
- import { MST } from '../mst'
9
9
 
10
10
  // Full Repo
11
11
  // -------------
package/src/types.ts CHANGED
@@ -1,10 +1,10 @@
1
+ import { CID } from 'multiformats'
1
2
  import { z } from 'zod'
2
- import { def as commonDef } from '@atproto/common-web'
3
3
  import { schema as common } from '@atproto/common'
4
- import { CID } from 'multiformats'
5
- import BlockMap from './block-map'
4
+ import { def as commonDef } from '@atproto/common-web'
6
5
  import { RepoRecord } from '@atproto/lexicon'
7
- import CidSet from './cid-set'
6
+ import { BlockMap } from './block-map'
7
+ import { CidSet } from './cid-set'
8
8
 
9
9
  // Repo nodes
10
10
  // ---------------
package/src/util.ts CHANGED
@@ -1,22 +1,24 @@
1
+ import { Readable } from 'node:stream'
1
2
  import { setImmediate } from 'node:timers/promises'
2
- import { CID } from 'multiformats/cid'
3
- import * as cbor from '@ipld/dag-cbor'
4
3
  import { CarBlockIterator } from '@ipld/car/iterator'
5
4
  import { BlockWriter, CarWriter } from '@ipld/car/writer'
5
+ import * as cbor from '@ipld/dag-cbor'
6
+ import { CID } from 'multiformats/cid'
6
7
  import {
7
- streamToBuffer,
8
- verifyCidForBytes,
8
+ TID,
9
+ byteIterableToStream,
9
10
  cborDecode,
10
11
  check,
11
- schema,
12
12
  cidForCbor,
13
- byteIterableToStream,
14
- TID,
13
+ schema,
14
+ streamToBuffer,
15
+ verifyCidForBytes,
15
16
  } from '@atproto/common'
16
- import { ipldToLex, lexToIpld, LexValue, RepoRecord } from '@atproto/lexicon'
17
-
18
17
  import * as crypto from '@atproto/crypto'
19
- import DataDiff from './data-diff'
18
+ import { Keypair } from '@atproto/crypto'
19
+ import { LexValue, RepoRecord, ipldToLex, lexToIpld } from '@atproto/lexicon'
20
+ import { BlockMap } from './block-map'
21
+ import { DataDiff } from './data-diff'
20
22
  import {
21
23
  CarBlock,
22
24
  Commit,
@@ -29,9 +31,6 @@ import {
29
31
  UnsignedCommit,
30
32
  WriteOpAction,
31
33
  } from './types'
32
- import BlockMap from './block-map'
33
- import { Keypair } from '@atproto/crypto'
34
- import { Readable } from 'stream'
35
34
 
36
35
  export async function* verifyIncomingCarBlocks(
37
36
  car: AsyncIterable<CarBlock>,
package/tests/_util.ts CHANGED
@@ -1,22 +1,22 @@
1
- import fs from 'fs'
1
+ import fs from 'node:fs'
2
2
  import { CID } from 'multiformats'
3
3
  import { TID, dataToCborBlock } from '@atproto/common'
4
4
  import * as crypto from '@atproto/crypto'
5
- import { Repo } from '../src/repo'
6
- import { RepoStorage } from '../src/storage'
7
- import { MST } from '../src/mst'
5
+ import { Keypair, randomBytes } from '@atproto/crypto'
8
6
  import {
9
7
  BlockMap,
10
8
  CollectionContents,
9
+ Commit,
10
+ CommitData,
11
+ DataDiff,
12
+ RecordPath,
11
13
  RecordWriteOp,
12
14
  RepoContents,
13
- RecordPath,
14
15
  WriteOpAction,
15
- Commit,
16
- DataDiff,
17
- CommitData,
18
16
  } from '../src'
19
- import { Keypair, randomBytes } from '@atproto/crypto'
17
+ import { MST } from '../src/mst'
18
+ import { Repo } from '../src/repo'
19
+ import { RepoStorage } from '../src/storage'
20
20
 
21
21
  type IdMapping = Record<string, CID>
22
22
 
@@ -1,6 +1,6 @@
1
1
  import { Secp256k1Keypair } from '@atproto/crypto'
2
+ import { Repo, WriteOpAction, blocksToCarFile, verifyProofs } from '../src'
2
3
  import { MemoryBlockstore } from '../src/storage'
3
- import { blocksToCarFile, Repo, verifyProofs, WriteOpAction } from '../src'
4
4
 
5
5
  describe('Commit data', () => {
6
6
  // @NOTE this test uses a fully deterministic tree structure
package/tests/mst.test.ts CHANGED
@@ -1,12 +1,10 @@
1
+ import { CID } from 'multiformats'
2
+ import { DataAdd, DataDelete, DataDiff, DataUpdate } from '../src/data-diff'
1
3
  import { MST } from '../src/mst'
2
- import DataDiff, { DataAdd, DataUpdate, DataDelete } from '../src/data-diff'
3
- import { countPrefixLen, InvalidMstKeyError } from '../src/mst/util'
4
-
4
+ import { InvalidMstKeyError, countPrefixLen } from '../src/mst/util'
5
5
  import { MemoryBlockstore } from '../src/storage'
6
6
  import * as util from './_util'
7
7
 
8
- import { CID } from 'multiformats'
9
-
10
8
  describe('Merkle Search Tree', () => {
11
9
  let blockstore: MemoryBlockstore
12
10
  let mst: MST
@@ -3,7 +3,6 @@ import * as crypto from '@atproto/crypto'
3
3
  import { RecordCidClaim, RecordPath, Repo, RepoContents } from '../src'
4
4
  import { MemoryBlockstore } from '../src/storage'
5
5
  import * as sync from '../src/sync'
6
-
7
6
  import * as util from './_util'
8
7
 
9
8
  describe('Repo Proofs', () => {
@@ -1,10 +1,10 @@
1
+ import { TID } from '@atproto/common'
1
2
  import * as crypto from '@atproto/crypto'
3
+ import { Secp256k1Keypair } from '@atproto/crypto'
4
+ import { RepoContents, WriteOpAction, verifyCommitSig } from '../src'
2
5
  import { Repo } from '../src/repo'
3
6
  import { MemoryBlockstore } from '../src/storage'
4
7
  import * as util from './_util'
5
- import { TID } from '@atproto/common'
6
- import { RepoContents, verifyCommitSig, WriteOpAction } from '../src'
7
- import { Secp256k1Keypair } from '@atproto/crypto'
8
8
 
9
9
  describe('Repo', () => {
10
10
  const collName = 'com.example.posts'
@@ -1,3 +1,5 @@
1
+ import { CarReader } from '@ipld/car/reader'
2
+ import { streamToBuffer } from '@atproto/common'
1
3
  import * as crypto from '@atproto/crypto'
2
4
  import {
3
5
  CidSet,
@@ -9,10 +11,7 @@ import {
9
11
  } from '../src'
10
12
  import { MemoryBlockstore } from '../src/storage'
11
13
  import * as sync from '../src/sync'
12
-
13
14
  import * as util from './_util'
14
- import { streamToBuffer } from '@atproto/common'
15
- import { CarReader } from '@ipld/car/reader'
16
15
 
17
16
  describe('Repo Sync', () => {
18
17
  let storage: MemoryBlockstore