Граф коммитов

9597 Коммитов

Автор SHA1 Сообщение Дата
Manuel Bucher b01d289292 Bug 1753730 - Add EarlyHintPreloader to load 103 Early Hint responses into the cache r=necko-reviewers,ckerschb,dragana,kershaw
Currently only same origin requests are preloaded and preloads in the
secure context. This may change in the future to match W3C decisions and
Chromes behavior.

Also only images get preloaded. This will change in the future to cover
asset types.

Currently the anchor isn't parsed correctly yet[1], so this will be
fixed in a future patch.

On non-2xx responses of the main document all ongoing preloads get
canceled. Already completed preloads don't get affected and are in the
cache.

It is currently untested whether unused preloads don't have side effects.

Another future patch should cover adding the preload to the devtools.

[1]: https://datatracker.ietf.org/doc/html/rfc8288#section-3.2

Differential Revision: https://phabricator.services.mozilla.com/D137885
2022-05-11 15:41:39 +00:00
Manuel Bucher 318581f7cb Bug 1753730 - Fix early hint not propagating with http proxy r=necko-reviewers,dragana
Differential Revision: https://phabricator.services.mozilla.com/D141760
2022-05-11 15:41:38 +00:00
Noemi Erli 45276205df Backed out 22 changesets (bug 1696894, bug 1759569, bug 1754031, bug 1759563, bug 1759572, bug 1754004) for causing leack failures CLOSED TREE
Backed out changeset 673ecd5337e1 (bug 1754004)
Backed out changeset ecbf5f3c51de (bug 1754004)
Backed out changeset fc6c39f56d21 (bug 1754004)
Backed out changeset 5b3d58fbaf9d (bug 1696894)
Backed out changeset 2e56c89cf55d (bug 1754004)
Backed out changeset b7723490f025 (bug 1754004)
Backed out changeset 1dfbf61ff5dd (bug 1754004)
Backed out changeset e73abb071bb3 (bug 1754004)
Backed out changeset f9abe4fbf501 (bug 1754004)
Backed out changeset ee7aeb631cd9 (bug 1754004)
Backed out changeset d66aacfcf983 (bug 1754004)
Backed out changeset 5c2872ad6912 (bug 1754004)
Backed out changeset e1ae48f30d2c (bug 1754004)
Backed out changeset 849b63707d7f (bug 1754004)
Backed out changeset 36563e3b1e04 (bug 1754004)
Backed out changeset ccb4be659107 (bug 1754004)
Backed out changeset 659581d4159b (bug 1754004)
Backed out changeset 611ea76d7a9c (bug 1754004)
Backed out changeset 9b24b561698c (bug 1759572)
Backed out changeset f820e0f209ff (bug 1759563)
Backed out changeset 8d82066fa181 (bug 1759569)
Backed out changeset a2835afab1ad (bug 1754031)
2022-05-11 06:16:25 +03:00
Nika Layzell 94e20acc6a Bug 1754004 - Part 13: Relax interface check in nsHttpTransaction, r=necko-reviewers,kershaw
Previously, the check when reporting progress from a nsHttpTransaction would
always report no progress when a non-seekable input stream is used as the
request data stream. Before Part 5, we incorrectly always reported the
nsBufferedStream which we wrap request streams with as seekable, meaning that
this check would pass and the progress reporting would work.

This change relaxes the check to instead check for nsITellableStream which is
actually guaranteed by the nsBufferedStream wrapper, and provides the Tell
method being used.

Differential Revision: https://phabricator.services.mozilla.com/D144450
2022-05-10 22:27:47 +00:00
Nika Layzell 024c6e0c0a Bug 1754004 - Part 11: Simplify the IPCStream serialization API, r=asuth,necko-reviewers,kershaw
As serializing IPCStream no longer requires a manager or FileDescriptor array,
the arguments are no longer necessary, and can be removed. The AutoIPCStream
helper can also be removed, as managed actors are no longer used for
serialization, so a delayed start callback is not necessary.

