cross-seed 6.6.0 → 6.8.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.
package/dist/torrent.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { distance } from "fastest-levenshtein";
2
2
  import bencode from "bencode";
3
- import fs from "fs";
3
+ import fs, { existsSync, statSync } from "fs";
4
4
  import { readdir, readFile, writeFile } from "fs/promises";
5
5
  import Fuse from "fuse.js";
6
6
  import { extname, join, resolve } from "path";
@@ -10,10 +10,11 @@ import { LEVENSHTEIN_DIVISOR, MediaType, SAVED_TORRENTS_INFO_REGEX, USER_AGENT,
10
10
  import { db, memDB } from "./db.js";
11
11
  import { Label, logger, logOnce } from "./logger.js";
12
12
  import { updateMetafileMetadata, Metafile } from "./parseTorrent.js";
13
- import { resultOf, resultOfErr } from "./Result.js";
13
+ import { isOk, resultOf, resultOfErr } from "./Result.js";
14
14
  import { getRuntimeConfig } from "./runtimeConfig.js";
15
- import { createSearcheeFromTorrentFile, getAbsoluteFilePath, getAnimeKeys, getEpisodeKey, getLargestFile, getMovieKey, getSeasonKey, } from "./searchee.js";
15
+ import { createSearcheeFromPath, createSearcheeFromTorrentFile, getAbsoluteFilePath, getAnimeKeys, getEpisodeKey, getLargestFile, getMovieKey, getSeasonKey, } from "./searchee.js";
16
16
  import { createKeyTitle, stripExtension } from "./utils.js";
17
+ import { getDataByFuzzyName, indexDataDirs, shouldIgnorePathHeuristically, } from "./dataFiles.js";
17
18
  export var SnatchError;
18
19
  (function (SnatchError) {
19
20
  SnatchError["ABORTED"] = "ABORTED";
@@ -61,7 +62,7 @@ function isMagnetRedirectError(error) {
61
62
  // undici
62
63
  Boolean(error.cause?.message.includes("URL scheme must be a HTTP(S) scheme")));
63
64
  }
64
- export async function snatch(candidate) {
65
+ export async function snatch(candidate, label) {
65
66
  const { snatchTimeout } = getRuntimeConfig();
66
67
  const url = candidate.link;
67
68
  const tracker = candidate.tracker;
@@ -76,16 +77,25 @@ export async function snatch(candidate) {
76
77
  }
77
78
  catch (e) {
78
79
  if (e.name === "AbortError" || e.name === "TimeoutError") {
79
- logger.error(`Snatch timed out from ${tracker} for ${candidate.name}`);
80
+ logger.error({
81
+ label,
82
+ message: `Snatch timed out from ${tracker} for ${candidate.name}`,
83
+ });
80
84
  logger.debug(`${candidate.name}: ${url}`);
81
85
  return resultOfErr(SnatchError.ABORTED);
82
86
  }
83
87
  else if (isMagnetRedirectError(e)) {
84
- logger.verbose(`Unsupported: magnet link detected from ${tracker} for ${candidate.name}`);
88
+ logger.verbose({
89
+ label,
90
+ message: `Unsupported: magnet link detected from ${tracker} for ${candidate.name}`,
91
+ });
85
92
  logger.debug(`${candidate.name}: ${url}`);
86
93
  return resultOfErr(SnatchError.MAGNET_LINK);
87
94
  }
88
- logger.error(`Failed to access ${tracker} for ${candidate.name}`);
95
+ logger.error({
96
+ label,
97
+ message: `Failed to access ${tracker} for ${candidate.name}`,
98
+ });
89
99
  logger.debug(`${candidate.name}: ${url}`);
90
100
  logger.debug(e);
91
101
  return resultOfErr(SnatchError.UNKNOWN_ERROR);
@@ -94,14 +104,20 @@ export async function snatch(candidate) {
94
104
  return resultOfErr(SnatchError.RATE_LIMITED);
95
105
  }
96
106
  else if (!response.ok) {
97
- logger.error(`Error downloading torrent from ${tracker} for ${candidate.name}: ${response.status} ${response.statusText}`);
107
+ logger.error({
108
+ label,
109
+ message: `Error downloading torrent from ${tracker} for ${candidate.name}: ${response.status} ${response.statusText}`,
110
+ });
98
111
  const responseText = await response.clone().text();
99
112
  logger.debug(`${candidate.name}: ${url} - Response: "${responseText.slice(0, 100)}${responseText.length > 100 ? "..." : ""}"`);
100
113
  return resultOfErr(SnatchError.UNKNOWN_ERROR);
101
114
  }
102
115
  else if (response.headers.get("Content-Type") === "application/rss+xml") {
103
116
  const responseText = await response.clone().text();
104
- logger.error(`Invalid torrent contents from ${tracker} for ${candidate.name}`);
117
+ logger.error({
118
+ label,
119
+ message: `Invalid torrent contents from ${tracker} for ${candidate.name}`,
120
+ });
105
121
  logger.debug(`${candidate.name}: ${url} - Contents: "${responseText.slice(0, 100)}${responseText.length > 100 ? "..." : ""}"`);
106
122
  return resultOfErr(SnatchError.INVALID_CONTENTS);
107
123
  }
@@ -109,7 +125,10 @@ export async function snatch(candidate) {
109
125
  return resultOf(Metafile.decode(Buffer.from(new Uint8Array(await response.arrayBuffer()))));
110
126
  }
111
127
  catch (e) {
112
- logger.error(`Invalid torrent contents from ${tracker} for ${candidate.name}`);
128
+ logger.error({
129
+ label,
130
+ message: `Invalid torrent contents from ${tracker} for ${candidate.name}`,
131
+ });
113
132
  const contentType = response.headers.get("Content-Type");
114
133
  const contentLength = response.headers.get("Content-Length");
115
134
  logger.debug(`${candidate.name}: ${url} - Content-Type: ${contentType} - Content-Length: ${contentLength}`);
@@ -147,60 +166,61 @@ export async function findAllTorrentFilesInDir(torrentDir) {
147
166
  .sort()
148
167
  .map((fn) => resolve(join(torrentDir, fn)));
149
168
  }
150
- export async function cacheEnsembleEntry(meta, torrentSavePaths) {
151
- const episodeKey = getEpisodeKey(stripExtension(meta.name));
169
+ export async function createEnsemblePieces(title, files) {
170
+ const episodeKey = getEpisodeKey(stripExtension(title));
152
171
  if (!episodeKey)
153
- return;
172
+ return null;
154
173
  const { keyTitle, season, episode } = episodeKey;
155
174
  const key = `${keyTitle}${season ? `.${season}` : ""}`;
156
175
  const element = episode;
157
- const largestFile = getLargestFile(meta.files);
158
- const entryExists = await memDB("ensemble")
159
- .select("id")
160
- .where({ ensemble: key, element, length: largestFile.length })
161
- .first();
162
- if (entryExists)
163
- return;
176
+ const largestFile = getLargestFile(files);
177
+ return { key, element, largestFile };
178
+ }
179
+ async function cacheEnsembleTorrentEntry(meta, torrentSavePaths) {
180
+ const ensemblePieces = await createEnsemblePieces(meta.title, meta.files);
181
+ if (!ensemblePieces)
182
+ return null;
183
+ const { key, element, largestFile } = ensemblePieces;
164
184
  let savePath;
165
185
  if (!torrentSavePaths) {
166
186
  const downloadDirResult = await getClient().getDownloadDir(meta, {
167
187
  onlyCompleted: false,
168
188
  });
169
189
  if (downloadDirResult.isErr())
170
- return;
190
+ return null;
171
191
  savePath = downloadDirResult.unwrap();
172
192
  }
173
193
  else {
174
194
  savePath = torrentSavePaths.get(meta.infoHash);
175
195
  }
176
196
  if (!savePath)
177
- return;
197
+ return null;
178
198
  // Don't want to statSync(sourceRoot).isFile() now as it might be downloading.
179
199
  // The path will get checked when rss/announce has a potential match.
180
200
  const sourceRoot = join(savePath, meta.files.length === 1 ? meta.files[0].path : meta.name);
181
- await memDB("ensemble")
182
- .insert({
201
+ return {
202
+ path: getAbsoluteFilePath(sourceRoot, largestFile.path, meta.files.length === 1),
183
203
  ensemble: key,
184
204
  element,
185
- name: largestFile.name,
186
- absolute_path: getAbsoluteFilePath(sourceRoot, largestFile.path, meta.files.length === 1),
187
- length: largestFile.length,
188
- })
189
- .onConflict("absolute_path")
190
- .ignore();
205
+ };
191
206
  }
192
- export async function indexNewTorrents() {
207
+ async function indexNewTorrents() {
193
208
  const { seasonFromEpisodes, torrentDir } = getRuntimeConfig();
194
209
  if (!torrentDir)
195
210
  return;
196
211
  const dirContents = new Set(await findAllTorrentFilesInDir(torrentDir));
197
212
  // Index new torrents in the torrentDir
213
+ let firstNewTorrent = true;
198
214
  for (const filepath of dirContents) {
199
215
  const doesAlreadyExist = await db("torrent")
200
216
  .select("id")
201
217
  .where({ file_path: filepath })
202
218
  .first();
203
219
  if (!doesAlreadyExist) {
220
+ if (firstNewTorrent) {
221
+ logger.verbose("Indexing torrentDir due to recent changes...");
222
+ firstNewTorrent = false;
223
+ }
204
224
  let meta;
205
225
  try {
206
226
  meta = await parseTorrentFromFilename(filepath);
@@ -221,37 +241,29 @@ export async function indexNewTorrents() {
221
241
  .onConflict("file_path")
222
242
  .ignore();
223
243
  if (seasonFromEpisodes) {
224
- cacheEnsembleEntry(meta);
244
+ await memDB("ensemble")
245
+ .insert(cacheEnsembleTorrentEntry(meta))
246
+ .onConflict("path")
247
+ .ignore();
225
248
  }
226
249
  }
227
250
  }
228
251
  const dbFiles = await db("torrent").select({ filePath: "file_path" });
229
252
  const dbFilePaths = dbFiles.map((row) => row.filePath);
230
253
  const filesToDelete = dbFilePaths.filter((filePath) => !dirContents.has(filePath));
231
- const batchSize = 1000;
254
+ const batchSize = 100;
232
255
  for (let i = 0; i < filesToDelete.length; i += batchSize) {
233
256
  const batch = filesToDelete.slice(i, i + batchSize);
257
+ if (!batch.length)
258
+ break;
234
259
  await db("torrent").whereIn("file_path", batch).del();
235
260
  }
236
261
  }
237
262
  export async function indexEnsemble() {
238
263
  const { seasonFromEpisodes, torrentDir } = getRuntimeConfig();
239
- if (!seasonFromEpisodes)
240
- return;
241
- if (!torrentDir)
264
+ if (!seasonFromEpisodes || !torrentDir)
242
265
  return;
243
- logger.info("Indexing torrents for ensemble lookup...");
244
- const tableExists = await memDB.schema.hasTable("ensemble");
245
- if (!tableExists) {
246
- await memDB.schema.createTable("ensemble", (table) => {
247
- table.increments("id").primary();
248
- table.string("ensemble");
249
- table.string("element");
250
- table.string("name");
251
- table.string("absolute_path").unique();
252
- table.integer("length");
253
- });
254
- }
266
+ logger.info("Indexing ensemble for reverse lookup...");
255
267
  const dirContents = await findAllTorrentFilesInDir(torrentDir);
256
268
  const metas = [];
257
269
  for (const filepath of dirContents) {
@@ -272,7 +284,23 @@ export async function indexEnsemble() {
272
284
  metas,
273
285
  onlyCompleted: false,
274
286
  });
275
- await Promise.allSettled(metas.map((meta) => cacheEnsembleEntry(meta, torrentSavePaths)));
287
+ const ensembleRows = (await Promise.allSettled(metas.map((meta) => cacheEnsembleTorrentEntry(meta, torrentSavePaths)))).reduce((acc, result) => {
288
+ if (result.status === "fulfilled" && result.value) {
289
+ acc.push(result.value);
290
+ }
291
+ return acc;
292
+ }, []);
293
+ const batchSize = 100;
294
+ for (let i = 0; i < ensembleRows.length; i += batchSize) {
295
+ const batch = ensembleRows.slice(i, i + batchSize);
296
+ if (!batch.length)
297
+ break;
298
+ await memDB("ensemble").insert(batch).onConflict("path").ignore();
299
+ }
300
+ }
301
+ export async function indexTorrentsAndDataDirs() {
302
+ await indexNewTorrents();
303
+ await indexDataDirs();
276
304
  }
277
305
  export async function getInfoHashesToExclude() {
278
306
  return new Set((await db("torrent").select({ infoHash: "info_hash" })).map((t) => t.infoHash));
@@ -319,43 +347,66 @@ function getKeysFromName(name) {
319
347
  }
320
348
  return { keyTitles: [], useFallback: true };
321
349
  }
322
- export async function getSimilarTorrentsByName(name) {
350
+ export async function getSimilarByName(name) {
351
+ const { torrentDir, dataDirs } = getRuntimeConfig();
323
352
  const { keyTitles, element, useFallback } = getKeysFromName(name);
324
353
  const metas = useFallback ? await getTorrentByFuzzyName(name) : [];
354
+ const dataSearchees = useFallback ? await getDataByFuzzyName(name) : [];
325
355
  if (!keyTitles.length) {
326
- return { keys: [], metas };
356
+ return { keys: [], metas, dataSearchees };
327
357
  }
328
358
  const candidateMaxDistance = Math.floor(Math.max(...keyTitles.map((keyTitle) => keyTitle.length)) /
329
359
  LEVENSHTEIN_DIVISOR);
330
- const allEntries = await db("torrent").select("name", "file_path");
331
- const filteredEntries = allEntries.filter((dbName) => {
332
- const entry = getKeysFromName(dbName.name);
333
- if (entry.element !== element)
334
- return false;
335
- if (!entry.keyTitles.length)
336
- return false;
337
- const maxDistance = Math.max(candidateMaxDistance, Math.floor(Math.max(...entry.keyTitles.map((keyTitle) => keyTitle.length)) / LEVENSHTEIN_DIVISOR));
338
- return entry.keyTitles.some((dbKeyTitle) => {
339
- return keyTitles.some((keyTitle) => distance(keyTitle, dbKeyTitle) <= maxDistance);
360
+ const filterEntries = async (dbEntries) => {
361
+ return dbEntries.filter((dbEntry) => {
362
+ const entry = getKeysFromName(dbEntry.name ?? dbEntry.title);
363
+ if (entry.element !== element)
364
+ return false;
365
+ if (!entry.keyTitles.length)
366
+ return false;
367
+ const maxDistance = Math.max(candidateMaxDistance, Math.floor(Math.max(...entry.keyTitles.map((keyTitle) => keyTitle.length)) / LEVENSHTEIN_DIVISOR));
368
+ return entry.keyTitles.some((dbKeyTitle) => {
369
+ return keyTitles.some((keyTitle) => distance(keyTitle, dbKeyTitle) <= maxDistance);
370
+ });
340
371
  });
372
+ };
373
+ const filteredTorrentEntries = (await filterEntries(torrentDir ? await db("torrent").select("name", "file_path") : []));
374
+ if (filteredTorrentEntries.length) {
375
+ const client = getClient();
376
+ const torrentInfos = client && client.type !== Label.QBITTORRENT
377
+ ? await client.getAllTorrents()
378
+ : [];
379
+ metas.push(...(await Promise.allSettled(filteredTorrentEntries.map(async (dbTorrent) => {
380
+ return parseTorrentWithMetadata(dbTorrent.file_path, torrentInfos);
381
+ })))
382
+ .filter((p) => p.status === "fulfilled")
383
+ .map((p) => p.value));
384
+ }
385
+ const entriesToDelete = [];
386
+ const filteredDataEntries = (await filterEntries(dataDirs ? await memDB("data") : [])).filter(({ path }) => {
387
+ if (!existsSync(path) ||
388
+ shouldIgnorePathHeuristically(path, statSync(path).isDirectory())) {
389
+ entriesToDelete.push(path);
390
+ return false;
391
+ }
392
+ return true;
341
393
  });
394
+ if (entriesToDelete.length > 0) {
395
+ await memDB("data").whereIn("path", entriesToDelete).del();
396
+ }
397
+ if (filteredDataEntries.length) {
398
+ dataSearchees.push(...(await Promise.all(filteredDataEntries.map(async (dbData) => {
399
+ return createSearcheeFromPath(dbData.path);
400
+ })))
401
+ .filter(isOk)
402
+ .map((r) => r.unwrap()));
403
+ }
342
404
  const keys = element
343
405
  ? keyTitles.map((keyTitle) => `${keyTitle}.${element}`)
344
406
  : keyTitles;
345
- if (!filteredEntries.length)
346
- return { keys, metas };
347
- const client = getClient();
348
- const torrentInfos = client && client.type !== Label.QBITTORRENT
349
- ? await client.getAllTorrents()
350
- : [];
351
- metas.push(...(await Promise.allSettled(filteredEntries.map(async (dbName) => {
352
- return parseTorrentWithMetadata(dbName.file_path, torrentInfos);
353
- })))
354
- .filter((r) => r.status === "fulfilled")
355
- .map((r) => r.value));
356
- return { keys, metas };
407
+ return { keys, metas, dataSearchees };
357
408
  }
358
- export async function getTorrentByFuzzyName(name) {
409
+ async function getTorrentByFuzzyName(name) {
359
410
  const allNames = await db("torrent").select("name", "file_path");
360
411
  const fullMatch = createKeyTitle(name);
361
412
  // Attempt to filter torrents in DB to match incoming torrent before fuzzy check
@@ -363,8 +414,6 @@ export async function getTorrentByFuzzyName(name) {
363
414
  if (fullMatch) {
364
415
  filteredNames = allNames.filter((dbName) => {
365
416
  const dbMatch = createKeyTitle(dbName.name);
366
- if (!dbMatch)
367
- return false;
368
417
  return fullMatch === dbMatch;
369
418
  });
370
419
  }
@@ -1 +1 @@
1
- {"version":3,"file":"torrent.js","sourceRoot":"","sources":["../src/torrent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"torrent.js","sourceRoot":"","sources":["../src/torrent.ts"],"names":[],"mappings":"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"}
package/dist/torznab.js CHANGED
@@ -387,8 +387,15 @@ async function fetchCaps(indexer) {
387
387
  }
388
388
  const responseText = await response.text();
389
389
  if (!response.ok) {
390
- const error = new Error(`Indexer ${indexer.url} responded with code ${response.status} when fetching caps, check verbose logs`);
391
- logger.error(error.message);
390
+ let error;
391
+ if (response.status === 429) {
392
+ error = new Error(`Indexer ${indexer.url} was rate limited when fetching caps`);
393
+ logger.warn(error.message);
394
+ }
395
+ else {
396
+ error = new Error(`Indexer ${indexer.url} responded with code ${response.status} when fetching caps, check verbose logs`);
397
+ logger.error(error.message);
398
+ }
392
399
  logger.debug(`Response body first 1000 characters: ${responseText.substring(0, 1000)}`);
393
400
  throw error;
394
401
  }
@@ -499,7 +506,10 @@ async function makeRequests(indexers, getQueriesForIndexer) {
499
506
  const outcomes = await Promise.allSettled(requests.map(makeRequest));
500
507
  const { rejected, fulfilled } = collateOutcomes(requests.map((request) => request.indexerId), outcomes);
501
508
  for (const [indexerId, reason] of rejected) {
502
- logger.warn(`Failed to reach ${indexers.find((i) => i.id === indexerId).url}`);
509
+ logger.warn({
510
+ label: Label.TORZNAB,
511
+ message: `Failed to reach ${indexers.find((i) => i.id === indexerId).url}`,
512
+ });
503
513
  logger.debug(reason);
504
514
  }
505
515
  return fulfilled.map(([indexerId, results]) => ({
@@ -1 +1 @@
1
- {"version":3,"file":"torznab.js","sourceRoot":"","sources":["../src/torznab.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"torznab.js","sourceRoot":"","sources":["../src/torznab.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cross-seed",
3
- "version": "6.6.0",
3
+ "version": "6.8.0",
4
4
  "description": "Fully-automatic cross-seeding with Torznab",
5
5
  "scripts": {
6
6
  "test": "vitest",