8
24
Fork
You've already forked nuMatrix
4

behind-the-scene inheritance #883

Closed
opened 2017年12月14日 00:40:49 +01:00 by dezhavu · 13 comments
dezhavu commented 2017年12月14日 00:40:49 +01:00 (Migrated from github.com)
Copy link

Is it possible to add an option for advanced users, so that behind-the-scene and other schemes (file-scheme, about-scheme, data-scheme etc) do NOT inherit from Global Scope (*), as for me I use Legacy uMatrix in unbranded build of FF 57 and it's very inconvenient to block those rules (or parse them thus increasing config file size for no reason)
A little option could be usefull in future.

Thanks for your work & time.

Is it possible to add an option for advanced users, so that behind-the-scene and other schemes (file-scheme, about-scheme, data-scheme etc) do NOT inherit from Global Scope (*), as for me I use Legacy uMatrix in unbranded build of FF 57 and it's very inconvenient to block those rules (or parse them thus increasing config file size for no reason) A little option could be usefull in future. Thanks for your work & time.
dezhavu commented 2017年12月14日 00:44:21 +01:00 (Migrated from github.com)
Copy link
<a href="http://www.imagebam.com/image/3f24bb687319453" target="_blank"><img src="http://thumbs2.imagebam.com/7e/ee/6f/3f24bb687319453.jpg" alt="imagebam.com"></a> <a href="http://www.imagebam.com/image/091777687319493" target="_blank"><img src="http://thumbs2.imagebam.com/f1/a8/1a/091777687319493.jpg" alt="imagebam.com"></a>
gorhill commented 2017年12月14日 01:16:06 +01:00 (Migrated from github.com)
Copy link

More generally, you propose the ability to isolate a scope from the parent one.

More generally, you propose the ability to isolate a scope from the parent one.
dezhavu commented 2017年12月14日 10:57:19 +01:00 (Migrated from github.com)
Copy link

As you could have noticed on the pictures attached, i use dynamic ruleset, so actually it's not a big deal to block those Global Scope domains for behind-the-scene, but the idea is that behind-the-scene should't inherit from Global Scope, IF there's a rule for that scheme:

For instance:

* * * block
* vimeo.com * allow
* vimeo.com frame allow
behind-the-scene * * block

Now vimeo.com doesn't care about behind-the-scene * * block, because it's allowed in Global Scope..
I saw numerous of samples like this in the logger, when requests from the webpage somehow appear in the behind-the-scene scheme, and if it inherits from global, omitting it's own scheme rules, thats no good for no good reason.

As you could have noticed on the pictures attached, i use dynamic ruleset, so actually it's not a big deal to block those Global Scope domains for behind-the-scene, but the idea is that behind-the-scene should't inherit from Global Scope, IF there's a rule for that scheme: For instance: ``` * * * block * vimeo.com * allow * vimeo.com frame allow behind-the-scene * * block ``` Now vimeo.com doesn't care about behind-the-scene * * block, because it's allowed in Global Scope.. I saw numerous of samples like this in the logger, when requests from the webpage somehow appear in the behind-the-scene scheme, and if it inherits from global, omitting it's own scheme rules, thats no good for no good reason.
dezhavu commented 2017年12月14日 11:08:15 +01:00 (Migrated from github.com)
Copy link

More generally, you propose the ability to isolate a scope from the parent one.

could be something like this if to look at it in more global, would be even more flexible, but keeping in mind of "no new feature request" didn't structure it like this, the idea is great though

>More generally, you propose the ability to isolate a scope from the parent one. could be something like this if to look at it in more global, would be even more flexible, but keeping in mind of "no new feature request" didn't structure it like this, the idea is great though
gorhill commented 2017年12月14日 12:44:08 +01:00 (Migrated from github.com)
Copy link
* * * block
behind-the-scene * * block

Using the all cell to decide whether a scope is isolated or not is an interesting idea -- I like it.

Currently the UI does not work for this though, as the all cell can toggle only between block and allow, so addressing this point would allow the proposal be implemented seamlessly in the core filtering code, the idea fits well with what is already in there.

* * * block behind-the-scene * * block Using the _all_ cell to decide whether a scope is isolated or not is an interesting idea -- I like it. Currently the UI does not work for this though, as the _all_ cell can toggle only between _block_ and _allow_, so addressing this point would allow the proposal be implemented seamlessly in the core filtering code, the idea fits well with what is already in there.
theWalkingDuck commented 2017年12月14日 14:51:34 +01:00 (Migrated from github.com)
Copy link

What about using matrix-off: behind-the-scene false instead of behind-the-scene * * block ?

What about using `matrix-off: behind-the-scene false` instead of `behind-the-scene * * block` ?
gorhill commented 2017年12月14日 15:15:40 +01:00 (Migrated from github.com)
Copy link

What about using matrix-off: behind-the-scene false instead of behind-the-scene * * block ?

