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.
This commit is contained in:
Raymond Hill 2020-02-21 08:06:52 -05:00
parent 4f75a07b9c
commit b784b7d569
No known key found for this signature in database
GPG Key ID: 25E1490B761470C2
3 changed files with 7 additions and 7 deletions

View File

@ -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,

View File

@ -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);

View File

@ -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/