The delayed start parameter is also removed from nsIIPCSerializableInputStream
instances, but is still present as `aAllowLazy` on the toplevel serialization
methods.

Differential Revision: https://phabricator.services.mozilla.com/D141048
2022-05-10 22:27:46 +00:00
Nika Layzell 873f2d6175 Bug 1754004 - Part 7: Consistently normalize upload streams passed to HTTP channels, r=asuth,necko-reviewers,dragana
Unfortunately, upload streams used by necko have various odd behaviours
and requirements which happened to be usually preserved by the previous
IPC serialization logic, but were not consistently preserved. This
includes requiring the stream to be synchronous (as some consumers such
as WebExtensions and DevTools appear to read it assuming Available() is
the stream length), seekable (as it needs to be rewound in various
places), and cloneable (as the stream information is often handed out to
other components).

In addition, the WebExtension WebRequest code makes assumptions about
the specific topology of the input stream for optimization purposes,
meaning that nsMultiplexInputStreams need to be preserved.

The way this was previously handled was by copying the entire payload
into a nsStorageStream as an async operation. This happened very
infrequently in out test suite, however, and had some issues. It could
lead to data loss if the stream was a nsMIMEInputStream (as the metadata
would be lost), and would destroy the topology required by WebRequest.

This patch changes the code to instead manually walk and replace streams
in the input stream's data structure, to efficiently copy only the
required data, preserve the invariants, and make the type seekable
before AsyncOpen continues. This helps keep the complexity of the
invariants HTTPChannel depends on out of generic input stream handling
code.

In addition, due to how early this happens, it replaces the need for
PartiallySeekableInputStream which will be removed a later part.

Differential Revision: https://phabricator.services.mozilla.com/D141044
2022-05-10 22:27:44 +00:00
Nika Layzell 76cdaba44a Bug 1754004 - Part 3: Move RemoteLazyInputStream to its own toplevel protocol, r=asuth,necko-reviewers,dragana
This is a complete rewrite of RemoteLazyInputStream to run off of its own
toplevel protocol, rather than being managed by other protocols like
PBackground or PContent. This should improve performance thanks to no longer
needing to operate on a main or worker thread, and due to no longer needing the
migration step for the stream actor.

This also acts as a step towards no longer requiring a manager actor to
serialize input streams, as the type is now actor-agnostic, and should support
being sent over IPC between any pair of processes.

Differential Revision: https://phabricator.services.mozilla.com/D141040
2022-05-10 22:27:42 +00:00
Nika Layzell 728ba534f6 Bug 1754004 - Part 2: Remove the PFileDescriptorSet interface, r=asuth,necko-reviewers,kershaw
This interface should no longer be required due to the changes in part 1
limiting the complexity of IPCStream instances and limiting the number of file
descriptors which a single stream can attach to a message.

Removing this interface is necessary to serialize nsIInputStream instances over
arbitrary toplevel protocols and non-protocol IPC in the future.

Differential Revision: https://phabricator.services.mozilla.com/D141039
2022-05-10 22:27:42 +00:00
Nika Layzell f9f3cc6138 Bug 1754004 - Part 1: Switch IPCStream to use DataPipe instead of P{ChildToParent,ParentToChild}Stream, r=asuth,necko-reviewers,kershaw
This gives us various positive benefits, such as using a shared memory ring
buffer for faster communication, not having data streaming being bound to the
thread which transferred the nsIInputStream (which is often the main thread),
and the ability for some backpressure to be applied to data streaming.

After this change, the "delayed start" parameter for IPCStream serialization is
less relevant, as backpressure will serve a similar purpose. It will still be
used to determine whether or not to use RemoteLazyInputStream when serializing
from the parent process.

