mirror of
https://github.com/gorhill/uBlock.git
synced 2026-03-11 09:04:36 +00:00
Fetch diff patches from "reliable" servers only
Some CDN servers take too long to mirror updated resources, potentially preventing diff-updating to work reliably as intended.
This commit is contained in:
parent
b5642ba602
commit
8b964a8c54
4 changed files with 69 additions and 2 deletions
|
|
@ -52,6 +52,10 @@
|
|||
"https://cdn.jsdelivr.net/gh/uBlockOrigin/uAssetsCDN@main/filters/filters.min.txt",
|
||||
"https://cdn.statically.io/gh/uBlockOrigin/uAssetsCDN/main/filters/filters.min.txt"
|
||||
],
|
||||
"patchURLs": [
|
||||
"https://ublockorigin.github.io/uAssetsCDN/filters/",
|
||||
"https://ublockorigin.pages.dev/filters/"
|
||||
],
|
||||
"supportURL": "https://github.com/uBlockOrigin/uAssets"
|
||||
},
|
||||
"ublock-badware": {
|
||||
|
|
@ -71,6 +75,10 @@
|
|||
"https://cdn.jsdelivr.net/gh/uBlockOrigin/uAssetsCDN@main/filters/badware.min.txt",
|
||||
"https://cdn.statically.io/gh/uBlockOrigin/uAssetsCDN/main/filters/badware.min.txt"
|
||||
],
|
||||
"patchURLs": [
|
||||
"https://ublockorigin.github.io/uAssetsCDN/filters/",
|
||||
"https://ublockorigin.pages.dev/filters/"
|
||||
],
|
||||
"supportURL": "https://github.com/uBlockOrigin/uAssets",
|
||||
"instructionURL": "https://github.com/gorhill/uBlock/wiki/Badware-risks"
|
||||
},
|
||||
|
|
@ -91,6 +99,10 @@
|
|||
"https://cdn.jsdelivr.net/gh/uBlockOrigin/uAssetsCDN@main/filters/privacy.min.txt",
|
||||
"https://cdn.statically.io/gh/uBlockOrigin/uAssetsCDN/main/filters/privacy.min.txt"
|
||||
],
|
||||
"patchURLs": [
|
||||
"https://ublockorigin.github.io/uAssetsCDN/filters/",
|
||||
"https://ublockorigin.pages.dev/filters/"
|
||||
],
|
||||
"supportURL": "https://github.com/uBlockOrigin/uAssets"
|
||||
},
|
||||
"ublock-unbreak": {
|
||||
|
|
@ -109,6 +121,10 @@
|
|||
"https://cdn.jsdelivr.net/gh/uBlockOrigin/uAssetsCDN@main/filters/unbreak.min.txt",
|
||||
"https://cdn.statically.io/gh/uBlockOrigin/uAssetsCDN/main/filters/unbreak.min.txt"
|
||||
],
|
||||
"patchURLs": [
|
||||
"https://ublockorigin.github.io/uAssetsCDN/filters/",
|
||||
"https://ublockorigin.pages.dev/filters/"
|
||||
],
|
||||
"supportURL": "https://github.com/uBlockOrigin/uAssets"
|
||||
},
|
||||
"ublock-quick-fixes": {
|
||||
|
|
@ -127,6 +143,10 @@
|
|||
"https://cdn.jsdelivr.net/gh/uBlockOrigin/uAssetsCDN@main/filters/quick-fixes.min.txt",
|
||||
"https://cdn.statically.io/gh/uBlockOrigin/uAssetsCDN/main/filters/quick-fixes.min.txt"
|
||||
],
|
||||
"patchURLs": [
|
||||
"https://ublockorigin.github.io/uAssetsCDN/filters/",
|
||||
"https://ublockorigin.pages.dev/filters/"
|
||||
],
|
||||
"supportURL": "https://github.com/uBlockOrigin/uAssets"
|
||||
},
|
||||
"adguard-generic": {
|
||||
|
|
@ -163,6 +183,10 @@
|
|||
"https://cdn.statically.io/gh/uBlockOrigin/uAssetsCDN/main/thirdparties/easylist.txt",
|
||||
"https://ublockorigin.pages.dev/thirdparties/easylist.txt"
|
||||
],
|
||||
"patchURLs": [
|
||||
"https://ublockorigin.github.io/uAssetsCDN/filters/",
|
||||
"https://ublockorigin.pages.dev/filters/"
|
||||
],
|
||||
"supportURL": "https://easylist.to/"
|
||||
},
|
||||
"adguard-spyware-url": {
|
||||
|
|
@ -212,6 +236,10 @@
|
|||
"https://cdn.statically.io/gh/uBlockOrigin/uAssetsCDN/main/thirdparties/easyprivacy.txt",
|
||||
"https://ublockorigin.pages.dev/thirdparties/easyprivacy.txt"
|
||||
],
|
||||
"patchURLs": [
|
||||
"https://ublockorigin.github.io/uAssetsCDN/filters/",
|
||||
"https://ublockorigin.pages.dev/filters/"
|
||||
],
|
||||
"supportURL": "https://easylist.to/"
|
||||
},
|
||||
"urlhaus-1": {
|
||||
|
|
@ -478,6 +506,10 @@
|
|||
"https://cdn.jsdelivr.net/gh/uBlockOrigin/uAssetsCDN@main/filters/annoyances.min.txt",
|
||||
"https://cdn.statically.io/gh/uBlockOrigin/uAssetsCDN/main/filters/annoyances.min.txt"
|
||||
],
|
||||
"patchURLs": [
|
||||
"https://ublockorigin.github.io/uAssetsCDN/filters/",
|
||||
"https://ublockorigin.pages.dev/filters/"
|
||||
],
|
||||
"supportURL": "https://github.com/uBlockOrigin/uAssets"
|
||||
},
|
||||
"dpollock-0": {
|
||||
|
|
|
|||
|
|
@ -52,6 +52,10 @@
|
|||
"https://cdn.jsdelivr.net/gh/uBlockOrigin/uAssetsCDN@main/filters/filters.min.txt",
|
||||
"https://cdn.statically.io/gh/uBlockOrigin/uAssetsCDN/main/filters/filters.min.txt"
|
||||
],
|
||||
"patchURLs": [
|
||||
"https://ublockorigin.github.io/uAssetsCDN/filters/",
|
||||
"https://ublockorigin.pages.dev/filters/"
|
||||
],
|
||||
"supportURL": "https://github.com/uBlockOrigin/uAssets"
|
||||
},
|
||||
"ublock-badware": {
|
||||
|
|
@ -71,6 +75,10 @@
|
|||
"https://cdn.jsdelivr.net/gh/uBlockOrigin/uAssetsCDN@main/filters/badware.min.txt",
|
||||
"https://cdn.statically.io/gh/uBlockOrigin/uAssetsCDN/main/filters/badware.min.txt"
|
||||
],
|
||||
"patchURLs": [
|
||||
"https://ublockorigin.github.io/uAssetsCDN/filters/",
|
||||
"https://ublockorigin.pages.dev/filters/"
|
||||
],
|
||||
"supportURL": "https://github.com/uBlockOrigin/uAssets",
|
||||
"instructionURL": "https://github.com/gorhill/uBlock/wiki/Badware-risks"
|
||||
},
|
||||
|
|
@ -91,6 +99,10 @@
|
|||
"https://cdn.jsdelivr.net/gh/uBlockOrigin/uAssetsCDN@main/filters/privacy.min.txt",
|
||||
"https://cdn.statically.io/gh/uBlockOrigin/uAssetsCDN/main/filters/privacy.min.txt"
|
||||
],
|
||||
"patchURLs": [
|
||||
"https://ublockorigin.github.io/uAssetsCDN/filters/",
|
||||
"https://ublockorigin.pages.dev/filters/"
|
||||
],
|
||||
"supportURL": "https://github.com/uBlockOrigin/uAssets"
|
||||
},
|
||||
"ublock-unbreak": {
|
||||
|
|
@ -109,6 +121,10 @@
|
|||
"https://cdn.jsdelivr.net/gh/uBlockOrigin/uAssetsCDN@main/filters/unbreak.min.txt",
|
||||
"https://cdn.statically.io/gh/uBlockOrigin/uAssetsCDN/main/filters/unbreak.min.txt"
|
||||
],
|
||||
"patchURLs": [
|
||||
"https://ublockorigin.github.io/uAssetsCDN/filters/",
|
||||
"https://ublockorigin.pages.dev/filters/"
|
||||
],
|
||||
"supportURL": "https://github.com/uBlockOrigin/uAssets"
|
||||
},
|
||||
"ublock-quick-fixes": {
|
||||
|
|
@ -127,6 +143,10 @@
|
|||
"https://cdn.jsdelivr.net/gh/uBlockOrigin/uAssetsCDN@main/filters/quick-fixes.min.txt",
|
||||
"https://cdn.statically.io/gh/uBlockOrigin/uAssetsCDN/main/filters/quick-fixes.min.txt"
|
||||
],
|
||||
"patchURLs": [
|
||||
"https://ublockorigin.github.io/uAssetsCDN/filters/",
|
||||
"https://ublockorigin.pages.dev/filters/"
|
||||
],
|
||||
"supportURL": "https://github.com/uBlockOrigin/uAssets"
|
||||
},
|
||||
"adguard-generic": {
|
||||
|
|
@ -163,6 +183,10 @@
|
|||
"https://cdn.statically.io/gh/uBlockOrigin/uAssetsCDN/main/thirdparties/easylist.txt",
|
||||
"https://ublockorigin.pages.dev/thirdparties/easylist.txt"
|
||||
],
|
||||
"patchURLs": [
|
||||
"https://ublockorigin.github.io/uAssetsCDN/filters/",
|
||||
"https://ublockorigin.pages.dev/filters/"
|
||||
],
|
||||
"supportURL": "https://easylist.to/"
|
||||
},
|
||||
"adguard-spyware-url": {
|
||||
|
|
@ -212,6 +236,10 @@
|
|||
"https://cdn.statically.io/gh/uBlockOrigin/uAssetsCDN/main/thirdparties/easyprivacy.txt",
|
||||
"https://ublockorigin.pages.dev/thirdparties/easyprivacy.txt"
|
||||
],
|
||||
"patchURLs": [
|
||||
"https://ublockorigin.github.io/uAssetsCDN/filters/",
|
||||
"https://ublockorigin.pages.dev/filters/"
|
||||
],
|
||||
"supportURL": "https://easylist.to/"
|
||||
},
|
||||
"urlhaus-1": {
|
||||
|
|
@ -478,6 +506,10 @@
|
|||
"https://cdn.jsdelivr.net/gh/uBlockOrigin/uAssetsCDN@main/filters/annoyances.min.txt",
|
||||
"https://cdn.statically.io/gh/uBlockOrigin/uAssetsCDN/main/filters/annoyances.min.txt"
|
||||
],
|
||||
"patchURLs": [
|
||||
"https://ublockorigin.github.io/uAssetsCDN/filters/",
|
||||
"https://ublockorigin.pages.dev/filters/"
|
||||
],
|
||||
"supportURL": "https://github.com/uBlockOrigin/uAssets"
|
||||
},
|
||||
"dpollock-0": {
|
||||
|
|
|
|||
|
|
@ -1214,6 +1214,9 @@ const getAssetDiffDetails = assetKey => {
|
|||
}
|
||||
if ( Array.isArray(out.cdnURLs) === false ) { return; }
|
||||
if ( out.cdnURLs.length === 0 ) { return; }
|
||||
if ( Array.isArray(assetEntry.patchURLs) ) {
|
||||
out.patchURLs = assetEntry.patchURLs.slice();
|
||||
}
|
||||
return out;
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -181,10 +181,10 @@ async function applyPatchAndValidate(assetDetails, diffDetails) {
|
|||
}
|
||||
|
||||
async function fetchPatchDetailsFromCDNs(assetDetails) {
|
||||
const { patchPath, cdnURLs } = assetDetails;
|
||||
const { patchPath, cdnURLs, patchURLs } = assetDetails;
|
||||
if ( Array.isArray(cdnURLs) === false ) { return null; }
|
||||
if ( cdnURLs.length === 0 ) { return null; }
|
||||
for ( const cdnURL of suffleArray(cdnURLs) ) {
|
||||
for ( const cdnURL of suffleArray(patchURLs || cdnURLs) ) {
|
||||
const patchURL = resolveURL(patchPath, cdnURL);
|
||||
if ( patchURL === undefined ) { continue; }
|
||||
const response = await fetch(patchURL).catch(reason => {
|
||||
|
|
|
|||
Loading…
Reference in a new issue