He wants the ability to modify the way rules propagate on the z axis (from broader scopes to narrower ones), the matrix-off switch is to toggle on/off matrix filtering, I don't find this a good match for modifying z-propagation. The all cell however is a good choice, there currently is no such thing as scope * * inherit, this rule means nothing in uMatrix. So it is available for leverage -- the inherit action is already used in other cells to prevent looking up a rule from a broader scope, i.e. as a way to disable z-propagation -- something which he already uses, but he has to do it for every single allow rules added in the global scope, I can see the inconvenience.

> What about using `matrix-off: behind-the-scene false` instead of behind-the-scene * * block ? He wants the ability to modify the way rules propagate on the _z_ axis (from broader scopes to narrower ones), the `matrix-off` switch is to toggle on/off matrix filtering, I don't find this a good match for modifying z-propagation. The _all_ cell however is a good choice, there currently is no such thing as `scope * * inherit`, this rule means nothing in uMatrix. So it is available for leverage -- the _inherit_ action is already used in other cells to prevent looking up a rule from a broader scope, i.e. as a way to disable z-propagation -- something which he already uses, but he has to do it for every single _allow_ rules added in the global scope, I can see the inconvenience.
uBlock-user commented 2017年12月14日 22:13:59 +01:00 (Migrated from github.com)
Copy link

What about using matrix-off: behind-the-scene false instead of behind-the-scene * * block ?

Removing the matrix-off rule itself would block all behind the scenes requests unless you whitelist a cell.

> What about using matrix-off: behind-the-scene false instead of behind-the-scene * * block ? Removing the `matrix-off` rule itself would block all `behind the scenes` requests unless you whitelist a cell.
dezhavu commented 2017年12月14日 23:14:01 +01:00 (Migrated from github.com)
Copy link

Removing the matrix-off rule itself would block all behind the scenes requests unless you whitelist a cell.

Yep, it takes some time to get the whole thing, could be a bit complicated at first.

There's another issue that came up when I tried updating from 1.1.17rc0 (that was post rc0, about 4 commits after it, as far as i remember). Legacy doesn't work in FF5602, neither in FF57. Webextension works in both.

Console on install:

TypeError: vAPI.messaging.send is not a function[Learn More] popup.js:1462:9
	<anonymous> chrome://umatrix/content/js/popup.js:1462:9
	matrixSnapshotPoller< chrome://umatrix/content/js/popup.js:1441:6
	<anonymous> chrome://umatrix/content/js/popup.js:1358:29
	<anonymous> chrome://umatrix/content/js/popup.js:30:2

Dashboard available only by directly going to chrome://umatrix/content/dashboard.html
Logger available only by directly going to chrome://umatrix/content/logger-ui.html

Every option is clear inside, no checkboxes, no rules, no hosts files, even nothing in About (no version)
Console:

TypeError: vAPI.messaging.send is not a function[Learn More] about.js:133:5
	<anonymous> chrome://umatrix/content/js/about.js:133:5
	<anonymous> chrome://umatrix/content/js/about.js:122:2
TypeError: vAPI.messaging.send is not a function[Learn More] settings.js:154:1
	<anonymous> chrome://umatrix/content/js/settings.js:154:1
	<anonymous> chrome://umatrix/content/js/settings.js:28:2
TypeError: vAPI.messaging.addListener is not a function[Learn More] hosts-files.js:39:1
	<anonymous> chrome://umatrix/content/js/hosts-files.js:39:1
	<anonymous> chrome://umatrix/content/js/hosts-files.js:28:2
TypeError: vAPI.messaging.send is not a function[Learn More] cloud-ui.js:207:1
	<anonymous> chrome://umatrix/content/js/cloud-ui.js:207:1
	<anonymous> chrome://umatrix/content/js/cloud-ui.js:28:2
>Removing the matrix-off rule itself would block all behind the scenes requests unless you whitelist a cell. Yep, it takes some time to get the whole thing, could be a bit complicated at first. There's another issue that came up when I tried updating from 1.1.17rc0 (that was post rc0, about 4 commits after it, as far as i remember). Legacy doesn't work in FF5602, neither in FF57. Webextension works in both. Console on install: ``` TypeError: vAPI.messaging.send is not a function[Learn More] popup.js:1462:9 <anonymous> chrome://umatrix/content/js/popup.js:1462:9 matrixSnapshotPoller< chrome://umatrix/content/js/popup.js:1441:6 <anonymous> chrome://umatrix/content/js/popup.js:1358:29 <anonymous> chrome://umatrix/content/js/popup.js:30:2 ``` Dashboard available only by directly going to chrome://umatrix/content/dashboard.html Logger available only by directly going to chrome://umatrix/content/logger-ui.html Every option is clear inside, no checkboxes, no rules, no hosts files, even nothing in About (no version) Console: ``` TypeError: vAPI.messaging.send is not a function[Learn More] about.js:133:5 <anonymous> chrome://umatrix/content/js/about.js:133:5 <anonymous> chrome://umatrix/content/js/about.js:122:2 TypeError: vAPI.messaging.send is not a function[Learn More] settings.js:154:1 <anonymous> chrome://umatrix/content/js/settings.js:154:1 <anonymous> chrome://umatrix/content/js/settings.js:28:2 TypeError: vAPI.messaging.addListener is not a function[Learn More] hosts-files.js:39:1 <anonymous> chrome://umatrix/content/js/hosts-files.js:39:1 <anonymous> chrome://umatrix/content/js/hosts-files.js:28:2 TypeError: vAPI.messaging.send is not a function[Learn More] cloud-ui.js:207:1 <anonymous> chrome://umatrix/content/js/cloud-ui.js:207:1 <anonymous> chrome://umatrix/content/js/cloud-ui.js:28:2 ```
dezhavu commented 2017年12月14日 23:20:00 +01:00 (Migrated from github.com)
Copy link

