diff --git a/Build/build-reject-domainset.ts b/Build/build-reject-domainset.ts index 2cf88ab7..54cbecf9 100644 --- a/Build/build-reject-domainset.ts +++ b/Build/build-reject-domainset.ts @@ -14,15 +14,11 @@ import { task } from './trace'; // tldts-experimental is way faster than tldts, but very little bit inaccurate // (since it is hashes based). But the result is still deterministic, which is // enough when creating a simple stat of reject hosts. -import * as tldts from 'tldts-experimental'; import { SHARED_DESCRIPTION } from './lib/constants'; import { getPhishingDomains } from './lib/get-phishing-domains'; -import { subtract as SetSubstract } from 'mnemonist/set'; import { setAddFromArray, setAddFromArrayCurried } from './lib/set-add-from-array'; import { sort } from './lib/timsort'; -import { looseTldtsOpt } from './constants/loose-tldts-opt'; -import { build } from 'bun'; const getRejectSukkaConfPromise = readFileIntoProcessedArray(path.resolve(import.meta.dir, '../Source/domainset/reject_sukka.conf')); diff --git a/Build/build-speedtest-domainset.ts b/Build/build-speedtest-domainset.ts index c0471638..ec511c30 100644 --- a/Build/build-speedtest-domainset.ts +++ b/Build/build-speedtest-domainset.ts @@ -14,7 +14,7 @@ import { processLine } from './lib/process-line'; import { TTL, deserializeArray, fsFetchCache, serializeArray } from './lib/cache-filesystem'; import { createMemoizedPromise } from './lib/memo-promise'; -import * as SetHelpers from 'mnemonist/set'; +import { setAddFromArrayCurried } from './lib/set-add-from-array'; const s = new Sema(2); @@ -83,11 +83,11 @@ const querySpeedtestApi = async (keyword: string): Promise> }; const getPreviousSpeedtestDomainsPromise = createMemoizedPromise(async () => { - const domains = new Set(); + const domains: string[] = []; for await (const l of await fetchRemoteTextByLine('https://ruleset.skk.moe/List/domainset/speedtest.conf')) { const line = processLine(l); if (line) { - domains.add(line); + domains.push(line); } } return domains; @@ -182,9 +182,11 @@ export const buildSpeedtestDomainSet = task(import.meta.path, async (span) => { 'mensura.cdn-apple.com' // From netQuality command ]); - await span.traceChildAsync('fetch previous speedtest domainset', async () => { - SetHelpers.add(domains, await getPreviousSpeedtestDomainsPromise()); - }); + await span.traceChildAsync( + 'fetch previous speedtest domainset', + () => getPreviousSpeedtestDomainsPromise() + .then(setAddFromArrayCurried(domains)) + ); await new Promise((resolve) => { const pMap = ([ diff --git a/Build/lib/parse-filter.ts b/Build/lib/parse-filter.ts index 4db3cd23..8bc2c6f2 100644 --- a/Build/lib/parse-filter.ts +++ b/Build/lib/parse-filter.ts @@ -8,7 +8,7 @@ import type { PublicSuffixList } from '@gorhill/publicsuffixlist'; import picocolors from 'picocolors'; import { normalizeDomain } from './normalize-domain'; import { fetchAssets } from './fetch-assets'; -import { deserializeArray, deserializeSet, fsFetchCache, serializeArray, serializeSet } from './cache-filesystem'; +import { deserializeArray, fsFetchCache, serializeArray } from './cache-filesystem'; import type { Span } from '../trace'; import createKeywordFilter from './aho-corasick'; diff --git a/bun.lockb b/bun.lockb index f3103a4e..d062f1f0 100755 Binary files a/bun.lockb and b/bun.lockb differ diff --git a/package.json b/package.json index 57459bc6..e51c3c69 100644 --- a/package.json +++ b/package.json @@ -21,25 +21,25 @@ "async-retry": "^1.3.3", "async-sema": "^3.1.1", "ci-info": "^4.0.0", - "csv-parse": "^5.5.5", + "csv-parse": "^5.5.6", "fast-cidr-tools": "^0.2.5", "mnemonist": "^0.39.8", - "path-scurry": "^1.10.2", - "picocolors": "^1.0.0", + "path-scurry": "^1.11.1", + "picocolors": "^1.0.1", "punycode": "^2.3.1", "table": "^6.8.2", "tar-stream": "^3.1.7", - "tldts": "^6.1.19", - "tldts-experimental": "^6.1.21" + "tldts": "^6.1.22", + "tldts-experimental": "^6.1.22" }, "devDependencies": { "@eslint-sukka/node": "6.0.0-beta.3", "@eslint-sukka/ts": "6.0.0-beta.3", "@types/async-retry": "^1.4.8", - "@types/bun": "^1.1.1", + "@types/bun": "^1.1.3", "@types/tar-stream": "^3.1.3", - "bun-types": "^1.1.7", - "eslint": "^9.2.0", + "bun-types": "^1.1.10", + "eslint": "^9.3.0", "eslint-config-sukka": "6.0.0-beta.3", "eslint-formatter-sukka": "6.0.0-beta.3", "mitata": "^0.1.11",