Differential Revision: https://phabricator.services.mozilla.com/D141038
2022-05-10 22:27:41 +00:00
Sebastian Hengst b5f13fbff8 Merge mozilla-central to autoland. CLOSED TREE 2022-05-05 11:47:35 +02:00
Sebastian Hengst 7ddbeea9d6 Backed out 17 changesets (bug 1696894, bug 1754004) for causing crashes e.g. bug 1767808, and hanging Gmail (bug 1767918). a=backout DONTBUILD
Backed out changeset 63f17a06eba9 (bug 1754004)
Backed out changeset 017e1552d549 (bug 1754004)
Backed out changeset 010dfd821cf3 (bug 1696894)
Backed out changeset 96a39c2ba7a3 (bug 1754004)
Backed out changeset a147df47a0e3 (bug 1754004)
Backed out changeset 9018dd592230 (bug 1754004)
Backed out changeset 234ff9e092c2 (bug 1754004)
Backed out changeset c4f1e86992b6 (bug 1754004)
Backed out changeset 51bd50b57dd5 (bug 1754004)
Backed out changeset d95e7ad0eafa (bug 1754004)
Backed out changeset 35a69828091c (bug 1754004)
Backed out changeset 6802a4326963 (bug 1754004)
Backed out changeset e40e810e18fc (bug 1754004)
Backed out changeset 82b38c12b298 (bug 1754004)
Backed out changeset 0a6cf0817bf5 (bug 1754004)
Backed out changeset 6d8e51b3e8d7 (bug 1754004)
Backed out changeset 2059c2d0d880 (bug 1754004)
2022-05-05 11:27:42 +02:00
Kershaw Chang 3200284da4 Bug 1767417 - Add telemetry probe to know if a channel is failed because of DNS error, r=necko-reviewers,dragana
Differential Revision: https://phabricator.services.mozilla.com/D145318
2022-05-05 09:10:04 +00:00
Karl Tomlinson 733cea14b9 Bug 1763281 allow one byte 206 Partial Content responses r=media-playback-reviewers,padenot
These were disallowed on initial implementation.
https://hg.mozilla.org/mozilla-central/rev/6df63191884b8631984d92bef4b937ab084042cd#l1.166

https://httpwg.org/specs/rfc7233.html#header.content-range
"A Content-Range field value is invalid if it contains a byte-range-resp that
has a last-byte-pos value less than its first-byte-pos value".

The aRangeEnd < aRangeTotal test correctly understands that aRangeEnd is an
inclusive index.

[range responses from multiple origins (cross-origin first)] fails because
Firefox reuses the media resource loaded in [range responses from single
origin (same-origin)] for subsequent resources with the same URL, without any
re-fetch (bug 1129121).

Depends on D143119

Differential Revision: https://phabricator.services.mozilla.com/D143120
2022-05-03 23:52:11 +00:00
Nika Layzell 35054c48ce Bug 1754004 - Part 13: Relax interface check in nsHttpTransaction, r=necko-reviewers,kershaw
Previously, the check when reporting progress from a nsHttpTransaction would
always report no progress when a non-seekable input stream is used as the
request data stream. Before Part 5, we incorrectly always reported the
nsBufferedStream which we wrap request streams with as seekable, meaning that
this check would pass and the progress reporting would work.

This change relaxes the check to instead check for nsITellableStream which is
actually guaranteed by the nsBufferedStream wrapper, and provides the Tell
method being used.

Differential Revision: https://phabricator.services.mozilla.com/D144450
2022-05-03 23:30:37 +00:00
Nika Layzell 57997381f5 Bug 1754004 - Part 11: Simplify the IPCStream serialization API, r=asuth,necko-reviewers,kershaw
As serializing IPCStream no longer requires a manager or FileDescriptor array,
the arguments are no longer necessary, and can be removed. The AutoIPCStream
helper can also be removed, as managed actors are no longer used for
serialization, so a delayed start callback is not necessary.

