tardis-machine 18.0.1 → 18.2.0

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 (114) hide show
  1. package/dist/ws/subscriptionsmappers.d.ts.map +1 -1
  2. package/dist/ws/subscriptionsmappers.js +3 -1
  3. package/dist/ws/subscriptionsmappers.js.map +1 -1
  4. package/node_modules/tardis-dev/dist/consts.d.ts +3 -1
  5. package/node_modules/tardis-dev/dist/consts.d.ts.map +1 -1
  6. package/node_modules/tardis-dev/dist/consts.js +17 -0
  7. package/node_modules/tardis-dev/dist/consts.js.map +1 -1
  8. package/node_modules/tardis-dev/dist/downloaddatasets.d.ts.map +1 -1
  9. package/node_modules/tardis-dev/dist/downloaddatasets.js +3 -1
  10. package/node_modules/tardis-dev/dist/downloaddatasets.js.map +1 -1
  11. package/node_modules/tardis-dev/dist/handy.d.ts +15 -1
  12. package/node_modules/tardis-dev/dist/handy.d.ts.map +1 -1
  13. package/node_modules/tardis-dev/dist/handy.js +10 -5
  14. package/node_modules/tardis-dev/dist/handy.js.map +1 -1
  15. package/node_modules/tardis-dev/dist/mappers/ascendex.d.ts +4 -4
  16. package/node_modules/tardis-dev/dist/mappers/aster.d.ts +16 -0
  17. package/node_modules/tardis-dev/dist/mappers/aster.d.ts.map +1 -0
  18. package/node_modules/tardis-dev/dist/mappers/aster.js +294 -0
  19. package/node_modules/tardis-dev/dist/mappers/aster.js.map +1 -0
  20. package/node_modules/tardis-dev/dist/mappers/binance.d.ts +18 -18
  21. package/node_modules/tardis-dev/dist/mappers/binance.js +22 -22
  22. package/node_modules/tardis-dev/dist/mappers/binance.js.map +1 -1
  23. package/node_modules/tardis-dev/dist/mappers/binanceeuropeanoptions.d.ts +1 -1
  24. package/node_modules/tardis-dev/dist/mappers/bitfinex.d.ts +8 -8
  25. package/node_modules/tardis-dev/dist/mappers/bitflyer.d.ts +1 -1
  26. package/node_modules/tardis-dev/dist/mappers/bitget.d.ts +1 -1
  27. package/node_modules/tardis-dev/dist/mappers/bitmex.d.ts +2 -2
  28. package/node_modules/tardis-dev/dist/mappers/bitnomial.d.ts +1 -1
  29. package/node_modules/tardis-dev/dist/mappers/bitstamp.d.ts +1 -1
  30. package/node_modules/tardis-dev/dist/mappers/blockchaincom.d.ts +2 -2
  31. package/node_modules/tardis-dev/dist/mappers/bullish.d.ts +5 -5
  32. package/node_modules/tardis-dev/dist/mappers/bybit.d.ts +7 -7
  33. package/node_modules/tardis-dev/dist/mappers/bybitspot.d.ts +1 -1
  34. package/node_modules/tardis-dev/dist/mappers/coinbase.d.ts +1 -1
  35. package/node_modules/tardis-dev/dist/mappers/coinbaseinternational.d.ts +2 -2
  36. package/node_modules/tardis-dev/dist/mappers/coinflex.d.ts +1 -1
  37. package/node_modules/tardis-dev/dist/mappers/cryptocom.d.ts +5 -5
  38. package/node_modules/tardis-dev/dist/mappers/delta.d.ts +1 -1
  39. package/node_modules/tardis-dev/dist/mappers/deribit.d.ts +2 -2
  40. package/node_modules/tardis-dev/dist/mappers/dydx.d.ts +3 -3
  41. package/node_modules/tardis-dev/dist/mappers/dydxv4.d.ts +4 -4
  42. package/node_modules/tardis-dev/dist/mappers/ftx.d.ts +8 -8
  43. package/node_modules/tardis-dev/dist/mappers/gateio.d.ts +1 -1
  44. package/node_modules/tardis-dev/dist/mappers/gateiofutures.d.ts +4 -4
  45. package/node_modules/tardis-dev/dist/mappers/gemini.d.ts +1 -1
  46. package/node_modules/tardis-dev/dist/mappers/huobi.d.ts +26 -26
  47. package/node_modules/tardis-dev/dist/mappers/hyperliquid.d.ts +4 -4
  48. package/node_modules/tardis-dev/dist/mappers/hyperliquid.d.ts.map +1 -1
  49. package/node_modules/tardis-dev/dist/mappers/hyperliquid.js +15 -4
  50. package/node_modules/tardis-dev/dist/mappers/hyperliquid.js.map +1 -1
  51. package/node_modules/tardis-dev/dist/mappers/index.d.ts +180 -162
  52. package/node_modules/tardis-dev/dist/mappers/index.d.ts.map +1 -1
  53. package/node_modules/tardis-dev/dist/mappers/index.js +2 -1
  54. package/node_modules/tardis-dev/dist/mappers/index.js.map +1 -1
  55. package/node_modules/tardis-dev/dist/mappers/kucoin.d.ts +3 -3
  56. package/node_modules/tardis-dev/dist/mappers/kucoinfutures.d.ts +4 -4
  57. package/node_modules/tardis-dev/dist/mappers/lighter.d.ts +5 -5
  58. package/node_modules/tardis-dev/dist/mappers/mexc.d.ts +3 -3
  59. package/node_modules/tardis-dev/dist/mappers/mexcfutures.d.ts +3 -3
  60. package/node_modules/tardis-dev/dist/mappers/okex.d.ts +15 -15
  61. package/node_modules/tardis-dev/dist/mappers/phemex.d.ts +1 -1
  62. package/node_modules/tardis-dev/dist/mappers/polymarket.d.ts +3 -3
  63. package/node_modules/tardis-dev/dist/mappers/registry.d.ts.map +1 -1
  64. package/node_modules/tardis-dev/dist/mappers/registry.js.map +1 -1
  65. package/node_modules/tardis-dev/dist/mappers/serum.d.ts +9 -9
  66. package/node_modules/tardis-dev/dist/mappers/upbit.d.ts +2 -2
  67. package/node_modules/tardis-dev/dist/realtimefeeds/aster.d.ts +53 -0
  68. package/node_modules/tardis-dev/dist/realtimefeeds/aster.d.ts.map +1 -0
  69. package/node_modules/tardis-dev/dist/realtimefeeds/aster.js +271 -0
  70. package/node_modules/tardis-dev/dist/realtimefeeds/aster.js.map +1 -0
  71. package/node_modules/tardis-dev/dist/realtimefeeds/binance.d.ts +1 -4
  72. package/node_modules/tardis-dev/dist/realtimefeeds/binance.d.ts.map +1 -1
  73. package/node_modules/tardis-dev/dist/realtimefeeds/binance.js +36 -95
  74. package/node_modules/tardis-dev/dist/realtimefeeds/binance.js.map +1 -1
  75. package/node_modules/tardis-dev/dist/realtimefeeds/index.d.ts.map +1 -1
  76. package/node_modules/tardis-dev/dist/realtimefeeds/index.js +3 -0
  77. package/node_modules/tardis-dev/dist/realtimefeeds/index.js.map +1 -1
  78. package/node_modules/tardis-dev/dist/realtimefeeds/realtimefeed.d.ts.map +1 -1
  79. package/node_modules/tardis-dev/dist/realtimefeeds/realtimefeed.js +12 -3
  80. package/node_modules/tardis-dev/dist/realtimefeeds/realtimefeed.js.map +1 -1
  81. package/node_modules/tardis-dev/dist/realtimefeeds/requestweight.d.ts +14 -0
  82. package/node_modules/tardis-dev/dist/realtimefeeds/requestweight.d.ts.map +1 -0
  83. package/node_modules/tardis-dev/dist/realtimefeeds/requestweight.js +72 -0
  84. package/node_modules/tardis-dev/dist/realtimefeeds/requestweight.js.map +1 -0
  85. package/node_modules/tardis-dev/dist/replay.d.ts.map +1 -1
  86. package/node_modules/tardis-dev/dist/replay.js +6 -4
  87. package/node_modules/tardis-dev/dist/replay.js.map +1 -1
  88. package/node_modules/tardis-dev/dist/worker.d.ts.map +1 -1
  89. package/node_modules/tardis-dev/dist/worker.js +5 -2
  90. package/node_modules/tardis-dev/dist/worker.js.map +1 -1
  91. package/node_modules/tardis-dev/dist/zstd.d.ts +3 -0
  92. package/node_modules/tardis-dev/dist/zstd.d.ts.map +1 -0
  93. package/node_modules/tardis-dev/dist/zstd.js +122 -0
  94. package/node_modules/tardis-dev/dist/zstd.js.map +1 -0
  95. package/node_modules/tardis-dev/package.json +2 -2
  96. package/node_modules/tardis-dev/src/consts.ts +18 -0
  97. package/node_modules/tardis-dev/src/downloaddatasets.ts +3 -1
  98. package/node_modules/tardis-dev/src/handy.ts +13 -5
  99. package/node_modules/tardis-dev/src/mappers/aster.ts +438 -0
  100. package/node_modules/tardis-dev/src/mappers/binance.ts +23 -21
  101. package/node_modules/tardis-dev/src/mappers/bitfinex.ts +1 -2
  102. package/node_modules/tardis-dev/src/mappers/hyperliquid.ts +19 -5
  103. package/node_modules/tardis-dev/src/mappers/index.ts +2 -0
  104. package/node_modules/tardis-dev/src/mappers/registry.ts +1 -2
  105. package/node_modules/tardis-dev/src/realtimefeeds/aster.ts +388 -0
  106. package/node_modules/tardis-dev/src/realtimefeeds/binance.ts +59 -145
  107. package/node_modules/tardis-dev/src/realtimefeeds/index.ts +3 -0
  108. package/node_modules/tardis-dev/src/realtimefeeds/realtimefeed.ts +12 -3
  109. package/node_modules/tardis-dev/src/realtimefeeds/requestweight.ts +91 -0
  110. package/node_modules/tardis-dev/src/replay.ts +6 -4
  111. package/node_modules/tardis-dev/src/worker.ts +5 -2
  112. package/node_modules/tardis-dev/src/zstd.ts +139 -0
  113. package/package.json +4 -4
  114. package/src/ws/subscriptionsmappers.ts +3 -1