imagebam.com

btw latest uBlock 1.14.22 Legacy works in both

<a href="http://www.imagebam.com/image/f71625688356843" target="_blank"><img src="http://thumbs2.imagebam.com/17/8a/ef/f71625688356843.jpg" alt="imagebam.com"></a> btw latest uBlock 1.14.22 Legacy works in both
gorhill commented 2017年12月14日 23:40:50 +01:00 (Migrated from github.com)
Copy link

uMatrix for Legacy Firefox is no longer maintained: see #824.

uMatrix for Legacy Firefox is no longer maintained: see #824.
dezhavu commented 2017年12月14日 23:57:00 +01:00 (Migrated from github.com)
Copy link

Yeah, well 1.1.17rc0 works at least.
Anyway, the subj remains in Logger as requests from webpage, so if you find time pls take a look at it, could be useful, as it happens when viewing saved pages too (file-scheme).

Thanks for your attention.

Yeah, well 1.1.17rc0 works at least. Anyway, the subj remains in Logger as requests from webpage, so if you find time pls take a look at it, could be useful, as it happens when viewing saved pages too (file-scheme). Thanks for your attention.
arek added this to the (deleted) project 2023年11月06日 21:56:44 +01:00
arek added this to the v1.0 milestone 2026年06月19日 10:23:34 +02:00
arek added this to the (deleted) project 2026年06月19日 10:25:42 +02:00
arek added this to the v1.0 project 2026年06月19日 10:29:27 +02:00

Implemented scope isolation toggle in the 3 dot dropdown menu.

Implemented scope isolation toggle in the 3 dot dropdown menu.
arek 2026年06月19日 11:27:46 +02:00
  • closed this issue
  • added the
    done
    label
This discussion has been locked. Commenting is limited to contributors.
No Branch/Tag specified
master
dev
v0.1.2
v0.1
0.0.0.8b
0.0.0.7b
0.0.0.5b
0.0.0.4b
0.0.0.3b
0.0.0.2b
0.0.0.1b
1.4.3b0
1.4.2
1.4.1b6
1.4.1b5
1.4.1b4
1.4.0
1.3.17b2
1.3.17b1
1.3.16
1.3.14
1.3.12
1.3.10
1.3.8
1.3.6
1.3.4
1.3.3b9
1.3.3b8
1.3.2
1.3.0
1.2.0
1.1.20
1.1.18
1.1.16
1.1.14
1.1.12
1.1.11b0
1.1.10
1.1.8
1.1.7rc0
1.1.7b0
1.1.6
1.1.4
1.1.0
1.0.0
0.9.3.6
0.9.3.4
0.9.3.3
0.9.3.2
0.9.3.1
0.9.3.0
0.9.2.1
0.9.2.0
0.9.1.2
0.9.1.1
0.9.1.0
0.9.0.1
0.9.0.0
0.8.1.4
0.8.1.3
0.8.1.1
0.8.1.0
0.8.0.1
0.8.0.0
0.8.0.0-rc.2
0.8.0.0-rc.1
0.8.0.0-rc.0
0.8.0.0-alpha.19
0.8.0.0-alpha.18
0.8.0.0-alpha.17
0.8.0.0-alpha.16
0.8.0.0-alpha.15
0.8.0.0-alpha.14
0.8.0.0-alpha.11
0.8.0.0-alpha.10
0.8.0.0-alpha.9
0.8.0.0-alpha.8
0.8.0.0-alpha.7
0.8.0.0-alpha.6
0.8.0.0-alpha.4
0.8.0.0-alpha.3
0.8.0.0-alpha.2
Milestone
Clear milestone
No items
No milestone
Projects
Clear projects
No items
No project
Assignees
Clear assignees
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
arek/nuMatrix#883
Reference in a new issue
arek/nuMatrix
No description provided.
Delete branch "%!s()"

Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?