The delayed start parameter is also removed from nsIIPCSerializableInputStream
instances, but is still present as `aAllowLazy` on the toplevel serialization
methods.

Differential Revision: https://phabricator.services.mozilla.com/D141048
2022-05-03 23:30:36 +00:00
Nika Layzell 39eb862660 Bug 1754004 - Part 7: Consistently normalize upload streams passed to HTTP channels, r=asuth,necko-reviewers,dragana
Unfortunately, upload streams used by necko have various odd behaviours
and requirements which happened to be usually preserved by the previous
IPC serialization logic, but were not consistently preserved. This
includes requiring the stream to be synchronous (as some consumers such
as WebExtensions and DevTools appear to read it assuming Available() is
the stream length), seekable (as it needs to be rewound in various
places), and cloneable (as the stream information is often handed out to
other components).

In addition, the WebExtension WebRequest code makes assumptions about
the specific topology of the input stream for optimization purposes,
meaning that nsMultiplexInputStreams need to be preserved.

The way this was previously handled was by copying the entire payload
into a nsStorageStream as an async operation. This happened very
infrequently in out test suite, however, and had some issues. It could
lead to data loss if the stream was a nsMIMEInputStream (as the metadata
would be lost), and would destroy the topology required by WebRequest.

This patch changes the code to instead manually walk and replace streams
in the input stream's data structure, to efficiently copy only the
required data, preserve the invariants, and make the type seekable
before AsyncOpen continues. This helps keep the complexity of the
invariants HTTPChannel depends on out of generic input stream handling
code.

In addition, due to how early this happens, it replaces the need for
PartiallySeekableInputStream which will be removed a later part.

Differential Revision: https://phabricator.services.mozilla.com/D141044
2022-05-03 23:30:34 +00:00
Nika Layzell fa60fb91de Bug 1754004 - Part 3: Move RemoteLazyInputStream to its own toplevel protocol, r=asuth,necko-reviewers,dragana
This is a complete rewrite of RemoteLazyInputStream to run off of its own
toplevel protocol, rather than being managed by other protocols like
PBackground or PContent. This should improve performance thanks to no longer
needing to operate on a main or worker thread, and due to no longer needing the
migration step for the stream actor.

This also acts as a step towards no longer requiring a manager actor to
serialize input streams, as the type is now actor-agnostic, and should support
being sent over IPC between any pair of processes.

Differential Revision: https://phabricator.services.mozilla.com/D141040
2022-05-03 23:30:33 +00:00
Nika Layzell 310e31989e Bug 1754004 - Part 2: Remove the PFileDescriptorSet interface, r=asuth,necko-reviewers,kershaw
This interface should no longer be required due to the changes in part 1
limiting the complexity of IPCStream instances and limiting the number of file
descriptors which a single stream can attach to a message.

Removing this interface is necessary to serialize nsIInputStream instances over
arbitrary toplevel protocols and non-protocol IPC in the future.

Differential Revision: https://phabricator.services.mozilla.com/D141039
2022-05-03 23:30:32 +00:00
Nika Layzell a14f23b6d7 Bug 1754004 - Part 1: Switch IPCStream to use DataPipe instead of P{ChildToParent,ParentToChild}Stream, r=asuth,necko-reviewers,kershaw
This gives us various positive benefits, such as using a shared memory ring
buffer for faster communication, not having data streaming being bound to the
thread which transferred the nsIInputStream (which is often the main thread),
and the ability for some backpressure to be applied to data streaming.

After this change, the "delayed start" parameter for IPCStream serialization is
less relevant, as backpressure will serve a similar purpose. It will still be
used to determine whether or not to use RemoteLazyInputStream when serializing
from the parent process.

