Apparently importing a certificate into the NSS certificate DB is slow enough to
materially impact the time it takes to connect to a site. This patch addresses
this by importing any intermediate certificates we want to cache from verified
connections on a background thread (so the certificate verification thread can
return faster).
Differential Revision: https://phabricator.services.mozilla.com/D24384
--HG--
extra : moz-landing-system : lando
It is likely that the test is flaky because we resolve the same host with a different TRR endpoint and sometimes we use a cached record.
We should clear the DNS cache before each test to ensure that we're actually checking the right thing.
Differential Revision: https://phabricator.services.mozilla.com/D24355
--HG--
extra : moz-landing-system : lando
This patch do:
- Removing the directroy if the requesting client is the only client.
- Avoid unnecessary initialization for a client if it hasn't been initialized.
Differential Revision: https://phabricator.services.mozilla.com/D24371
--HG--
extra : moz-landing-system : lando
This patch adds two things:
1. An optional fixed_address argument to SharedMemoryBasic::Map, which
is the address to map the shared memory at.
2. A FindFreeAddressSpace function that callers can use to find a
contiguous block of free address space, which can then be used to
determine an address to pass in to Map that is likely to be free.
Patches in bug 1474793 will use these to place the User Agent style
sheets in a shared memory buffer in the parent process at an address
that is also likely to be free in content processes.
Differential Revision: https://phabricator.services.mozilla.com/D15057
--HG--
extra : moz-landing-system : lando
It's missing some details and is disabled by default (gated by the
`toolkit.telemetry.ecosystemping.enabled` preference)
Differential Revision: https://phabricator.services.mozilla.com/D21521
--HG--
extra : moz-landing-system : lando
Disabled the following for windows10-aarch64:
- test_getUserMedia_audioCapture
- test_AudioChange_mp4.html
- test_bug1255618.html
- test_singleSourceDest
- test_mediaElementAudioSourceNodeFidelity
- test_maxChannelCount
- test_abort
- test_audio_capture_error
- test_call_start_from_end_handler
- test_recognition_service_error
- test_success_without_recognition_service
- test_ExperimentalAsync
- test_peerConnection_restartIceNoBundle.html
All of these tests tend to fail on the first run of the push, then pass on the retry run.
Differential Revision: https://phabricator.services.mozilla.com/D24569
--HG--
extra : moz-landing-system : lando
This has no functional effect but makes it consistent with other similar
sites.
Depends on D24650
Differential Revision: https://phabricator.services.mozilla.com/D24651
--HG--
extra : moz-landing-system : lando
Replaced instances of callers in both C++ and JS files to query the state from the principal directly.
Differential Revision: https://phabricator.services.mozilla.com/D22532
--HG--
extra : moz-landing-system : lando
### Try
https://treeherder.mozilla.org/#/jobs?repo=try&revision=f1bad5e5282812225da95c0ea9e2ef173640b5da
### Summary
!!Comparing numerous complex websites such as github, facebook, cnn etc. the cascade now matchers that of Chrome so we are in a much better place.!!
According to https://www.w3.org/TR/css-cascade-3/#cascading (which platform follows now) and https://www.w3.org/TR/css-cascade-4/#cascading we should now be doing this (descending order):
- Transition declarations
- User-Agent & !important
- User & !important
- Author & !important
- CSS Animations, @keyframes
- Author, normal weight
- User, normal weight
- User-Agent, normal weight
- specificity
- Sheet Index
- Rule Line
- Rule Column
We are only dealing with CSS selectors here so we can safely drop Transition declarations and CSS Animations because their presence here is irrelevant when it comes to the CSS cascade information we display in the computed view.
This leaves us with:
- User-Agent & !important
- User & !important
- Author & !important
- Author, normal weight
- User, normal weight
- User-Agent, normal weight
- specificity
- Sheet Index
- Rule Line
- Rule Column
### Changes
- References to content stylesheets have been changed to author stylesheet to closely match the technical terms author, user and agent stylesheets.
- Simplified and modernized a bunch of for loops to make the code easier to understand.
- Previous to these changes all matching parent rules were classed as equal e.g. color on the body tag was equal to color on a node's immediate container. We now use the `distance` variable to tell how close a rule is to the current node. This is the highest qualifier in our cascade calculation.
- The `_agentSheet`, `_authorSheet` and `_userSheet` properties are now used to obtain a sheets origin.
- `elementStyle` was renamed to `inlineStyle` in order to correctly identify the rule's origin.
- We used to sort the matchedSelectors to move rules with `STATUS.MATCHED` above `STATUS.PARENT_MATCH` but this is unnecessary now that we have the `distance` property so we no longer do this.
- The `compareTo()` method has been updated to match https://www.w3.org/TR/css-cascade-3/#cascading (which platform follows now) and https://www.w3.org/TR/css-cascade-4/#cascading. It has also been simplified and made far less prone to error.
Differential Revision: https://phabricator.services.mozilla.com/D23711
--HG--
extra : moz-landing-system : lando
Having this OffThreadPromiseTask in place may also be useful one day if we want
to do any non-trivial instantiation-time codegen (say of Web IDL Bindings stubs...).
Differential Revision: https://phabricator.services.mozilla.com/D24243
--HG--
extra : rebase_source : 7a1dc29de10004e1d6c1f82ee48da3eb0321eb5f
This patch is also pure refactoring, replacing the N Rooted<GCVector>s with
one ImportValues struct that can be Rooted once and then passed around. This
reduces existing duplication and also simplifies the next patch.
Differential Revision: https://phabricator.services.mozilla.com/D24242
--HG--
extra : rebase_source : bd5397286ee0981486ffffdd4724c41811e3479a