From e420b75b91042903e4a30a6fabf37bc8460abbe4 Mon Sep 17 00:00:00 2001 From: Raymond Hill Date: Tue, 6 Sep 2022 15:05:01 -0400 Subject: [PATCH] Nodejs 16 does not support fetch() --- platform/mv3/make-rulesets.js | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/platform/mv3/make-rulesets.js b/platform/mv3/make-rulesets.js index cb4f66cbb..8635d062e 100644 --- a/platform/mv3/make-rulesets.js +++ b/platform/mv3/make-rulesets.js @@ -24,6 +24,7 @@ /******************************************************************************/ import fs from 'fs/promises'; +import https from 'https'; import process from 'process'; import rulesetConfigs from './ruleset-config.js'; @@ -110,9 +111,19 @@ async function main() { const rulesetDirPromise = fs.mkdir(`${rulesetDir}`, { recursive: true }); const fetchList = url => { - return fetch(url) - .then(response => response.text()) - .then(text => ({ name: url, text })); + return new Promise((resolve, reject) => { + https.get(url, response => { + const data = []; + response.on('data', chunk => { + data.push(chunk.toString()); + }); + response.on('end', ( ) => { + resolve({ name: url, text: data.join('') }); + }); + }).on('error', error => { + reject(error); + }); + }); }; const readList = path =>