Differential Revision: https://phabricator.services.mozilla.com/D141038
2022-05-03 23:30:32 +00:00
Iulian Moraru f65b926595 Backed out 3 changesets (bug 1753730) for causing bc failures on browser_103_preload.js.
Backed out changeset 8f27dc8dbbe0 (bug 1753730)
Backed out changeset 3c25877d2660 (bug 1753730)
Backed out changeset 47787105e3ad (bug 1753730)
2022-05-03 23:24:34 +03:00
Manuel Bucher 2952cf8ce7 Bug 1753730 - Add EarlyHintPreloader to load 103 Early Hint responses into the cache r=necko-reviewers,ckerschb,dragana,kershaw
Currently only same origin requests are preloaded and preloads in the
secure context. This may change in the future to match W3C decisions and
Chromes behavior.

Also only images get preloaded. This will change in the future to cover
asset types.

Currently the anchor isn't parsed correctly yet[1], so this will be
fixed in a future patch.

On non-2xx responses of the main document all ongoing preloads get
canceled. Already completed preloads don't get affected and are in the
cache.

It is currently untested whether unused preloads don't have side effects.

Another future patch should cover adding the preload to the devtools.

[1]: https://datatracker.ietf.org/doc/html/rfc8288#section-3.2

Differential Revision: https://phabricator.services.mozilla.com/D137885
2022-05-03 19:24:42 +00:00
Manuel Bucher d2e465a0b2 Bug 1753730 - Fix early hint not propagating with http proxy r=necko-reviewers,dragana
Differential Revision: https://phabricator.services.mozilla.com/D141760
2022-05-03 19:24:41 +00:00
Butkovits Atila d0dadcb6f5 Backed out 19 changesets (bug 1759569, bug 1754004, bug 1759563, bug 1754031, bug 1696894, bug 1759572) for causing wpt failures. CLOSED TREE
Backed out changeset 110a8dce4b5d (bug 1696894)
Backed out changeset a62dab05c6cd (bug 1754004)
Backed out changeset 7cf122f6e19f (bug 1754004)
Backed out changeset 2aa9a0a9adbc (bug 1754004)
Backed out changeset cde16b2cdbfb (bug 1754004)
Backed out changeset 452fe0a15c99 (bug 1754004)
Backed out changeset eace8d4756ef (bug 1754004)
Backed out changeset 5e1fad91e935 (bug 1754004)
Backed out changeset eb6de0b1ab8e (bug 1754004)
Backed out changeset 1ac1908ed3d0 (bug 1754004)
Backed out changeset 473cad5b22ab (bug 1754004)
Backed out changeset 1923922be138 (bug 1754004)
Backed out changeset c7966d91f89e (bug 1754004)
Backed out changeset df5ce1f6712c (bug 1754004)
Backed out changeset a3f3f9761ada (bug 1754004)
Backed out changeset c8ec86e0a33b (bug 1759572)
Backed out changeset 6c102f8e3d4a (bug 1759563)
Backed out changeset bd3a2fcf4f0c (bug 1759569)
Backed out changeset 2541d8face65 (bug 1754031)
2022-05-03 06:00:22 +03:00
Nika Layzell 5ce984334b Bug 1754004 - Part 13: Relax interface check in nsHttpTransaction, r=necko-reviewers,kershaw
Previously, the check when reporting progress from a nsHttpTransaction would
always report no progress when a non-seekable input stream is used as the
request data stream. Before Part 5, we incorrectly always reported the
nsBufferedStream which we wrap request streams with as seekable, meaning that
this check would pass and the progress reporting would work.

This change relaxes the check to instead check for nsITellableStream which is
actually guaranteed by the nsBufferedStream wrapper, and provides the Tell
method being used.

Differential Revision: https://phabricator.services.mozilla.com/D144450
2022-05-02 20:44:27 +00:00
Nika Layzell d88dc7e3db Bug 1754004 - Part 11: Simplify the IPCStream serialization API, r=asuth,necko-reviewers,kershaw
As serializing IPCStream no longer requires a manager or FileDescriptor array,
the arguments are no longer necessary, and can be removed. The AutoIPCStream
helper can also be removed, as managed actors are no longer used for
serialization, so a delayed start callback is not necessary.