@@ -2,7 +2,7 @@ import { createReadStream } from 'node:fs';
2
2
  import { rm } from 'node:fs/promises';
3
3
  import { EventEmitter, once } from 'events';
4
4
  import { Worker } from 'worker_threads';
5
- import { constants, createGunzip, createZstdDecompress } from 'zlib';
5
+ import { constants, createGunzip } from 'zlib';
6
6
  import { BinarySplitBatchStream } from "./binarysplit.js";
7
7
  import { clearCacheSync } from "./clearcache.js";
8
8
  import { EXCHANGES, EXCHANGE_CHANNELS_INFO } from "./consts.js";
@@ -10,6 +10,7 @@ import { debug } from "./debug.js";
10
10
  import { addDays, createNormalizedSymbolFilter, getFilters, parseAsUTCDate, wait } from "./handy.js";
11
11
  import { normalizeBookChanges } from "./mappers/index.js";
12
12
  import { getOptions } from "./options.js";
13
+ import { createZstdDecompressionStream } from "./zstd.js";
13
14
  const DATE_MESSAGE_SPLIT_INDEX = 28;
14
15
  const CHUNK_SIZE = 256 * 1024;
15
16
  // Keep decompression lenient for partial gzip responses.
@@ -110,9 +111,10 @@ async function* replayLineBatches({ exchange, from, to, filters, apiKey = undefi
110
111
  // response is a path to file on disk let' read it as stream
111
112
  const { slicePath: cachedSlicePath, sliceSize } = cachedSlice;
112
113
  const isZstdSlice = cachedSlicePath.endsWith('.zst');
113
- const linesStream = createReadStream(cachedSlicePath, { highWaterMark: CHUNK_SIZE })
114
- // decompress it while preserving the on-disk cache in the negotiated wire format
115
- .pipe(isZstdSlice ? createZstdDecompress({ chunkSize: CHUNK_SIZE }) : createGunzip(GZIP_OPTIONS))
114
+ const decompressedStream = isZstdSlice
115
+ ? createZstdDecompressionStream(cachedSlicePath, CHUNK_SIZE)
116
+ : createReadStream(cachedSlicePath, { highWaterMark: CHUNK_SIZE }).pipe(createGunzip(GZIP_OPTIONS));
117
+ const linesStream = decompressedStream
116
118
  .on('error', function onDecompressionError(err) {
117
119
  debug('%s decompression error %o', isZstdSlice ? 'zstd' : 'gzip', err);
118
120
  linesStream.destroy(err);
@@ -1 +1 @@
1
- {"version":3,"file":"replay.js","sourceRoot":"","sources":["../src/replay.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"replay.js","sourceRoot":"","sources":["../src/replay.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"worker.d.ts","sourceRoot":"","sources":["../src/worker.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AAgM7C,MAAM,MAAM,aAAa,GAAG;IAC1B,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;CAClB,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;IACd,mBAAmB,EAAE,mBAAmB,CAAA;IACxC,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,IAAI,CAAA;IACd,MAAM,EAAE,IAAI,CAAA;IACZ,QAAQ,EAAE,QAAQ,CAAA;IAClB,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAA;IACtB,2BAA2B,CAAC,EAAE,OAAO,GAAG,MAAM,CAAA;CAC/C,CAAA;AAED,0BAAkB,YAAY;IAC5B,gBAAgB,qBAAqB;IACrC,kBAAkB,uBAAuB;CAC1C"}
1
+ {"version":3,"file":"worker.d.ts","sourceRoot":"","sources":["../src/worker.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AAmM7C,MAAM,MAAM,aAAa,GAAG;IAC1B,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;CAClB,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;IACd,mBAAmB,EAAE,mBAAmB,CAAA;IACxC,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,IAAI,CAAA;IACd,MAAM,EAAE,IAAI,CAAA;IACZ,QAAQ,EAAE,QAAQ,CAAA;IAClB,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAA;IACtB,2BAA2B,CAAC,EAAE,OAAO,GAAG,MAAM,CAAA;CAC/C,CAAA;AAED,0BAAkB,YAAY;IAC5B,gBAAgB,qBAAqB;IACrC,kBAAkB,uBAAuB;CAC1C"}
@@ -5,6 +5,7 @@ import { forEachConcurrent } from "./foreachconcurrent.js";
5
5
  import { addMinutes, download, formatDateToPath, optimizeFilters, sha256, wait, cleanTempFiles } from "./handy.js";
6
6
  const debug = createDebug('tardis-dev');
7
7
  const DEFAULT_DATA_FEED_SLICE_SIZE = 1;
8
+ const DATA_FEED_DOWNLOAD_ATTEMPT_TIMEOUT_MS = 135_000;
8
9
  if (isMainThread) {
9
10
  debug('current worker is not meant to run in main thread');
10
11
  }
@@ -111,7 +112,8 @@ async function getDataFeedSlice({ exchange, fromDate, endpoint, apiKey, dataFeed
111
112
  suggestedSliceSize: DEFAULT_DATA_FEED_SLICE_SIZE
112
113
  };
113
114
  }
114
- let url = `${endpoint}/data-feeds/${exchange}?from=${fromDate.toISOString()}&offset=${offset}&compression=${dataFeedCompression}`;
115
+ const requestCompression = dataFeedCompression === 'zstd' ? 'zstd-multiframe' : dataFeedCompression;
116
+ let url = `${endpoint}/data-feeds/${exchange}?from=${fromDate.toISOString()}&offset=${offset}&compression=${requestCompression}`;
115
117
  if (requestedSliceSize > DEFAULT_DATA_FEED_SLICE_SIZE) {
116
118
  url += `&sliceSize=${requestedSliceSize}`;
117
119
  }
@@ -124,7 +126,8 @@ async function getDataFeedSlice({ exchange, fromDate, endpoint, apiKey, dataFeed
124
126
  url,
125
127
  userAgent,
126
128
  appendContentEncodingExtension: true,
127
- acceptEncoding: dataFeedCompression === 'gzip' ? 'gzip' : 'zstd, gzip'
129
+ acceptEncoding: dataFeedCompression === 'gzip' ? 'gzip' : 'zstd, gzip',
130
+ attemptTimeoutMS: DATA_FEED_DOWNLOAD_ATTEMPT_TIMEOUT_MS
128
131
  });
129
132
  const responseSliceSize = Number(downloadResult.headers['x-slice-size']);
130
133
  const suggestedSliceSize = Number(downloadResult.headers['x-suggested-slice-size'] ?? DEFAULT_DATA_FEED_SLICE_SIZE);
@@ -1 +1 @@
1
- {"version":3,"file":"worker.js","sourceRoot":"","sources":["../src/worker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"worker.js","sourceRoot":"","sources":["../src/worker.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { Readable } from 'node:stream';
2
+ export declare function createZstdDecompressionStream(path: string, chunkSize: number): Readable;
3
+ //# sourceMappingURL=zstd.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zstd.d.ts","sourceRoot":"","sources":["../src/zstd.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAMtC,wBAAgB,6BAA6B,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,YAE5E"}
@@ -0,0 +1,122 @@
1
+ import { once } from 'node:events';
2
+ import { open } from 'node:fs/promises';
3
+ import { Readable } from 'node:stream';
4
+ import { createZstdDecompress } from 'node:zlib';
5
+ const ZSTD_FRAME_MAGIC = 0xfd2fb528;
6
+ const DICTIONARY_ID_SIZES = [0, 1, 2, 4];
7
+ export function createZstdDecompressionStream(path, chunkSize) {
8
+ return Readable.from(decompressZstdFrames(path, chunkSize), { objectMode: false });
9
+ }
10
+ async function* decompressZstdFrames(path, chunkSize) {
11
+ const file = await open(path, 'r');
12
+ try {
13
+ const fileSize = (await file.stat()).size;
14
+ const frames = await findZstdFrames(file, path, fileSize);
15
+ for (const frame of frames) {
16
+ const source = Readable.from(readFileRange(file, frame.offset, frame.length, chunkSize), { objectMode: false });
17
+ const decompressor = createZstdDecompress({ chunkSize });
18
+ source.on('error', (error) => decompressor.destroy(error));
19
+ source.pipe(decompressor);
20
+ try {
21
+ for await (const chunk of decompressor) {
22
+ yield chunk;
23
+ }
24
+ if (decompressor.bytesWritten !== frame.length) {
25
+ throw new Error(`Zstd decoder consumed ${decompressor.bytesWritten} of ${frame.length} bytes at offset ${frame.offset} in ${path}`);
26
+ }
27
+ }
28
+ finally {
29
+ source.unpipe(decompressor);
30
+ source.destroy();
31
+ decompressor.destroy();
32
+ if (!source.closed) {
33
+ await once(source, 'close');
34
+ }
35
+ }
36
+ }
37
+ }
38
+ finally {
39
+ await file.close();
40
+ }
41
+ }
42
+ async function findZstdFrames(file, path, fileSize) {
43
+ if (fileSize === 0) {
44
+ throw new Error(`Empty zstd file: ${path}`);
45
+ }
46
+ const bytes = Buffer.allocUnsafe(4);
47
+ const frames = [];
48
+ let offset = 0;
49
+ while (offset < fileSize) {
50
+ const frameStart = offset;
51
+ await readExactly(file, bytes, 4, offset, fileSize, path);
52
+ if (bytes.readUInt32LE(0) !== ZSTD_FRAME_MAGIC) {
53
+ throw new Error(`Invalid zstd frame magic at offset ${offset} in ${path}`);
54
+ }
55
+ offset += 4;
56
+ await readExactly(file, bytes, 1, offset, fileSize, path);
57
+ const descriptor = bytes[0];
58
+ if ((descriptor & 0x08) !== 0) {
59
+ throw new Error(`Unsupported reserved zstd frame descriptor bit at offset ${offset} in ${path}`);
60
+ }
61
+ offset++;
62
+ const singleSegment = (descriptor & 0x20) !== 0;
63
+ const contentChecksum = (descriptor & 0x04) !== 0;
64
+ const dictionaryIdSize = DICTIONARY_ID_SIZES[descriptor & 0x03];
65
+ const contentSizeFlag = descriptor >>> 6;
66
+ const contentSizeSize = contentSizeFlag === 0 ? (singleSegment ? 1 : 0) : 1 << contentSizeFlag;
67
+ const windowDescriptorSize = singleSegment ? 0 : 1;
68
+ offset += windowDescriptorSize + dictionaryIdSize + contentSizeSize;
69
+ ensureAvailable(offset, 0, fileSize, path);
70
+ let lastBlock = false;
71
+ while (!lastBlock) {
72
+ await readExactly(file, bytes, 3, offset, fileSize, path);
73
+ const blockHeader = bytes.readUIntLE(0, 3);
74
+ offset += 3;
75
+ lastBlock = (blockHeader & 1) !== 0;
76
+ const blockType = (blockHeader >>> 1) & 3;
77
+ if (blockType === 3) {
78
+ throw new Error(`Invalid reserved zstd block type at offset ${offset - 3} in ${path}`);
79
+ }
80
+ const blockSize = blockHeader >>> 3;
81
+ // RLE blocks store one repeated byte; other block types store blockSize bytes.
82
+ offset += blockType === 1 ? 1 : blockSize;
83
+ ensureAvailable(offset, 0, fileSize, path);
84
+ }
85
+ if (contentChecksum) {
86
+ offset += 4;
87
+ ensureAvailable(offset, 0, fileSize, path);
88
+ }
89
+ frames.push({ offset: frameStart, length: offset - frameStart });
90
+ }
91
+ return frames;
92
+ }
93
+ async function* readFileRange(file, position, length, chunkSize) {
94
+ let bytesRemaining = length;
95
+ while (bytesRemaining > 0) {
96
+ const buffer = Buffer.allocUnsafe(Math.min(bytesRemaining, chunkSize));
97
+ const { bytesRead } = await file.read(buffer, 0, buffer.length, position);
98
+ if (bytesRead === 0) {
99
+ throw new Error(`Expected ${length} compressed bytes, read ${length - bytesRemaining}`);
100
+ }
101
+ yield bytesRead === buffer.length ? buffer : buffer.subarray(0, bytesRead);
102
+ position += bytesRead;
103
+ bytesRemaining -= bytesRead;
104
+ }
105
+ }
106
+ async function readExactly(file, buffer, length, position, fileSize, path) {
107
+ ensureAvailable(position, length, fileSize, path);
108
+ let bytesRead = 0;
109
+ while (bytesRead < length) {
110
+ const result = await file.read(buffer, bytesRead, length - bytesRead, position + bytesRead);
111
+ if (result.bytesRead === 0) {
112
+ throw new Error(`Truncated zstd frame at offset ${position + bytesRead} in ${path}`);
113
+ }
114
+ bytesRead += result.bytesRead;
115
+ }
116
+ }
117
+ function ensureAvailable(position, length, fileSize, path) {
118
+ if (position < 0 || length < 0 || position > fileSize - length) {
119
+ throw new Error(`Truncated zstd frame at offset ${position} in ${path}`);
120
+ }
121
+ }
122
+ //# sourceMappingURL=zstd.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zstd.js","sourceRoot":"","sources":["../src/zstd.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "tardis-dev",
3
- "version": "18.0.2",
3
+ "version": "18.2.0",
4
4
  "engines": {
5
5
  "node": ">=24.19"
6
6
  },
@@ -74,7 +74,7 @@
74
74
  "devDependencies": {
75
75
  "@types/node": "^26.1.1",
76
76
  "@types/ws": "^8.18.1",
77
- "prettier": "3.8.3",
77
+ "prettier": "3.9.6",
78
78
  "typescript": "^6.0.3"
79
79
  },
80
80
  "runkitExampleFilename": "example.js"
@@ -1,4 +1,6 @@
1
1
  export const EXCHANGES = [
2
+ 'aster',
3
+ 'aster-futures',
2
4
  'bitmex',
3
5
  'deribit',
4
6
  'binance-futures',
@@ -64,6 +66,20 @@ export const EXCHANGES = [
64
66
  ] as const
65
67
 
66
68
  const BINANCE_CHANNELS = ['trade', 'aggTrade', 'ticker', 'depth', 'depthSnapshot', 'bookTicker', 'recentTrades', 'borrowInterest'] as const
69
+
70
+ const ASTER_CHANNELS = ['trade', 'aggTrade', 'ticker', 'depth', 'depthSnapshot', 'bookTicker'] as const
71
+ const ASTER_FUTURES_CHANNELS = [
72
+ 'trade',
73
+ 'aggTrade',
74
+ 'ticker',
75
+ 'depth',
76
+ 'depthSnapshot',
77
+ 'bookTicker',
78
+ 'markPrice',
79
+ 'forceOrder',
80
+ 'assetIndex',
81
+ 'openInterest'
82
+ ] as const
67
83
  const BINANCE_DEX_CHANNELS = ['trades', 'marketDiff', 'depthSnapshot', 'ticker'] as const
68
84
  const BITFINEX_CHANNELS = ['trades', 'book', 'raw_book', 'ticker'] as const
69
85
 
@@ -558,6 +574,8 @@ const POLYMARKET_CHANNELS = [
558
574
  ] as const
559
575
 
560
576
  export const EXCHANGE_CHANNELS_INFO = {
577
+ aster: ASTER_CHANNELS,
578
+ 'aster-futures': ASTER_FUTURES_CHANNELS,
561
579
  bitmex: BITMEX_CHANNELS,
562
580
  coinbase: COINBASE_CHANNELS,
563
581
  'coinbase-international': COINBASE_INTERNATIONAL_CHANNELS,
@@ -9,6 +9,7 @@ import { Exchange } from './types.ts'
9
9
  const CONCURRENCY_LIMIT = 20
10
10
  const MILLISECONDS_IN_SINGLE_DAY = 24 * 60 * 60 * 1000
11
11
  const DEFAULT_DOWNLOAD_DIR = './datasets'
12
+ const DATASET_DOWNLOAD_ATTEMPT_TIMEOUT_MS = 120_000
12
13
 
13
14
  const options = getOptions()
14
15
 
@@ -134,7 +135,8 @@ function getDownloadOptions({
134
135
  url,
135
136
  downloadPath,
136
137
  userAgent: options._userAgent,
137
- apiKey
138
+ apiKey,
139
+ attemptTimeoutMS: DATASET_DOWNLOAD_ATTEMPT_TIMEOUT_MS
138
140
  }
139
141
  }
140
142
 
@@ -76,13 +76,18 @@ export class HttpError extends Error {
76
76
  }
77
77
  }
78
78
 
79
- class HttpClientError extends Error {
79
+ export class HttpClientError extends Error {
80
+ public readonly status: number
81
+ public readonly retryAfterMS: number | undefined
82
+
80
83
  constructor(
81
84
  public readonly response: HttpResponse,
82
85
  public readonly method: string,
83
86
  public readonly url: string
84
87
  ) {
85
88
  super(`HTTP ${method} ${url} failed with status ${response.statusCode}`)
89
+ this.status = response.statusCode
90
+ this.retryAfterMS = getRetryAfterDelayMS(response.headers)
86
91
  }
87
92
  }
88
93
 
@@ -581,7 +586,8 @@ export async function download({
581
586
  url,
582
587
  userAgent,
583
588
  appendContentEncodingExtension = false,
584
- acceptEncoding = 'gzip'
589
+ acceptEncoding = 'gzip',
590
+ attemptTimeoutMS = 90 * ONE_SEC_IN_MS
585
591
  }: {
586
592
  url: string
587
593
  downloadPath: string
@@ -589,9 +595,10 @@ export async function download({
589
595
  apiKey: string
590
596
  appendContentEncodingExtension?: boolean
591
597
  acceptEncoding?: string
598
+ attemptTimeoutMS?: number
592
599
  }) {
593
600
  const httpRequestOptions = {
594
- timeout: 90 * ONE_SEC_IN_MS,
601
+ timeout: attemptTimeoutMS,
595
602
  headers: {
596
603
  'Accept-Encoding': acceptEncoding,
597
604
  'User-Agent': userAgent,
@@ -664,10 +671,10 @@ async function _downloadFile(
664
671
  // create write file stream that we'll write data into - first as unconfirmed temp file
665
672
 
666
673
  const tmpFilePath = `${downloadPath}${crypto.randomBytes(8).toString('hex')}.unconfirmed`
667
- const fileWriteStream = createWriteStream(tmpFilePath)
674
+ let fileWriteStream: ReturnType<typeof createWriteStream> | undefined
668
675
  const cleanup = () => {
669
676
  try {
670
- fileWriteStream.destroy()
677
+ fileWriteStream?.destroy()
671
678
  rmSync(tmpFilePath, { force: true })
672
679
  } catch {}
673
680
  }
@@ -695,6 +702,7 @@ async function _downloadFile(
695
702
  }
696
703
  }
697
704
 
705
+ fileWriteStream = createWriteStream(tmpFilePath)
698
706
  await pipeline(response, fileWriteStream)
699
707
  if (!response.complete) {
700
708
  throw new Error('The connection was terminated while the message was still being sent')