mirror of
https://github.com/SukkaW/Surge.git
synced 2025-12-13 17:50:34 +08:00
Perf: use tldts-experimental when possible
This commit is contained in:
parent
04465078b4
commit
1bf57f5515
@ -6,7 +6,7 @@ import * as tldts from 'tldts';
|
|||||||
import * as tldtsExperimental from 'tldts-experimental';
|
import * as tldtsExperimental from 'tldts-experimental';
|
||||||
|
|
||||||
(async () => {
|
(async () => {
|
||||||
const data = await Array.fromAsync(await fetchRemoteTextByLine('https://osint.digitalside.it/Threat-Intel/lists/latestdomains.txt', true));
|
const data = await Array.fromAsync(await fetchRemoteTextByLine('https://phishing.army/download/phishing_army_blocklist.txt', true));
|
||||||
|
|
||||||
const tldtsOpt: Parameters<typeof tldts.getDomain>[1] = {
|
const tldtsOpt: Parameters<typeof tldts.getDomain>[1] = {
|
||||||
allowPrivateDomains: false,
|
allowPrivateDomains: false,
|
||||||
@ -18,13 +18,13 @@ import * as tldtsExperimental from 'tldts-experimental';
|
|||||||
|
|
||||||
(['getDomain', 'getPublicSuffix', 'getSubdomain', 'parse'] as const).forEach(methodName => {
|
(['getDomain', 'getPublicSuffix', 'getSubdomain', 'parse'] as const).forEach(methodName => {
|
||||||
group(() => {
|
group(() => {
|
||||||
bench('tldts', () => {
|
bench('tldts - ' + methodName, () => {
|
||||||
for (let i = 0, len = data.length; i < len; i++) {
|
for (let i = 0, len = data.length; i < len; i++) {
|
||||||
tldts[methodName](data[i], tldtsOpt);
|
tldts[methodName](data[i], tldtsOpt);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
bench('tldts-experimental', () => {
|
bench('tldts-experimental - ' + methodName, () => {
|
||||||
for (let i = 0, len = data.length; i < len; i++) {
|
for (let i = 0, len = data.length; i < len; i++) {
|
||||||
tldtsExperimental[methodName](data[i], tldtsOpt);
|
tldtsExperimental[methodName](data[i], tldtsOpt);
|
||||||
}
|
}
|
||||||
@ -32,5 +32,5 @@ import * as tldtsExperimental from 'tldts-experimental';
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
run();
|
return run();
|
||||||
})();
|
})();
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
import { fetchRemoteTextByLine } from './lib/fetch-text-by-line';
|
import { fetchRemoteTextByLine } from './lib/fetch-text-by-line';
|
||||||
import tldts from 'tldts';
|
import tldts from 'tldts-experimental';
|
||||||
import { HostnameSmolTrie } from './lib/trie';
|
import { HostnameSmolTrie } from './lib/trie';
|
||||||
import path from 'node:path';
|
import path from 'node:path';
|
||||||
import { SOURCE_DIR } from './constants/dir';
|
import { SOURCE_DIR } from './constants/dir';
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
import path from 'node:path';
|
import path from 'node:path';
|
||||||
import { OUTPUT_SURGE_DIR } from './constants/dir';
|
import { OUTPUT_SURGE_DIR } from './constants/dir';
|
||||||
import tldts from 'tldts';
|
import tldts from 'tldts-experimental';
|
||||||
import { loosTldOptWithPrivateDomains } from './constants/loose-tldts-opt';
|
import { loosTldOptWithPrivateDomains } from './constants/loose-tldts-opt';
|
||||||
import runAgainstSourceFile from './lib/run-against-source-file';
|
import runAgainstSourceFile from './lib/run-against-source-file';
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user