The delayed start parameter is also removed from nsIIPCSerializableInputStream
instances, but is still present as `aAllowLazy` on the toplevel serialization
methods.

Differential Revision: https://phabricator.services.mozilla.com/D141048
2022-05-02 20:44:26 +00:00
Nika Layzell 027697a12c Bug 1754004 - Part 7: Consistently normalize upload streams passed to HTTP channels, r=asuth,necko-reviewers,dragana
Unfortunately, upload streams used by necko have various odd behaviours
and requirements which happened to be usually preserved by the previous
IPC serialization logic, but were not consistently preserved. This
includes requiring the stream to be synchronous (as some consumers such
as WebExtensions and DevTools appear to read it assuming Available() is
the stream length), seekable (as it needs to be rewound in various
places), and cloneable (as the stream information is often handed out to
other components).

In addition, the WebExtension WebRequest code makes assumptions about
the specific topology of the input stream for optimization purposes,
meaning that nsMultiplexInputStreams need to be preserved.

The way this was previously handled was by copying the entire payload
into a nsStorageStream as an async operation. This happened very
infrequently in out test suite, however, and had some issues. It could
lead to data loss if the stream was a nsMIMEInputStream (as the metadata
would be lost), and would destroy the topology required by WebRequest.

This patch changes the code to instead manually walk and replace streams
in the input stream's data structure, to efficiently copy only the
required data, preserve the invariants, and make the type seekable
before AsyncOpen continues. This helps keep the complexity of the
invariants HTTPChannel depends on out of generic input stream handling
code.

In addition, due to how early this happens, it replaces the need for
PartiallySeekableInputStream which will be removed a later part.

Differential Revision: https://phabricator.services.mozilla.com/D141044
2022-05-02 20:44:24 +00:00
Nika Layzell a0d4a06e24 Bug 1754004 - Part 3: Move RemoteLazyInputStream to its own toplevel protocol, r=asuth,necko-reviewers,dragana
This is a complete rewrite of RemoteLazyInputStream to run off of its own
toplevel protocol, rather than being managed by other protocols like
PBackground or PContent. This should improve performance thanks to no longer
needing to operate on a main or worker thread, and due to no longer needing the
migration step for the stream actor.

This also acts as a step towards no longer requiring a manager actor to
serialize input streams, as the type is now actor-agnostic, and should support
being sent over IPC between any pair of processes.

Differential Revision: https://phabricator.services.mozilla.com/D141040
2022-05-02 20:44:23 +00:00
Nika Layzell 7cb1970841 Bug 1754004 - Part 2: Remove the PFileDescriptorSet interface, r=asuth,necko-reviewers,kershaw
This interface should no longer be required due to the changes in part 1
limiting the complexity of IPCStream instances and limiting the number of file
descriptors which a single stream can attach to a message.

Removing this interface is necessary to serialize nsIInputStream instances over
arbitrary toplevel protocols and non-protocol IPC in the future.

Differential Revision: https://phabricator.services.mozilla.com/D141039
2022-05-02 20:44:22 +00:00
Nika Layzell ac6a0491c8 Bug 1754004 - Part 1: Switch IPCStream to use DataPipe instead of P{ChildToParent,ParentToChild}Stream, r=asuth,necko-reviewers,kershaw
This gives us various positive benefits, such as using a shared memory ring
buffer for faster communication, not having data streaming being bound to the
thread which transferred the nsIInputStream (which is often the main thread),
and the ability for some backpressure to be applied to data streaming.

After this change, the "delayed start" parameter for IPCStream serialization is
less relevant, as backpressure will serve a similar purpose. It will still be
used to determine whether or not to use RemoteLazyInputStream when serializing
from the parent process.

