diff --git a/Build/build-chn-cidr.js b/Build/build-chn-cidr.js index b9fdbc0e..dfa0d542 100644 --- a/Build/build-chn-cidr.js +++ b/Build/build-chn-cidr.js @@ -1,3 +1,4 @@ +// @ts-check const { fetchRemoteTextAndCreateReadlineInterface } = require('./lib/fetch-remote-text-by-line'); const { withBannerArray } = require('./lib/with-banner'); const { resolve: pathResolve } = require('path'); @@ -6,7 +7,8 @@ const { processLine } = require('./lib/process-line'); (async () => { console.time('Total Time - build-chnroutes-cidr'); - const { merge: mergeCidrs } = await import('cidr-tools'); + // eslint-disable-next-line node/no-unsupported-features/es-syntax -- fuck + const { merge: mergeCidrs } = await import('cidr-tools-wasm'); /** @type {Set} */ const cidr = new Set(); @@ -18,7 +20,7 @@ const { processLine } = require('./lib/process-line'); } console.log('Before Merge:', cidr.size); - const filteredCidr = mergeCidrs(Array.from(cidr)); + const filteredCidr = mergeCidrs(Array.from(cidr)).sort(); console.log('After Merge:', filteredCidr.length); await compareAndWriteFile( diff --git a/package.json b/package.json index 224fb9d8..df0cd4e7 100644 --- a/package.json +++ b/package.json @@ -115,7 +115,7 @@ "@sukka/listdir": "^0.2.0", "@vercel/fetch-retry": "^5.1.3", "ci-info": "^3.8.0", - "cidr-tools": "^6.4.1", + "cidr-tools-wasm": "^0.0.7", "fs-extra": "^11.1.1", "picocolors": "^1.0.0", "piscina": "^4.0.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 1cc2a6c9..c4dbe411 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -22,9 +22,9 @@ dependencies: ci-info: specifier: ^3.8.0 version: 3.8.0 - cidr-tools: - specifier: ^6.4.1 - version: 6.4.1 + cidr-tools-wasm: + specifier: ^0.0.7 + version: 0.0.7 fs-extra: specifier: ^11.1.1 version: 11.1.1 @@ -444,21 +444,8 @@ packages: engines: {node: '>=8'} dev: false - /cidr-regex@4.0.3: - resolution: {integrity: sha512-HOwDIy/rhKeMf6uOzxtv7FAbrz8zPjmVKfSpM+U7/bNBXC5rtOyr758jxcptiSx6ZZn5LOhPJT5WWxPAGDV8dw==} - engines: {node: '>=14'} - dependencies: - ip-regex: 5.0.0 - dev: false - - /cidr-tools@6.4.1: - resolution: {integrity: sha512-s8JNDwWgc2e0roEF6KDkQfHkZgEnehoap5hK7swPlEQMb9f8msrWqpgVCVKiDm3ARxpesOru9Tu49N8UpJjmDA==} - engines: {node: '>=16'} - dependencies: - cidr-regex: 4.0.3 - ip-bigint: 7.2.1 - ip-regex: 5.0.0 - string-natural-compare: 3.0.1 + /cidr-tools-wasm@0.0.7: + resolution: {integrity: sha512-3pxBac4rB6Aoj/CkS0DfQlnNskH1Dq7YNtcxkPjiroLFVJ3TQT680VZ5HRrmigVlwK8ntS3ZNQMQDsI3q7JQ4A==} dev: false /cliui@7.0.4: @@ -989,16 +976,6 @@ packages: resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} dev: true - /ip-bigint@7.2.1: - resolution: {integrity: sha512-AftDIrlM5ZQM+qQ31IQ5MsL3tJWleeN3r0VqhmkB9oLvwcaDLeLNPtX4d9hahzExTFtz69eRv6LsGAoH20/8/g==} - engines: {node: '>=16'} - dev: false - - /ip-regex@5.0.0: - resolution: {integrity: sha512-fOCG6lhoKKakwv+C6KdsOnGvgXnmgfmp0myi3bcNwj3qfwPAxRKWEuFhvEFF7ceYIz6+1jRZ+yguLFAmUNPEfw==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - dev: false - /is-binary-path@2.1.0: resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} engines: {node: '>=8'} @@ -1495,10 +1472,6 @@ packages: engines: {node: '>=10.0.0'} dev: false - /string-natural-compare@3.0.1: - resolution: {integrity: sha512-n3sPwynL1nwKi3WJ6AIsClwBMa0zTi54fn2oLU6ndfTSIO05xaznjSf15PcBZU6FNWbmN5Q6cxT4V5hGvB4taw==} - dev: false - /string-width@4.2.3: resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} engines: {node: '>=8'}