From b784b7d5693751844bdb6e7ec7bd30368b2598a8 Mon Sep 17 00:00:00 2001 From: Raymond Hill Date: Fri, 21 Feb 2020 08:06:52 -0500 Subject: [PATCH] Support loading of benchmark dataset in published versions New advanced setting: `benchmarkDatasetURL` Default value: `unset` To specify a URL from where the benchmark dataset will be fetched. This allows to launch benchmark operations from within published versions of uBO, rather than from just a locally built version. --- src/js/background.js | 1 + src/js/utils.js | 9 ++++++--- tools/make-assets.sh | 4 ---- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/js/background.js b/src/js/background.js index 7adc47963..91134e7c2 100644 --- a/src/js/background.js +++ b/src/js/background.js @@ -42,6 +42,7 @@ const µBlock = (( ) => { // jshint ignore:line autoUpdateAssetFetchPeriod: 120, autoUpdateDelayAfterLaunch: 180, autoUpdatePeriod: 7, + benchmarkDatasetURL: 'unset', blockingProfiles: '11111/#F00 11011/#C0F 11001/#00F 00001', cacheStorageAPI: 'unset', cacheStorageCompression: true, diff --git a/src/js/utils.js b/src/js/utils.js index 339af3a2e..7cd1eedae 100644 --- a/src/js/utils.js +++ b/src/js/utils.js @@ -684,15 +684,18 @@ vAPI.setTimeout(( ) => { ttlTimer = undefined; datasetPromise = undefined; - }, 60000); + }, 5 * 60 * 1000); if ( datasetPromise !== undefined ) { return datasetPromise; } + const datasetURL = µBlock.hiddenSettings.benchmarkDatasetURL; + if ( datasetURL === 'unset' ) { + return Promise.reject('No dataset'); + } console.info(`Loading benchmark dataset...`); - const url = vAPI.getURL('/assets/requests.json'); - datasetPromise = µBlock.assets.fetchText(url).then(details => { + datasetPromise = µBlock.assets.fetchText(datasetURL).then(details => { console.info(`Parsing benchmark dataset...`); const requests = []; const lineIter = new µBlock.LineIterator(details.content); diff --git a/tools/make-assets.sh b/tools/make-assets.sh index 2d06f3678..ecf0b9729 100755 --- a/tools/make-assets.sh +++ b/tools/make-assets.sh @@ -15,10 +15,6 @@ fi rm -rf $DES cp -R ./assets $DES/ -if [ -f ./tmp/requests.json.gz ]; then - gunzip -c ./tmp/requests.json.gz > $DES/requests.json -fi - mkdir $DES/thirdparties cp -R ../uAssets/thirdparties/easylist-downloads.adblockplus.org $DES/thirdparties/ cp -R ../uAssets/thirdparties/mirror1.malwaredomains.com $DES/thirdparties/