Differential Revision: https://phabricator.services.mozilla.com/D141038
2022-05-02 20:44:22 +00:00
Nika Layzell 052cba0853 Bug 1738106 - Part 3: Switch to TaskQueue::Create, r=xpcom-reviewers,necko-reviewers,media-playback-reviewers,dragana,alwu,barret
In future parts, TaskQueue will require extra initialization to be performed
which cannot happen in a constructor, as it takes references to the TaskQueue
object itself, which will require the introduction of a helper method. This
patch switches all callers of the TaskQueue constructor to use the new method.

Differential Revision: https://phabricator.services.mozilla.com/D142604
2022-05-02 20:37:34 +00:00
Andreas Farre a477caf060 Bug 1763527 - Remove OPAQUE_RESPONSE_BLOCKING* probes. r=necko-reviewers,kershaw
Differential Revision: https://phabricator.services.mozilla.com/D144791
2022-04-29 22:31:44 +00:00
edguloien ee944b4098 Bug 1758524 (WIP) - Implement the http priority incremental flag: added lint fixes and test coverage. Differential Revision: https://phabricator.services.mozilla.com/D142694 r=necko-reviewers,dragana
Differential Revision: https://phabricator.services.mozilla.com/D142965
2022-04-29 18:36:16 +00:00
edguloien 16595acde2 Bug 1758524 (WIP) - Implement http priority flag r=necko-reviewers,dragana
Differential Revision: https://phabricator.services.mozilla.com/D142694
2022-04-29 18:36:16 +00:00
Butkovits Atila 4aff968e83 Backed out changeset 5d44356db349 (bug 1763527) for causing build bustages. CLOSED TREE 2022-04-29 13:41:02 +03:00
Andreas Farre 8502847db2 Bug 1763527 - Remove OPAQUE_RESPONSE_BLOCKING* probes. r=necko-reviewers,kershaw
Differential Revision: https://phabricator.services.mozilla.com/D144791
2022-04-29 10:27:50 +00:00
Cristian Tuns 5b228e4c4c Backed out 2 changesets (bug 1758524) for causing xpcshell failures in test_http3_prio_disabled_wrap.js CLOSED TREE
Backed out changeset b0abbd5936af (bug 1758524)
Backed out changeset e65d3214649e (bug 1758524)
2022-04-28 12:42:11 -04:00
edguloien 0c090761b0 Bug 1758524 (WIP) - Implement the http priority incremental flag: added lint fixes and test coverage. Differential Revision: https://phabricator.services.mozilla.com/D142694 r=necko-reviewers,dragana
Differential Revision: https://phabricator.services.mozilla.com/D142965
2022-04-28 15:40:33 +00:00
edguloien 7172c05d39 Bug 1758524 (WIP) - Implement http priority flag r=necko-reviewers,dragana
Differential Revision: https://phabricator.services.mozilla.com/D142694
2022-04-28 15:40:33 +00:00
Mike Hommey b225d730f0 Bug 1765474 - Fix unused-but-set-variable warnings in netwerk/. r=necko-reviewers,dragana
netwerk/protocol/http/Http2Compression.cpp:326:12: error: variable 'removedCount' set but not used [-Werror,-Wunused-but-set-variable]
  uint32_t removedCount = 0;
           ^
netwerk/streamconv/converters/nsDirIndexParser.cpp:376:11: error: variable 'numItems' set but not used [-Werror,-Wunused-but-set-variable]
  int32_t numItems = 0;
          ^

Differential Revision: https://phabricator.services.mozilla.com/D144144
2022-04-22 01:25:07 +00:00
Chris Peterson 7ed9829302 Bug 1763310 - Report ARM64 Windows 11+ as "x86_64" (and continue to report Windows 10 as "x86"). r=hsivonen,necko-reviewers,dragana
Windows 11+ supports x86_64 emulation, but Windows 10 only supports x86 emulation.

Advantages of reporting ARM64 Windows 11+ as x86_64:

* Sites that offer software downloads will know that the client is capable of running x86_64 software.

