From 690f5fa2aaa19e1e34b3f6ec4dfa3a8ffe85660f Mon Sep 17 00:00:00 2001 From: SukkaW Date: Mon, 11 Sep 2023 00:58:58 +0800 Subject: [PATCH] Fix build --- Build/build-anti-bogus-domain.js | 16 +++++++++++++++- Build/lib/string-array-compare.js | 7 +++---- package.json | 3 ++- 3 files changed, 20 insertions(+), 6 deletions(-) diff --git a/Build/build-anti-bogus-domain.js b/Build/build-anti-bogus-domain.js index c108d096..368f9d68 100644 --- a/Build/build-anti-bogus-domain.js +++ b/Build/build-anti-bogus-domain.js @@ -5,6 +5,7 @@ const { compareAndWriteFile } = require('./lib/string-array-compare'); const { withBannerArray } = require('./lib/with-banner'); const { fetchRemoteTextAndCreateReadlineInterface, readFileByLine } = require('./lib/fetch-remote-text-by-line'); const { surgeRulesetToClashClassicalTextRuleset } = require('./lib/clash'); +const { processLine } = require('./lib/process-line'); (async () => { console.time('Total Time - build-anti-bogus-domain'); @@ -34,7 +35,10 @@ const { surgeRulesetToClashClassicalTextRuleset } = require('./lib/clash'); } }); } else { - result.push(line); + const l = processLine(line); + if (l) { + result.push(l); + } } } @@ -49,6 +53,16 @@ const { surgeRulesetToClashClassicalTextRuleset } = require('./lib/clash'); ' - https://github.com/felixonmars/dnsmasq-china-list' ]; + await compareAndWriteFile( + withBannerArray( + 'Sukka\'s Ruleset - Anti Bogus Domain', + description, + new Date(), + surgeRulesetToClashClassicalTextRuleset(result) + ), + path.resolve(__dirname, '../Clash/ip/reject.txt') + ); + await Promise.all([ compareAndWriteFile( withBannerArray( diff --git a/Build/lib/string-array-compare.js b/Build/lib/string-array-compare.js index e5c0209c..741d4700 100644 --- a/Build/lib/string-array-compare.js +++ b/Build/lib/string-array-compare.js @@ -10,7 +10,7 @@ const { readFileByLine } = require('./fetch-remote-text-by-line'); async function compareAndWriteFile(linesA, filePath) { await fse.ensureFile(filePath); - let isEqual = false; + let isEqual = true; let index = 0; for await (const lineB of readFileByLine(filePath)) { @@ -20,15 +20,14 @@ async function compareAndWriteFile(linesA, filePath) { if (lineA[0] === '#' && lineB[0] === '#') { continue; } + if (lineA !== lineB) { isEqual = false; break; - } else { - isEqual = true; } } - if (!isEqual) { + if (!isEqual || index !== linesA.length - 1) { await fsPromises.writeFile( filePath, linesA.join('\n'), diff --git a/package.json b/package.json index 90925889..dea48d6c 100644 --- a/package.json +++ b/package.json @@ -121,7 +121,8 @@ "build:apple-cdn", "build:phishing-domainset", "build:reject-domainset", - "build:cdn-conf" + "build:cdn-conf", + "build:common" ] }, "build": {