Related issues:
- "Requests bypass uMatrix on Firefox start"
<https://github.com/uBlockOrigin/uMatrix-issues/issues/69>
Using same approach as with uBO:
https://github.com/gorhill/uBloc/commit/41548be6be35
`suspendTabsUntilReady` advanced setting added to "More" pane,
useful only for Chromium -- the blocking of early network
requests is enforced unconditionally on Firefox (because it
supports returning Promises from webRequest handlers).
- "Cookies leaking temporarily"
<https://github.com/uBlockOrigin/uMatrix-issues/issues/74>
Changes in the webRequest API in Chromium 72+ caused uMatrix
to fail to process `Cookie` and `Referer` headers on that
platform.
- us integer tab id -- do not stringify anymore
- improved the parsing of hosts files
- better handling of behind-the-scene network requests when a
context is provided by the webRequest API
- imported webextFlavor code from uBO
- converted instances of object-as-dict to Map()
The end result of the flawed UA spoofer was to accomplish the
OPPOSITE of the intended goal. UA spoofing for privacy purpose
turns out to be a whole complicated task on its own, and is
best undertaken as a separate dedicated extension -- assuming
it is possible at all.
In any case, this had no place in a "Privacy" section in uMatrix,
this was a bad idea to create this feature in the first place. It's
never too late to correct a bad idea, and this is the purpose of
this commit.