* Reduced fingerprinting entropy because ARM64 Windows 11+ users' UA string will match the UA string of the ~80% of Windows Firefox users running x86_64 instead of the ~20% running x86.

* Some sites disable features for 32-bit clients, such as Google Meet requiring 64-bit to use wasm visual effects:

https://github.com/WICG/ua-client-hints/issues/217#issuecomment-878537336

https://support.google.com/meet/answer/10058482?expand_all_zippies=true#requirements&zippy=%2Cwhy-cant-i-use-the-change-background-option%2Crequirements-to-apply-visual-effects-on-computer

The browser_navigator.js test is not actually run on ARM64 Windows in automation, but these test changes would make the test pass on ARM64 Windows 10 and 11 if this test ever is run.

Differential Revision: https://phabricator.services.mozilla.com/D143010
2022-04-07 01:43:20 +00:00
Dana Keeler 6502ebf4b6 Bug 1608307 - remove redundant flags parameters from nsISiteSecurityService r=jschanck,necko-reviewers,kershaw
Before this patch, nsISiteSecurityService APIs took "flags" parameters that
differentiated private contexts from not private contexts. However, these
parameters were redundant with respect to origin attributes, which led to some
confusion for consumers of these APIs. This patch removes these parameters in
favor of using origin attributes.

Differential Revision: https://phabricator.services.mozilla.com/D142901
2022-04-06 17:37:23 +00:00
Kershaw Chang 87ce1ca8c2 Bug 1754744 - isolating TLS handshake code, r=necko-reviewers,dragana
Differential Revision: https://phabricator.services.mozilla.com/D141093
2022-04-06 12:21:01 +00:00
Jan Rio Krause 057785b6d5 Bug 1519200 - Remove `NS_ERROR_FILE_TARGET_DOES_NOT_EXIST` in favor of `NS_ERROR_FILE_NOT_FOUND`. r=xpcom-reviewers,nika,dom-storage-reviewers,jstutte
Differential Revision: https://phabricator.services.mozilla.com/D77575
2022-04-05 15:17:03 +00:00
Emilio Cobos Álvarez 6dc370ab2b Bug 1761512 - Remove unneeded special case in nsDataHandler::CreateNewURI. r=dragana,necko-reviewers
NS_NewURI (its only caller) deals with this generically in:

  https://searchfox.org/mozilla-central/rev/3f782c2587124923a37c750b88c5a40108077057/netwerk/base/nsNetUtil.cpp#1832

Differential Revision: https://phabricator.services.mozilla.com/D142099
2022-04-01 11:46:11 +00:00
Kagami Sascha Rosylight 1e83450022 Bug 1635428 - Part 1: Move mozilla::IsDevelopmentBuild to Omnijar.h r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D142569
2022-03-31 23:36:25 +00:00
criss ea772f6e4b Backed out changeset 3cef8943e0c6 (bug 1635428) for causing build bustages on nsMacUtilsImpl.cpp. CLOSED TREE 2022-04-01 01:39:33 +03:00
Kagami Sascha Rosylight 7913ea573c Bug 1635428 - Part 1: Move mozilla::IsDevelopmentBuild to Omnijar.h r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D142569
2022-03-31 22:05:55 +00:00
edguloien 002514a242 Bug 1754179 - log stack of cancelled request in parent process. r=necko-reviewers,kershaw
Differential Revision: https://phabricator.services.mozilla.com/D141403
2022-03-30 12:40:36 +00:00
Norisz Fay 5b15f799e4 Backed out changeset a7b879827137 (bug 1754744) for causing build bustages on Unified_cpp_protocol_http4.obj CLOSED TREE 2022-03-29 13:15:13 +03:00
Kershaw Chang dc33837cad Bug 1754744 - isolating TLS handshake code, r=necko-reviewers,dragana
Differential Revision: https://phabricator.services.mozilla.com/D141093
2022-03-29 08:02:30 +00:00