Skip to content

Commit

Permalink
Support loading of benchmark dataset in published versions
Browse files Browse the repository at this point in the history
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.
  • Loading branch information
gorhill committed Feb 21, 2020
1 parent 4f75a07 commit b784b7d
Show file tree
Hide file tree
Showing 3 changed files with 7 additions and 7 deletions.
1 change: 1 addition & 0 deletions src/js/background.js
Original file line number Diff line number Diff line change
Expand Up @@ -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,
Expand Down
9 changes: 6 additions & 3 deletions src/js/utils.js
Original file line number Diff line number Diff line change
Expand Up @@ -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);
Expand Down
4 changes: 0 additions & 4 deletions tools/make-assets.sh
Original file line number Diff line number Diff line change
Expand Up @@ -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/
Expand Down

0 comments on commit b784b7d

Please sign in to comment.