Merge branch 'development' into production

This commit is contained in:
Ilya Ig. Petrov 2017-09-15 19:44:27 +05:00
commit ccdebc87cf
5 changed files with 11 additions and 11 deletions

View File

@ -13,7 +13,7 @@ This repo contains:
3. ~~PAC-scripts performance analyses of scripts generated~~ (doesn't take parse time into account) 3. ~~PAC-scripts performance analyses of scripts generated~~ (doesn't take parse time into account)
4. Based on the research of step 3 [the final PAC-generator][pac-generator] was written as a Google App Script in JavaScript which is triggered every two hours to generate and publish PAC-script on Google Drive (don't use direct URL without extension, please, URL will be periodically changed to counter abuse). 4. Based on the research of step 3 [the final PAC-generator][pac-generator] was written as a Google App Script in JavaScript which is triggered every two hours to generate and publish PAC-script on Google Drive (don't use direct URL without extension, please, URL will be periodically changed to counter abuse).
[pac-generator]: https://script.google.com/d/1uKNRz6w-BbOef8bC9lsWpzYMJxczjFXfMKK8fq6nYTzyPcVxzjGB9ynb/edit?usp=sharing [pac-generator]: https://script.google.com/d/1RlqqfUmYNpEhekySfOqdzJ8L4eV1GsHYDjPD1DexxEW0RcGvuCSQlWa0/edit?usp=sharing
## Why I do This ## Why I do This
@ -29,9 +29,7 @@ I decided to write an anti-censorship extension for Chromium before they strike
## How it Works ## How it Works
0. PAC script is a JavaScript file, triggered on every URL request, which says browser which proxy to use if any for this particular URL. 0. PAC script is a JavaScript file, triggered on every URL request, which says browser which proxy to use if any for this particular URL.
1. The Chrome Extension sets PAC script in browser settings and keeps it synced with PAC script on the server (offering one on Google Drive, Antizapret or on Anticenz). 1. The Chrome Extension sets PAC script in browser settings and keeps it synced with PAC script on the server (offering Antizapret (hosted on a dedicated server) or Anticensority (hosted on GitHub + CloudFlare)).
2. On every request PAC script checks if host is blocked OR if it's IP is blocked using `switch(..) {..}` trie-like structure (Google Drive PAC script). 2. On every request PAC script checks if host is blocked or if its IP is blocked.
Antizapret PAC script checks for IPs only with `indexOf`. 3. If address is blocked PAC script returns proxy server to the browser, both Antizapret and Anticensority use Antizapret proxy servers.
Anticenz PAC script checks for hosts and IPs with `indexOf`, but lacks some IPs. 4. PAC scripts on servers are updated periodically from https://github.com/zapret-info/z-i.
3. If address is blocked PAC script returns proxy server to the browser: Antizapret, or Anticenz if the first one fails.
4. PAC scripts on servers are updated periodically from https://github.com/zapret-info/z-i

View File

@ -0,0 +1 @@
grep -r $@ ./src --exclude-dir=vendor --exclude-dir=node_modules

View File

@ -1 +0,0 @@
grep -r addEvent ./ --exclude-dir=vendor --exclude-dir=node_modules

View File

@ -540,9 +540,11 @@
// UPDATE & MIGRATION // UPDATE & MIGRATION
console.log('Updating from ', oldStorage.version, 'to', antiCensorRu.version); console.log('Updating from ', oldStorage.version, 'to', antiCensorRu.version);
const key = antiCensorRu._currentPacProviderKey; const key = antiCensorRu._currentPacProviderKey;
if (key !== null) { if (oldStorage.version === ' 0.0.1.2') {
if (key !== null && key !== 'onlyOwnSites') {
antiCensorRu._currentPacProviderKey = 'Антицензорити'; antiCensorRu._currentPacProviderKey = 'Антицензорити';
} }
}
antiCensorRu.pushToStorageAsync(() => { antiCensorRu.pushToStorageAsync(() => {

View File

@ -1,7 +1,7 @@
'use strict'; 'use strict';
const commonContext = { const commonContext = {
version: '1.3', version: '1.5',
anticensorityPacUrls: [ anticensorityPacUrls: [
// First official, shortened: // First official, shortened:
'https://rebrand.ly/ac-chrome-anticensority-pac', 'https://rebrand.ly/ac-chrome-anticensority-pac',