mirror of
https://gitlab.com/KevinRoebert/ClearUrls
synced 2025-12-16 14:15:36 +07:00
Merge branch 'master' into poeditor
This commit is contained in:
@@ -14,9 +14,9 @@ possible. Thank you!
|
|||||||
<!--
|
<!--
|
||||||
You do not have to reinstall Firefox or disable all addons. You can just create a new profile that only has ClearURLs installed and where no settings are changed. Instructions can be found here: https://support.mozilla.org/en-US/kb/profile-manager-create-and-remove-firefox-profiles
|
You do not have to reinstall Firefox or disable all addons. You can just create a new profile that only has ClearURLs installed and where no settings are changed. Instructions can be found here: https://support.mozilla.org/en-US/kb/profile-manager-create-and-remove-firefox-profiles
|
||||||
-->
|
-->
|
||||||
* [ ] Can you reproduce the problem in a **fresh** firefox profile with **only** ClearURLs?
|
* [ ] Can you reproduce the problem in a **fresh** Firefox profile with **only** ClearURLs?
|
||||||
* [ ] Are you running the latest version of ClearURLs?
|
* [ ] Are you running the latest version of ClearURLs?
|
||||||
* [ ] Are you have changed settings under `about:config`?
|
* [ ] Have you changed settings under `about:config`?
|
||||||
|
|
||||||
### Description
|
### Description
|
||||||
|
|
||||||
@@ -33,10 +33,10 @@ You do not have to reinstall Firefox or disable all addons. You can just create
|
|||||||
**Actual behavior:** [What actually happened]
|
**Actual behavior:** [What actually happened]
|
||||||
|
|
||||||
### System
|
### System
|
||||||
* **Version**: [compulsory. you must provide your version]
|
* **Version**: [compulsory. You must provide your version]
|
||||||
* **Platform**: [either `uname -a` output, or if Windows, version and 32-bit or
|
* **Platform**: [either `uname -a` output, or if Windows, version and 32-bit or
|
||||||
64-bit]
|
64-bit]
|
||||||
* **Country**: [The country from which you called the page. You can found your country here: https://ipapi.co//country_capital]
|
* **Country**: [The country from which you called the page. You can find your country here: https://ipapi.co//country_capital]
|
||||||
|
|
||||||
### Log
|
### Log
|
||||||
<!-- Please enable the log functionality of ClearURLs and attach the exported log to this bug report. -->
|
<!-- Please enable the log functionality of ClearURLs and attach the exported log to this bug report. -->
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
ClearURLs protects and respects your privacy.
|
ClearURLs protects and respects your privacy.
|
||||||
We do not collect any of your usage data. Furthermore ClearURLs has no home server nor embed any kind of analytic hooks in its code.
|
We do not collect any of your usage data. Furthermore, ClearURLs has no home server nor embed any kind of analytic hooks in its code.
|
||||||
|
|
||||||
The only time ClearURLs connects to a remote server (gitlab.io) is to update the rules file and the associated hash file. You can replace the default update address with your own address at any time in the settings.
|
The only time ClearURLs connects to a remote server (gitlab.io or github.io) is to update the rules file and the associated hash file. You can replace the default update address (_rules1.clearurls.xyz_/_rules2.clearurls.xyz_) with your address at any time in the settings.
|
||||||
|
|
||||||
The project and the rule file is currently hosted on gitlab.com, which is owned by GitLab Inc. and thus is unrelated to ClearURLs.
|
The project and the rule file are currently hosted on gitlab.com and github.com, which is owned by GitLab Inc. and GitHub Inc. Thus they are unrelated to ClearURLs. The _rules1.clearurls.xyz_ and _rules2.clearurls.xyz_ addresses are just CNAME records and thus we got no information about the request.
|
||||||
|
|||||||
@@ -2,14 +2,14 @@
|
|||||||
<a href="https://liberapay.com/kroeb" target="_blank"><img src="https://raw.githubusercontent.com/KevinRoebert/DonateButtons/master/LiberaPay.png" alt="Buy Me A Coffee" height="55"></a>
|
<a href="https://liberapay.com/kroeb" target="_blank"><img src="https://raw.githubusercontent.com/KevinRoebert/DonateButtons/master/LiberaPay.png" alt="Buy Me A Coffee" height="55"></a>
|
||||||
<a href="https://www.buymeacoffee.com/KevinRoebert" target="_blank"><img src="https://raw.githubusercontent.com/KevinRoebert/DonateButtons/master/BuyMeACoffee.png" alt="Buy Me A Coffee" height="55"></a>
|
<a href="https://www.buymeacoffee.com/KevinRoebert" target="_blank"><img src="https://raw.githubusercontent.com/KevinRoebert/DonateButtons/master/BuyMeACoffee.png" alt="Buy Me A Coffee" height="55"></a>
|
||||||
|
|
||||||
[<img src="https://blog.mozilla.org/addons/files/2020/04/get-the-addon-fx-apr-2020.svg" alt="for Firefox" height="60px">](https://addons.mozilla.org/firefox/addon/clearurls/) [<img src="https://gitlab.com/KevinRoebert/ClearUrls/-/raw/master/promotion/MEA-button.png" alt="for Edge" height="60px">](https://microsoftedge.microsoft.com/addons/detail/mdkdmaickkfdekbjdoojfalpbkgaddei) [<img src="https://developer.chrome.com/webstore/images/ChromeWebStore_BadgeWBorder_v2_206x58.png" alt="for Chrome" height="60px">](https://chrome.google.com/webstore/detail/clearurls/lckanjgmijmafbedllaakclkaicjfmnk)
|
[<img src="https://blog.mozilla.org/addons/files/2020/04/get-the-addon-fx-apr-2020.svg" alt="for Firefox" height="60px">](https://addons.mozilla.org/firefox/addon/clearurls/) [<img src="https://gitlab.com/KevinRoebert/ClearUrls/-/raw/master/promotion/MEA-button.png" alt="for Edge" height="60px">](https://microsoftedge.microsoft.com/addons/detail/mdkdmaickkfdekbjdoojfalpbkgaddei) [<img src="https://storage.googleapis.com/chrome-gcs-uploader.appspot.com/image/WlD8wC6g8khYWPJUsQceQkhXSlv1/HRs9MPufa1J1h5glNhut.png" alt="for Chrome" height="60px">](https://chrome.google.com/webstore/detail/clearurls/lckanjgmijmafbedllaakclkaicjfmnk)
|
||||||
|
|
||||||
# <sub><img src="https://gitlab.com/KevinRoebert/ClearUrls/raw/master/img/clearurls.svg" width="64px" height="64px"></sub> ClearURLs [](https://gitter.im/ClearURLs/ClearURLs)
|
# <sub><img src="https://gitlab.com/KevinRoebert/ClearUrls/raw/master/img/clearurls.svg" width="64px" height="64px"></sub> ClearURLs [](https://gitter.im/ClearURLs/ClearURLs)
|
||||||
|
|
||||||
**ClearURLs** is an add-on based on the new WebExtensions technology and is optimized for *Firefox* and *Chrome* based browsers.
|
**ClearURLs** is an add-on based on the new WebExtensions technology and is optimized for *Firefox* and *Chrome* based browsers.
|
||||||
|
|
||||||
This extension will automatically remove tracking elements from URLs to help protect your privacy when browse through the Internet,
|
This extension will automatically remove tracking elements from URLs to help protect your privacy when browse through the Internet,
|
||||||
which is regularly updated by us and can be found [here](https://gitlab.com/KevinRoebert/ClearUrls/raw/master/data/data.min.json).
|
which is regularly updated by us and can be found [here](https://gitlab.com/anti-tracking/ClearURLs/rules/-/raw/master/data.min.json).
|
||||||
|
|
||||||
## Application
|
## Application
|
||||||
Many websites use tracking elements in the URL (e.g. `https://example.com?utm_source=newsletter1&utm_medium=email&utm_campaign=sale`) to mark your online activity.
|
Many websites use tracking elements in the URL (e.g. `https://example.com?utm_source=newsletter1&utm_medium=email&utm_campaign=sale`) to mark your online activity.
|
||||||
@@ -66,7 +66,7 @@ It is not necessary to translate the description field; in the most cases it is
|
|||||||
#### Merge request
|
#### Merge request
|
||||||
If you want to create a merge request, you must open the path [`_locales/en/messages.json`](https://github.com/KevinRoebert/ClearUrls/blob/master/_locales/en/messages.json) in the ClearURLs repo
|
If you want to create a merge request, you must open the path [`_locales/en/messages.json`](https://github.com/KevinRoebert/ClearUrls/blob/master/_locales/en/messages.json) in the ClearURLs repo
|
||||||
and translate the english terms into terms of your language. Once you have translated all the terms, you make a pull request of your translation.
|
and translate the english terms into terms of your language. Once you have translated all the terms, you make a pull request of your translation.
|
||||||
Please push your translation into the folder `_locales/{country code}/messages.json`.
|
Please push your translation into the folder `_locales/{language code}/messages.json`.
|
||||||
|
|
||||||
#### POEditor
|
#### POEditor
|
||||||
[<img src="https://poeditor.com/public/images/logo/logo.svg" alt="https://poeditor.com/join/project/vKTpQWWvk2" width="150">](https://poeditor.com/join/project/vKTpQWWvk2)
|
[<img src="https://poeditor.com/public/images/logo/logo.svg" alt="https://poeditor.com/join/project/vKTpQWWvk2" width="150">](https://poeditor.com/join/project/vKTpQWWvk2)
|
||||||
@@ -82,6 +82,7 @@ Please push your translation into the folder `_locales/{country code}/messages.j
|
|||||||
* [ghacks-user.js](https://github.com/ghacksuserjs/ghacks-user.js/wiki/4.1-Extensions)
|
* [ghacks-user.js](https://github.com/ghacksuserjs/ghacks-user.js/wiki/4.1-Extensions)
|
||||||
* [Awesome Humane Tech List](https://github.com/humanetech-community/awesome-humane-tech#tracking)
|
* [Awesome Humane Tech List](https://github.com/humanetech-community/awesome-humane-tech#tracking)
|
||||||
* [PrivacyTools](https://www.privacytools.io/browsers/#addons)
|
* [PrivacyTools](https://www.privacytools.io/browsers/#addons)
|
||||||
|
* [New York Times Wirecutter](https://www.nytimes.com/wirecutter/reviews/our-favorite-ad-blockers-and-browser-extensions-to-protect-privacy/#cleaner-links-clearurls)
|
||||||
* ClearURLs is part of Mozilla's recommended extensions program
|
* ClearURLs is part of Mozilla's recommended extensions program
|
||||||
|
|
||||||
## Permissions
|
## Permissions
|
||||||
|
|||||||
48
clearurls.js
48
clearurls.js
@@ -1,20 +1,20 @@
|
|||||||
/*
|
/*
|
||||||
* ClearURLs
|
* ClearURLs
|
||||||
* Copyright (c) 2017-2020 Kevin Röbert
|
* Copyright (c) 2017-2021 Kevin Röbert
|
||||||
*
|
*
|
||||||
* This program is free software: you can redistribute it and/or modify
|
* This program is free software: you can redistribute it and/or modify
|
||||||
* it under the terms of the GNU Lesser General Public License as published by
|
* it under the terms of the GNU Lesser General Public License as published by
|
||||||
* the Free Software Foundation, either version 3 of the License, or
|
* the Free Software Foundation, either version 3 of the License, or
|
||||||
* (at your option) any later version.
|
* (at your option) any later version.
|
||||||
*
|
*
|
||||||
* This program is distributed in the hope that it will be useful,
|
* This program is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
* GNU Lesser General Public License for more details.
|
* GNU Lesser General Public License for more details.
|
||||||
*
|
*
|
||||||
* You should have received a copy of the GNU Lesser General Public License
|
* You should have received a copy of the GNU Lesser General Public License
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/*jshint esversion: 6 */
|
/*jshint esversion: 6 */
|
||||||
/*
|
/*
|
||||||
@@ -52,7 +52,7 @@ function removeFieldsFormURL(provider, pureUrl, quiet = false, request = null) {
|
|||||||
"changes": false,
|
"changes": false,
|
||||||
"url": url,
|
"url": url,
|
||||||
"cancel": false
|
"cancel": false
|
||||||
};
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@@ -93,12 +93,12 @@ function removeFieldsFormURL(provider, pureUrl, quiet = false, request = null) {
|
|||||||
pushToLog(pureUrl, url, translate('log_redirect'));
|
pushToLog(pureUrl, url, translate('log_redirect'));
|
||||||
increaseGlobalURLCounter(1);
|
increaseGlobalURLCounter(1);
|
||||||
increaseBadged(false, request)
|
increaseBadged(false, request)
|
||||||
};
|
}
|
||||||
|
|
||||||
return {
|
return {
|
||||||
"redirect": true,
|
"redirect": true,
|
||||||
"url": url
|
"url": url
|
||||||
};
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (existsFields(url)) {
|
if (existsFields(url)) {
|
||||||
@@ -157,7 +157,7 @@ function removeFieldsFormURL(provider, pureUrl, quiet = false, request = null) {
|
|||||||
"changes": changes,
|
"changes": changes,
|
||||||
"url": url,
|
"url": url,
|
||||||
"cancel": cancel
|
"cancel": cancel
|
||||||
};
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function start() {
|
function start() {
|
||||||
@@ -255,7 +255,7 @@ function start() {
|
|||||||
return {
|
return {
|
||||||
hash: (await response.text()).trim(),
|
hash: (await response.text()).trim(),
|
||||||
status: response.status
|
status: response.status
|
||||||
};
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
response.then(result => {
|
response.then(result => {
|
||||||
@@ -290,7 +290,7 @@ function start() {
|
|||||||
data: (await response.clone().text()).trim(),
|
data: (await response.clone().text()).trim(),
|
||||||
hash: await sha256((await response.text()).trim()),
|
hash: await sha256((await response.text()).trim()),
|
||||||
status: response.status
|
status: response.status
|
||||||
};
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
response.then(result => {
|
response.then(result => {
|
||||||
@@ -468,7 +468,7 @@ function start() {
|
|||||||
* @param {boolean} isActive Is this rule active?
|
* @param {boolean} isActive Is this rule active?
|
||||||
*/
|
*/
|
||||||
this.addReferralMarketing = function (rule, isActive = true) {
|
this.addReferralMarketing = function (rule, isActive = true) {
|
||||||
rule = "([\\/\\?#]|(&|&))+(" + rule + "=[^\\/\\?&]*)";
|
rule = "([\\/\\?#]|(&|&))+(" + rule + "=[^&]*)";
|
||||||
|
|
||||||
this.applyRule(enabled_referralMarketing, disabled_referralMarketing, rule, isActive);
|
this.applyRule(enabled_referralMarketing, disabled_referralMarketing, rule, isActive);
|
||||||
};
|
};
|
||||||
@@ -478,7 +478,7 @@ function start() {
|
|||||||
* and replace old with new exception.
|
* and replace old with new exception.
|
||||||
*
|
*
|
||||||
* @param {String} exception RegExp as string
|
* @param {String} exception RegExp as string
|
||||||
* @param {Boolean} isActive Is this exception acitve?
|
* @param {Boolean} isActive Is this exception active?
|
||||||
*/
|
*/
|
||||||
this.addException = function (exception, isActive = true) {
|
this.addException = function (exception, isActive = true) {
|
||||||
if (isActive) {
|
if (isActive) {
|
||||||
|
|||||||
2
data
2
data
Submodule data updated: d7915c2b8a...7a180c3dbd
@@ -44,7 +44,6 @@
|
|||||||
"storage",
|
"storage",
|
||||||
"unlimitedStorage",
|
"unlimitedStorage",
|
||||||
"contextMenus",
|
"contextMenus",
|
||||||
"clipboardWrite",
|
|
||||||
"webNavigation",
|
"webNavigation",
|
||||||
"tabs",
|
"tabs",
|
||||||
"downloads"
|
"downloads"
|
||||||
|
|||||||
Reference in New Issue
Block a user