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

7977 Коммитов

Автор SHA1 Сообщение Дата
Kris Maglione 0ae37bde4e Bug 1464542: Part 2 - Add infrastructure for defining named services exposed to JS. r=mccr8
This builds on the existing static components infrastructure to allow defining
a Services.jsm-type services cache with no runtime memory overhead for any
services until they're accessed.

Any class entry with a 'js_name' attribute automatically becomes available on
the services cache with that name, and any interfaces listed in its
'interfaces' list are automatically queried on it.

Differential Revision: https://phabricator.services.mozilla.com/D81417
2020-07-09 17:59:11 +00:00
Nika Layzell 22a65a237e Bug 1650163 - Part 1: Switch native remoteType values to nsCString, r=farre,geckoview-reviewers,agi
Differential Revision: https://phabricator.services.mozilla.com/D82104
2020-07-08 20:15:59 +00:00
Mihai Alexandru Michis 1ba2a3f6f6 Backed out 3 changesets (bug 1650163) for causing bustages in nsContentSecurityManager.cpp
CLOSED TREE

Backed out changeset 51d7c644a1e6 (bug 1650163)
Backed out changeset 3d2b6908447a (bug 1650163)
Backed out changeset 79141707d47b (bug 1650163)
2020-07-08 21:18:44 +03:00
Nika Layzell c850a94434 Bug 1650163 - Part 1: Switch native remoteType values to nsCString, r=farre,geckoview-reviewers,agi
Differential Revision: https://phabricator.services.mozilla.com/D82104
2020-07-08 14:54:48 +00:00
Doug Thayer b274aafa4b Bug 1627075 - Route Omnijar requests through StartupCache r=froydnj
This should be a relatively straightforward patch. Essentially, we implement
a wrapper class (and friends) around nsZipArchive (and friends), which transparently
caches entries from the underlying zip archive in the StartupCache. This will break
without changes to the StartupCache, made in the patch after this, which allow it
to be used off of the main thread, and outside the main process.

Depends on D77635

Differential Revision: https://phabricator.services.mozilla.com/D77634
2020-07-08 02:46:34 +00:00
Doug Thayer fcbcc674d2 Bug 1627075 - OMT and OMP StartupCache access r=froydnj
The overall goal of this patch is to make the StartupCache accessible anywhere.
There's two main pieces to that equation:

1. Allowing it to be accessed off main thread, which means modifying the
   mutex usage to ensure that all data accessed from non-main threads is
   protected.
2. Allowing it to be accessed out of the chrome process, which means passing
   a handle to a shared cache buffer down to child processes.

Number 1 is somewhat fiddly, but it's all generally straightforward work. I'll
hope that the comments and the code are sufficient to explain what's going on
there.

Number 2 has some decisions to be made:
- The first decision was to pass a handle to a frozen chunk of memory down to
  all child processes, rather than passing a handle to an actual file. There's
  two reasons for this: 1) since we want to compress the underlying file on
  disk, giving that file to child processes would mean they have to decompress
  it themselves, eating CPU time. 2) since they would have to decompress it
  themselves, they would have to allocate the memory for the decompressed
  buffers, meaning they cannot all simply share one big decompressed buffer.

  - The drawback of this decision is that we have to load and decompress the
    buffer up front, before we spawn any child processes. We attempt to
    mitigate this by keeping track of all the entries that child processes
    access, and only including those in the frozen decompressed shared buffer.

  - We base our implementation of this approach off of the shared preferences
    implementation. Hopefully I got all of the pieces to fit together
    correctly. They seem to work in local testing and on try, but I think
    they require a set of experienced eyes looking carefully at them.

- Another decision was whether to send the handles to the buffers over IPC or
  via command line. We went with the command line approach, because the startup
  cache would need to be accessed very early on in order to ensure we do not
  read from any omnijars, and we could not make that work via IPC.

  - Unfortunately this means adding another hard-coded FD, similar to
    kPrefMapFileDescriptor. It seems like at the very least we need to rope all
    of these together into one place, but I think that should be filed as a
    follow-up?

Lastly, because this patch is a bit of a monster to review - first, thank you
for looking at it, and second, the reason we're invested in this is because we
saw a >10% improvement in cold startup times on reference hardware, with a p
value less than 0.01. It's still not abundantly clear how reference hardware
numbers translate to numbers on release, and they certainly don't translate
well to Nightly numbers, but it's enough to convince me that it's worth some
effort.

Depends on D78584

Differential Revision: https://phabricator.services.mozilla.com/D77635
2020-07-08 02:46:11 +00:00
Narcis Beleuzu 8359f16846 Backed out 7 changesets (bug 1650163, bug 1649477) for bustages on JSActor.cpp . CLOSED TREE
Backed out changeset 4a21afb65254 (bug 1650163)
Backed out changeset c41753a56f5a (bug 1650163)
Backed out changeset 5fb444c35764 (bug 1650163)
Backed out changeset 830aa93d2b0c (bug 1649477)
Backed out changeset eca6e9dce450 (bug 1649477)
Backed out changeset 5b217aa88289 (bug 1649477)
Backed out changeset 8959d02b840f (bug 1649477)
2020-07-08 04:09:27 +03:00
Nika Layzell df351180c3 Bug 1650163 - Part 1: Switch native remoteType values to nsCString, r=farre
Differential Revision: https://phabricator.services.mozilla.com/D82104
2020-07-06 20:30:58 +00:00
Nika Layzell a3579f6f46 Bug 1458043 - Stop converting promises to nsISupports in xpconnect, r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D82616
2020-07-07 22:20:01 +00:00
Narcis Beleuzu a182c015f5 Backed out 6 changesets (bug 1627075) for bustages on startupcache/StartupCache.cpp . CLOSED TREE
Backed out changeset 21605186687e (bug 1627075)
Backed out changeset e29b15980da2 (bug 1627075)
Backed out changeset eb5265addd5e (bug 1627075)
Backed out changeset dfd71f4ecb81 (bug 1627075)
Backed out changeset 13ecd68b3c0d (bug 1627075)
Backed out changeset 333d035afe92 (bug 1627075)
2020-07-07 23:30:48 +03:00
Doug Thayer a2595a8402 Bug 1627075 - Route Omnijar requests through StartupCache r=froydnj
This should be a relatively straightforward patch. Essentially, we implement
a wrapper class (and friends) around nsZipArchive (and friends), which transparently
caches entries from the underlying zip archive in the StartupCache. This will break
without changes to the StartupCache, made in the patch after this, which allow it
to be used off of the main thread, and outside the main process.

Depends on D77635

Differential Revision: https://phabricator.services.mozilla.com/D77634
2020-07-07 17:04:27 +00:00
Doug Thayer 4d6b5a1f91 Bug 1627075 - OMT and OMP StartupCache access r=froydnj
The overall goal of this patch is to make the StartupCache accessible anywhere.
There's two main pieces to that equation:

1. Allowing it to be accessed off main thread, which means modifying the
   mutex usage to ensure that all data accessed from non-main threads is
   protected.
2. Allowing it to be accessed out of the chrome process, which means passing
   a handle to a shared cache buffer down to child processes.

Number 1 is somewhat fiddly, but it's all generally straightforward work. I'll
hope that the comments and the code are sufficient to explain what's going on
there.

Number 2 has some decisions to be made:
- The first decision was to pass a handle to a frozen chunk of memory down to
  all child processes, rather than passing a handle to an actual file. There's
  two reasons for this: 1) since we want to compress the underlying file on
  disk, giving that file to child processes would mean they have to decompress
  it themselves, eating CPU time. 2) since they would have to decompress it
  themselves, they would have to allocate the memory for the decompressed
  buffers, meaning they cannot all simply share one big decompressed buffer.

  - The drawback of this decision is that we have to load and decompress the
    buffer up front, before we spawn any child processes. We attempt to
    mitigate this by keeping track of all the entries that child processes
    access, and only including those in the frozen decompressed shared buffer.

  - We base our implementation of this approach off of the shared preferences
    implementation. Hopefully I got all of the pieces to fit together
    correctly. They seem to work in local testing and on try, but I think
    they require a set of experienced eyes looking carefully at them.

- Another decision was whether to send the handles to the buffers over IPC or
  via command line. We went with the command line approach, because the startup
  cache would need to be accessed very early on in order to ensure we do not
  read from any omnijars, and we could not make that work via IPC.

  - Unfortunately this means adding another hard-coded FD, similar to
    kPrefMapFileDescriptor. It seems like at the very least we need to rope all
    of these together into one place, but I think that should be filed as a
    follow-up?

Lastly, because this patch is a bit of a monster to review - first, thank you
for looking at it, and second, the reason we're invested in this is because we
saw a >10% improvement in cold startup times on reference hardware, with a p
value less than 0.01. It's still not abundantly clear how reference hardware
numbers translate to numbers on release, and they certainly don't translate
well to Nightly numbers, but it's enough to convince me that it's worth some
effort.

Depends on D78584

Differential Revision: https://phabricator.services.mozilla.com/D77635
2020-07-07 17:03:28 +00:00
Mihai Alexandru Michis 87cb0ad6fa Backed out 6 changesets (bug 1627075) for causing bustages in StartupCache.cpp
CLOSED TREE

Backed out changeset fc144caf5d06 (bug 1627075)
Backed out changeset a345e05df151 (bug 1627075)
Backed out changeset 288a67aed661 (bug 1627075)
Backed out changeset 2cb021a493d8 (bug 1627075)
Backed out changeset 920398d1c3d3 (bug 1627075)
Backed out changeset ebdcd96a9d20 (bug 1627075)
2020-07-07 08:47:14 +03:00
Doug Thayer e3f3b7b80b Bug 1627075 - Route Omnijar requests through StartupCache r=froydnj
This should be a relatively straightforward patch. Essentially, we implement
a wrapper class (and friends) around nsZipArchive (and friends), which transparently
caches entries from the underlying zip archive in the StartupCache. This will break
without changes to the StartupCache, made in the patch after this, which allow it
to be used off of the main thread, and outside the main process.

Depends on D77635

Differential Revision: https://phabricator.services.mozilla.com/D77634
2020-07-07 04:36:27 +00:00
Doug Thayer 5ff30b60fa Bug 1627075 - OMT and OMP StartupCache access r=froydnj
The overall goal of this patch is to make the StartupCache accessible anywhere.
There's two main pieces to that equation:

1. Allowing it to be accessed off main thread, which means modifying the
   mutex usage to ensure that all data accessed from non-main threads is
   protected.
2. Allowing it to be accessed out of the chrome process, which means passing
   a handle to a shared cache buffer down to child processes.

Number 1 is somewhat fiddly, but it's all generally straightforward work. I'll
hope that the comments and the code are sufficient to explain what's going on
there.

Number 2 has some decisions to be made:
- The first decision was to pass a handle to a frozen chunk of memory down to
  all child processes, rather than passing a handle to an actual file. There's
  two reasons for this: 1) since we want to compress the underlying file on
  disk, giving that file to child processes would mean they have to decompress
  it themselves, eating CPU time. 2) since they would have to decompress it
  themselves, they would have to allocate the memory for the decompressed
  buffers, meaning they cannot all simply share one big decompressed buffer.

  - The drawback of this decision is that we have to load and decompress the
    buffer up front, before we spawn any child processes. We attempt to
    mitigate this by keeping track of all the entries that child processes
    access, and only including those in the frozen decompressed shared buffer.

  - We base our implementation of this approach off of the shared preferences
    implementation. Hopefully I got all of the pieces to fit together
    correctly. They seem to work in local testing and on try, but I think
    they require a set of experienced eyes looking carefully at them.

- Another decision was whether to send the handles to the buffers over IPC or
  via command line. We went with the command line approach, because the startup
  cache would need to be accessed very early on in order to ensure we do not
  read from any omnijars, and we could not make that work via IPC.

  - Unfortunately this means adding another hard-coded FD, similar to
    kPrefMapFileDescriptor. It seems like at the very least we need to rope all
    of these together into one place, but I think that should be filed as a
    follow-up?

Lastly, because this patch is a bit of a monster to review - first, thank you
for looking at it, and second, the reason we're invested in this is because we
saw a >10% improvement in cold startup times on reference hardware, with a p
value less than 0.01. It's still not abundantly clear how reference hardware
numbers translate to numbers on release, and they certainly don't translate
well to Nightly numbers, but it's enough to convince me that it's worth some
effort.

Depends on D78584

Differential Revision: https://phabricator.services.mozilla.com/D77635
2020-07-07 04:35:08 +00:00
Csoregi Natalia 4dcffa68cd Backed out 9 changesets (bug 1619953) for causing leaks. CLOSED TREE
Backed out changeset 9f610c8c44de (bug 1619953)
Backed out changeset 4e66983a4f00 (bug 1619953)
Backed out changeset 38aac5691967 (bug 1619953)
Backed out changeset 062c0c9b132f (bug 1619953)
Backed out changeset 830eb658d70e (bug 1619953)
Backed out changeset fccda4625d51 (bug 1619953)
Backed out changeset 4668c99560de (bug 1619953)
Backed out changeset 77c24528c8c2 (bug 1619953)
Backed out changeset b79dc688bfc9 (bug 1619953)
2020-07-02 17:58:57 +03:00
ssengupta 8fb95b78d1 Bug 1619953 - P7 - mozJSSubScriptLoader::ReadScript() now attempts reading from input stream even if content length is not already known r=baku
If reading succeeds, it is checked that the length is known from that point on (this check is debug only).

Differential Revision: https://phabricator.services.mozilla.com/D81718
2020-07-02 13:38:36 +00:00
Jon Coppeard 4745a29ae2 Bug 1649949 - Remove obsolete CG telemetry r=allstarschh
The following telemetry probes have been replaced:
 - GC_BUDGET_MS
 - GC_MARK_ROOTS_MS
 - GC_MARK_GRAY_MS

Depends on D82004

Differential Revision: https://phabricator.services.mozilla.com/D82005
2020-07-02 12:58:01 +00:00
Jon Coppeard fee543af64 Bug 1649952 - Remove obsolete GC_MARK_RATE telemetry r=allstarschh
This has been replaced by GC_MARK_RATE_2.

Depends on D82003

Differential Revision: https://phabricator.services.mozilla.com/D82004
2020-07-02 12:57:38 +00:00
Jon Coppeard 9ed0917a8d Bug 1649950 - Remove obsolete GC_PRETENURE_COUNT telemetry r=allstarschh
This telemetry has been replaced by GC_PRETENURE_COUNT_2.

Differential Revision: https://phabricator.services.mozilla.com/D82003
2020-07-02 12:57:26 +00:00
Noemi Erli b13f2bcb47 Backed out 7 changesets (bug 1627075) for causing @nsZipArchive crashes CLOSED TREE
Backed out changeset 9705b2759d45 (bug 1627075)
Backed out changeset 699212a443c3 (bug 1627075)
Backed out changeset 7ae4df10749c (bug 1627075)
Backed out changeset ece9a4223349 (bug 1627075)
Backed out changeset 6c4eedaa0d04 (bug 1627075)
Backed out changeset f5106898239f (bug 1627075)
Backed out changeset b6029c7c0016 (bug 1627075)
2020-07-02 14:05:53 +03:00
Doug Thayer 3742aac030 Bug 1627075 - Route Omnijar requests through StartupCache r=froydnj
This should be a relatively straightforward patch. Essentially, we implement
a wrapper class (and friends) around nsZipArchive (and friends), which transparently
caches entries from the underlying zip archive in the StartupCache. This will break
without changes to the StartupCache, made in the patch after this, which allow it
to be used off of the main thread, and outside the main process.

Depends on D77635

Differential Revision: https://phabricator.services.mozilla.com/D77634
2020-07-02 02:51:41 +00:00
Doug Thayer a493fefece Bug 1627075 - OMT and OMP StartupCache access r=froydnj
The overall goal of this patch is to make the StartupCache accessible anywhere.
There's two main pieces to that equation:

1. Allowing it to be accessed off main thread, which means modifying the
   mutex usage to ensure that all data accessed from non-main threads is
   protected.
2. Allowing it to be accessed out of the chrome process, which means passing
   a handle to a shared cache buffer down to child processes.

Number 1 is somewhat fiddly, but it's all generally straightforward work. I'll
hope that the comments and the code are sufficient to explain what's going on
there.

Number 2 has some decisions to be made:
- The first decision was to pass a handle to a frozen chunk of memory down to
  all child processes, rather than passing a handle to an actual file. There's
  two reasons for this: 1) since we want to compress the underlying file on
  disk, giving that file to child processes would mean they have to decompress
  it themselves, eating CPU time. 2) since they would have to decompress it
  themselves, they would have to allocate the memory for the decompressed
  buffers, meaning they cannot all simply share one big decompressed buffer.

  - The drawback of this decision is that we have to load and decompress the
    buffer up front, before we spawn any child processes. We attempt to
    mitigate this by keeping track of all the entries that child processes
    access, and only including those in the frozen decompressed shared buffer.

  - We base our implementation of this approach off of the shared preferences
    implementation. Hopefully I got all of the pieces to fit together
    correctly. They seem to work in local testing and on try, but I think
    they require a set of experienced eyes looking carefully at them.

- Another decision was whether to send the handles to the buffers over IPC or
  via command line. We went with the command line approach, because the startup
  cache would need to be accessed very early on in order to ensure we do not
  read from any omnijars, and we could not make that work via IPC.

  - Unfortunately this means adding another hard-coded FD, similar to
    kPrefMapFileDescriptor. It seems like at the very least we need to rope all
    of these together into one place, but I think that should be filed as a
    follow-up?

Lastly, because this patch is a bit of a monster to review - first, thank you
for looking at it, and second, the reason we're invested in this is because we
saw a >10% improvement in cold startup times on reference hardware, with a p
value less than 0.01. It's still not abundantly clear how reference hardware
numbers translate to numbers on release, and they certainly don't translate
well to Nightly numbers, but it's enough to convince me that it's worth some
effort.

Depends on D78584

Differential Revision: https://phabricator.services.mozilla.com/D77635
2020-07-02 03:39:46 +00:00
Mihai Alexandru Michis bab20702a8 Backed out 6 changesets (bug 1627075) for causing failures regarding startupcache.
CLOSED TREE

Backed out changeset cf23b456ba12 (bug 1627075)
Backed out changeset b07887474f51 (bug 1627075)
Backed out changeset 65c0e6790a33 (bug 1627075)
Backed out changeset 6cd31f17a931 (bug 1627075)
Backed out changeset 0f0d1bd2a8ac (bug 1627075)
Backed out changeset 763a5a7b43a0 (bug 1627075)
2020-07-01 22:16:28 +03:00
Doug Thayer ab4b703a53 Bug 1627075 - Route Omnijar requests through StartupCache r=froydnj
This should be a relatively straightforward patch. Essentially, we implement
a wrapper class (and friends) around nsZipArchive (and friends), which transparently
caches entries from the underlying zip archive in the StartupCache. This will break
without changes to the StartupCache, made in the patch after this, which allow it
to be used off of the main thread, and outside the main process.

Depends on D77635

Differential Revision: https://phabricator.services.mozilla.com/D77634
2020-07-01 17:09:53 +00:00
Doug Thayer 42ac8f4294 Bug 1627075 - OMT and OMP StartupCache access r=froydnj
The overall goal of this patch is to make the StartupCache accessible anywhere.
There's two main pieces to that equation:

1. Allowing it to be accessed off main thread, which means modifying the
   mutex usage to ensure that all data accessed from non-main threads is
   protected.
2. Allowing it to be accessed out of the chrome process, which means passing
   a handle to a shared cache buffer down to child processes.

Number 1 is somewhat fiddly, but it's all generally straightforward work. I'll
hope that the comments and the code are sufficient to explain what's going on
there.

Number 2 has some decisions to be made:
- The first decision was to pass a handle to a frozen chunk of memory down to
  all child processes, rather than passing a handle to an actual file. There's
  two reasons for this: 1) since we want to compress the underlying file on
  disk, giving that file to child processes would mean they have to decompress
  it themselves, eating CPU time. 2) since they would have to decompress it
  themselves, they would have to allocate the memory for the decompressed
  buffers, meaning they cannot all simply share one big decompressed buffer.

  - The drawback of this decision is that we have to load and decompress the
    buffer up front, before we spawn any child processes. We attempt to
    mitigate this by keeping track of all the entries that child processes
    access, and only including those in the frozen decompressed shared buffer.

  - We base our implementation of this approach off of the shared preferences
    implementation. Hopefully I got all of the pieces to fit together
    correctly. They seem to work in local testing and on try, but I think
    they require a set of experienced eyes looking carefully at them.

- Another decision was whether to send the handles to the buffers over IPC or
  via command line. We went with the command line approach, because the startup
  cache would need to be accessed very early on in order to ensure we do not
  read from any omnijars, and we could not make that work via IPC.

  - Unfortunately this means adding another hard-coded FD, similar to
    kPrefMapFileDescriptor. It seems like at the very least we need to rope all
    of these together into one place, but I think that should be filed as a
    follow-up?

Lastly, because this patch is a bit of a monster to review - first, thank you
for looking at it, and second, the reason we're invested in this is because we
saw a >10% improvement in cold startup times on reference hardware, with a p
value less than 0.01. It's still not abundantly clear how reference hardware
numbers translate to numbers on release, and they certainly don't translate
well to Nightly numbers, but it's enough to convince me that it's worth some
effort.

Depends on D78584

Differential Revision: https://phabricator.services.mozilla.com/D77635
2020-07-01 17:55:38 +00:00
kriswright aa65c1fedc Bug 1645467 - Change the void-type HelperThreadTaskCallback to return a bool r=jonco
This changes `HelperThreadTaskCallback` to be a `bool` type callback and changes `DispatchOffthreadTask` to return a bool type if `gHelperThreads` successfully dispatches. The failure will be `false` regardless of what kind of failure it is, but if JS doesn't care and only wants to know if there is a failure then this will be simpler than exposing a proper error enum. This also changes `HelperThreadPool::Dispatch` to no longer return `NS_OK` and instead returns whatever the `nsResult` from the nsThreadPool may be.

Differential Revision: https://phabricator.services.mozilla.com/D81770
2020-07-01 08:12:51 +00:00
Simon Giesecke 9364b353d4 Bug 1648010 - Remove NS_NAMED_LITERAL_CSTRING and NS_NAMED_LITERAL_STRING macros. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D80631
2020-07-01 08:42:31 +00:00
Simon Giesecke e3c223da3e Bug 1648010 - Fix uses of NS_LITERAL_STRING with C string literals. r=geckoview-reviewers,agi,froydnj
Differential Revision: https://phabricator.services.mozilla.com/D80861
2020-07-01 08:34:12 +00:00
Simon Giesecke cd8b8939b9 Bug 1648010 - Replace uses of NS_LITERAL_STRING/NS_LITERAL_CSTRING macros by _ns literals. r=geckoview-reviewers,jgilbert,agi,hsivonen,froydnj
Differential Revision: https://phabricator.services.mozilla.com/D80860
2020-07-01 08:29:29 +00:00
Kris Maglione 6aa06b33a7 Bug 1645510: Part 2 - Avoid using the unprivileged junk scope where possible. r=bholley
Differential Revision: https://phabricator.services.mozilla.com/D79720
2020-06-27 03:06:28 +00:00
Kris Maglione f6b7b4f451 Bug 1645510: Part 1 - Make unprivileged junk scope creation lazy, weak, and fallible. r=mccr8,bholley
Differential Revision: https://phabricator.services.mozilla.com/D79719
2020-06-27 03:06:26 +00:00
David Major ce70c59eeb Bug 1647739 - Fix a clang-11 snprintf complaint in XPCConvert.cpp r=mccr8
We have a clang-plugin checker that wants to favor `SprintfLiteral` over `snprintf`, but for some reason it didn't catch this instance prior to clang-11.

Differential Revision: https://phabricator.services.mozilla.com/D80668
2020-06-23 17:08:17 +00:00
Kris Maglione 758b23093d Bug 1646145: Use lazy property resolution for constants on JS IID reflectors. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D79904
2020-06-17 17:45:35 +00:00
Kris Maglione 3bda67deab Bug 1638153: Part 2 - Fix uses of .rootTreeItem to get top browser window. r=geckoview-reviewers,nika,snorp
Differential Revision: https://phabricator.services.mozilla.com/D75429
2020-06-17 17:17:16 +00:00
Nicholas Nethercote a8f5f49b8a Bug 1645982 - Rename some service getters in `Services.py` to better match the types. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D79791
2020-06-16 23:32:21 +00:00
Andrew McCreight 208d20a42e Bug 1645908 - Eliminate gratuitous use of dom::danger::GetJSContext() in ForceShrinkingGC(). r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D79756
2020-06-15 22:37:10 +00:00
Jason Orendorff 033a5e6ba7 Bug 1599769 - Part 1: Ship Promise.any. r=jwalden.
Differential Revision: https://phabricator.services.mozilla.com/D76393
2020-06-15 21:57:04 +00:00
Narcis Beleuzu fbae0b49f9 Backed out 3 changesets (bug 1634847, bug 1599769) for mochitest failures on test_xrayToJS.xhtml . CLOSED TREE
Backed out changeset 249e60b52fb4 (bug 1599769)
Backed out changeset c3c837a5bf38 (bug 1599769)
Backed out changeset c958e2551f1c (bug 1634847)
2020-06-15 19:50:59 +03:00
Jason Orendorff 8296b1ab7a Bug 1599769 - Part 1: Ship Promise.any. r=jwalden.
Differential Revision: https://phabricator.services.mozilla.com/D76393
2020-06-15 15:12:18 +00:00
Jason Orendorff 87b8f09585 Bug 1641355 - Change AggregateError.errors to a data property on instances. r=tcampbell,peterv.
The changes in xpconnect are necessary because this is not being specified in
the usual way, with a getter. Ordinary data properties require an explicit
loophole to make them visible through X-ray wrappers.

Differential Revision: https://phabricator.services.mozilla.com/D77181
2020-06-11 14:57:00 +00:00
Logan Smyth 25d491b792 Bug 1601179 - Enable async stacks but limit captured async stacks to debuggees. r=jorendorff,smaug
The 'asyncStack' flag on JS execution contexts is used as a general switch
to enable async stack capture across all locations in SpiderMonkey, but
this causes problems because it can at times be too much of a performance
burden to general and track all of these stacks.

Since the introduction of this option, we have only enabled it on Nightly
and DevEdition for non-mobile builds, which has left a lot of users unable
to take advantage of this data while debugging.

This patch enables async stack traces across all of Firefox, but introduces
a new pref to toggle the scope of the actual expensive part of async stacks,
which is _capturing_ them and keeping them alive in memory. The new pref
limits the capturing of async stack traces to only debuggees, unless an
explicit pref is flipped to capture async traces for all cases.

This means that while async stacks are technically enabled, and code could
manually capture a stack and pass it back to SpiderMonkey and see that stack
reflected in later captured stacks, SpiderMonkey itself and related async
DOM APIs, among others, will not capture stacks or pass them to SpiderMonkey,
so there should be no general change in performance by enabling the broader
feature itself, unless the user is actively debugging the page.

One effect of this patch is that if you have the debugger open and then close
it, objects that have async stacks associated with them will retain those
stacks and they will continue to show up in stack traces, no _new_ stacks
will be captured. jorendorff and I have decided that this is okay because
the expectation that the debugger fully revert every possible effect that it
could have on a page is a nice goal but not a strict requirement.

Differential Revision: https://phabricator.services.mozilla.com/D68503
2020-06-14 02:41:45 +00:00
Noemi Erli 279f3b6a42 Backed out changeset 550164313c4f (bug 1601179) for causing failures in test_async CLOSED TREE 2020-06-12 08:16:14 +03:00
Logan Smyth 7f4a5aeed0 Bug 1601179 - Enable async stacks but limit captured async stacks to debuggees. r=jorendorff,smaug
The 'asyncStack' flag on JS execution contexts is used as a general switch
to enable async stack capture across all locations in SpiderMonkey, but
this causes problems because it can at times be too much of a performance
burden to general and track all of these stacks.

Since the introduction of this option, we have only enabled it on Nightly
and DevEdition for non-mobile builds, which has left a lot of users unable
to take advantage of this data while debugging.

This patch enables async stack traces across all of Firefox, but introduces
a new pref to toggle the scope of the actual expensive part of async stacks,
which is _capturing_ them and keeping them alive in memory. The new pref
limits the capturing of async stack traces to only debuggees, unless an
explicit pref is flipped to capture async traces for all cases.

This means that while async stacks are technically enabled, and code could
manually capture a stack and pass it back to SpiderMonkey and see that stack
reflected in later captured stacks, SpiderMonkey itself and related async
DOM APIs, among others, will not capture stacks or pass them to SpiderMonkey,
so there should be no general change in performance by enabling the broader
feature itself, unless the user is actively debugging the page.

One affect of this patch is that if you have the debugger open and then close
it, objects that have async stacks associated with them will retain those
stacks and they will continue to show up in stack traces, no _new_ stacks
will be captured. jorendorff and I have decided that this is okay because
the expectation that the debugger fully revert every possible effect that it
could have on a page is a nice goal but not a strict requirement.

Differential Revision: https://phabricator.services.mozilla.com/D68503
2020-06-11 21:24:16 +00:00
Jon Coppeard 16131c14f7 Bug 1641517 - Fix logic in ShouldIgnorePropertyDefinition to really ignore cleanupSome if it's not enabled r=sfink
Disabling toSource also disabled checking for whether to ignore cleanupSome.

Differential Revision: https://phabricator.services.mozilla.com/D79298
2020-06-11 18:02:39 +00:00
Razvan Maries 468d520bfa Backed out changeset 91d9671c44b5 (bug 1640445) as requested. CLOSED TREE 2020-06-09 19:57:58 +03:00
Andrew McCreight 2771fe40e6 Bug 1640445 - Hold the lock while tracing mScripts. r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D78711
2020-06-08 21:08:49 +00:00
Andrew McCreight 8eb502fd67 Bug 1643170, part 2 - Report memory for HelperThreads::helperContexts_. r=jandem
This is 41600 bytes of unreported memory in each process.

Differential Revision: https://phabricator.services.mozilla.com/D78813
2020-06-09 09:07:07 +00:00
Jon Coppeard ebd33b0e2f Bug 1639246 - Ship weak refs r=sfink,smaug
This renames the pref to remove 'experimental' and turns it on by default.

For integration with the CC, any DOM objects that are the target of a WeakRef or registered with a FinalizationRegistry have their wrappers preserved. WeakRef.deref() checks whether any wrapper is still preserved and returns undefined if not, to avoid giving out references to wrappers whose DOM object has been cycle collected.

Tests exercising browser integration are under js/xpconnect/tests/mochitest/.

Differential Revision: https://phabricator.services.mozilla.com/D77656
2020-06-09 11:20:45 +00:00
Masatoshi Kimura 8601daefcb Bug 1643910 - Remove ability to disable JSM global sharing. r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D78602
2020-06-08 11:03:36 +00:00
Jon Coppeard c53e11c2b2 Bug 1642974 - Don't expose WeakRef targets which are DOM wrappers whose target has been collected r=smaug,sfink
WeakRef targets that are wrappers to DOM objects are preserved when the WeakRef is created.  This checks whether the wrapper is still preserved in deref() and if it is found to have been released, the target is cleared.

The patch adds a new DOMJSClass hook to deal with getting the wrapper cache for non-nsISupports objects.

Differential Revision: https://phabricator.services.mozilla.com/D78061
2020-06-06 06:58:42 +00:00
Masatoshi Kimura 3b8943eb50 Bug 1642844 - Remove mozJSComponentLoader::ReuseGlobal. r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D78029
2020-06-03 22:53:29 +00:00
Jon Coppeard 1fa83d8c9b Bug 1642685 - Add WeakRef and FinalizationRegistry tests involving DOM objects r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D77798
2020-06-03 09:19:59 +00:00
Jon Coppeard 58b782e36e Bug 1641517 - Don't expose FinalizationRegistry.prototype.cleanupSome in the browser r=mccr8
This adds an extra pref for whether the cleanupSome method is exposed and renames the existing pref. We can turn on the pref to expose cleanupSome to get test262 coverage in the browser.

Differential Revision: https://phabricator.services.mozilla.com/D77267
2020-06-03 09:19:59 +00:00
Andrea Marchesini 22d905d24e Bug 1639833 - IntrisincStoragePrincipal should always be partitioned - part 2 - Expose PartitionedPrincipal, r=dimi
Differential Revision: https://phabricator.services.mozilla.com/D76915
2020-06-03 06:09:52 +00:00
Csoregi Natalia 2d5cafc841 Backed out 5 changesets (bug 1639833) for failures on browser_blockingIndexedDbInWorkers.js. CLOSED TREE
Backed out changeset 6b4f76d65540 (bug 1639833)
Backed out changeset c77acba1aacb (bug 1639833)
Backed out changeset 30c97666919e (bug 1639833)
Backed out changeset d769b313441a (bug 1639833)
Backed out changeset ed41b41d1b03 (bug 1639833)
2020-06-02 15:02:31 +03:00
Andrea Marchesini e31c7313ca Bug 1639833 - IntrisincStoragePrincipal should always be partitioned - part 2 - Expose PartitionedPrincipal, r=dimi
Differential Revision: https://phabricator.services.mozilla.com/D76915
2020-06-02 08:28:05 +00:00
Masatoshi Kimura 8b30e469c5 Bug 1481640 - Remove forcePermissiveCOWs(). r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D77612
2020-06-01 18:04:20 +00:00
Razvan Maries a36bb7751f Backed out 3 changesets (bug 1638153) for perma failures on cross-origin-objects.html. CLOSED TREE
Backed out changeset f7aedc92d396 (bug 1638153)
Backed out changeset 07ec713926c6 (bug 1638153)
Backed out changeset 5a656842e241 (bug 1638153)
2020-06-01 23:51:35 +03:00
Kris Maglione b3fcd970ec Bug 1638153: Part 2 - Fix uses of .rootTreeItem to get top browser window. r=geckoview-reviewers,nika,snorp
Differential Revision: https://phabricator.services.mozilla.com/D75429
2020-06-01 17:59:01 +00:00
Noemi Erli f08b043cf6 Backed out 5 changesets (bug 1639833) for causing sessionstorage related failures CLOSED TREE
Backed out changeset b36af8d9db34 (bug 1639833)
Backed out changeset 712c11904dbe (bug 1639833)
Backed out changeset 14f1e4783582 (bug 1639833)
Backed out changeset b7f14c4cfe5d (bug 1639833)
Backed out changeset b4b25034dd83 (bug 1639833)
2020-06-01 19:31:50 +03:00
Andrea Marchesini 8c0df411d1 Bug 1639833 - IntrisincStoragePrincipal should always be partitioned - part 2 - Expose PartitionedPrincipal, r=dimi
Differential Revision: https://phabricator.services.mozilla.com/D76915
2020-06-01 11:57:46 +00:00
Masatoshi Kimura b9a2ffc214 Bug 1482279 - Stop using Cu.forcePermissiveCOWs() in SpecialPowers. r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D74641
2020-05-31 03:41:03 +00:00
Tilden Windsor 9dd0c82162 Bug 1334305 - Refactored DebugDump. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D77128
2020-05-29 16:57:57 +00:00
Andrew McCreight 69800c1e15 Bug 1640964 - Remove NS_ERROR_XPC_CANT_PASS_CPOW_TO_NATIVE. r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D76870
2020-05-26 22:19:33 +00:00
Adam Vandolder a7c1394496 Bug 1640188 - Add pref and flag to enable Iterator Helpers in nightly, off by default. r=jorendorff
Differential Revision: https://phabricator.services.mozilla.com/D76542
2020-05-26 14:31:48 +00:00
Gijs Kruitbosch 38b061ef45 Bug 1638373 - remove js/ipc now that CPOWs are dead, r=mccr8
Depends on D76597

Differential Revision: https://phabricator.services.mozilla.com/D76598
2020-05-24 18:47:04 +00:00
Gijs Kruitbosch 2f983e6cfa Bug 1638373 - remove Cu.isCrossProcessWrapper now that CPOWs are dead, r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D76597
2020-05-24 23:38:17 +00:00
Tom Schuster 98d62427ed Bug 1636691 - Use pending exception stack as rejection stack for Promises. r=arai<Paste>
Differential Revision: https://phabricator.services.mozilla.com/D74541
2020-05-23 11:53:48 +00:00
Andrew McCreight 81acf0a57c Bug 1636991 - Add a comment about XPCWrappedNativeProto ownership. DONTBUILD r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D74690
2020-05-22 23:02:27 +00:00
Mihai Alexandru Michis 37ef8a125d Backed out changeset a845717e4d10 (bug 1482279) for causing multiple failures.
CLOSED TREE
2020-05-23 02:22:20 +03:00
Masatoshi Kimura 0701e89b7e Bug 1482279 - Stop using Cu.forcePermissiveCOWs() in SpecialPowers. r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D74641
2020-05-22 21:46:25 +00:00
Jon Coppeard 056fa68d8e Bug 1637318 - Add GC_PRETENURE_COUNT_2 telemetry and mark GC_PRETENURE_COUNT for expiry r=sfink
Depends on D75524

Differential Revision: https://phabricator.services.mozilla.com/D75525
2020-05-15 17:00:26 +00:00
Jon Coppeard bbb770e96c Bug 1637318 - Add GC_BUDGET_MS_2 telemetry and mark GC_BUDGET_MS for expiry r=sfink
Depends on D75523

Differential Revision: https://phabricator.services.mozilla.com/D75524
2020-05-15 15:54:16 +00:00
Jon Coppeard c1ae910c44 Bug 1637318 - Add GC_MARK_RATE_2 telemetry and mark GC_MARK_RATE for expiry r=sfink
Depends on D75522

Differential Revision: https://phabricator.services.mozilla.com/D75523
2020-05-15 15:49:31 +00:00
Jon Coppeard aa4ce4cca7 Bug 1637318 - Add GC_MARK_GRAY_MS_2 telemetry and mark GC_MARK_GRAY_MS for expiry r=sfink
Depends on D75520

Differential Revision: https://phabricator.services.mozilla.com/D75522
2020-05-15 15:48:46 +00:00
Jon Coppeard 273f5b75f3 Bug 1637318 - Add GC_MARK_ROOTS_US telemetry and mark GC_MARK_ROOTS_MS for expiry r=sfink
Most samples are between 0 and 1 ms so replace with measurement in microseconds.

Differential Revision: https://phabricator.services.mozilla.com/D75520
2020-05-15 15:47:47 +00:00
Frederik Braun de3412e689 Bug 1613609 - Add required loadinfo flag requests initiated with SystemPrincipal r=necko-reviewers,dragana
Adding the flag to existing channel/loadinfo object for:
- PushServices HTTP, WebSocket
- NetworkGeolocationProvider
- NetUtil.jsm's NewChannel
- NetworkConnectivityService
- OCSP
- Portal Detection
- ProductAddonChecker.jsm
- URLClassifier

Differential Revision: https://phabricator.services.mozilla.com/D75063
2020-05-19 08:54:58 +00:00
Tom Tung b66c778c91 Bug 1606624 - Changes on a xpconnect test; r=lth
Depends on D74596

Differential Revision: https://phabricator.services.mozilla.com/D74597
2020-05-18 02:22:21 +00:00
Tom Schuster 23d6a01f6d Bug 1638549 - Fix test broken by disabled asyncstacks. r=baku
Differential Revision: https://phabricator.services.mozilla.com/D75682
2020-05-17 17:58:52 +00:00
Nicklas Boman 4f2fa0cfa7 Bug 1515419 - fixing ToNewCString (and ToNewUnicode as well) xpcom/string/nsReadableUtils.cpp r=froydnj,necko-reviewers,valentin
Differential Revision: https://phabricator.services.mozilla.com/D17411
2020-05-17 06:58:48 +00:00
Tom Schuster a5a57442ed Bug 1636590 - Expose isPromiseRejection on nsIScriptError. r=baku
Differential Revision: https://phabricator.services.mozilla.com/D74549
2020-05-15 20:18:34 +00:00
Tom Schuster cb531f543a Bug 1636590 - Add a test suite for nsIScriptError. r=baku
This makes is easier to actually assert that we have the right exception value.
We do have similar tests already, but most of them aren't based directly
on nsIScriptError.

Differential Revision: https://phabricator.services.mozilla.com/D74528
2020-05-15 20:18:34 +00:00
Jon Coppeard 03014d6e7c Bug 1637642 - Add telemetry for weak marking phases r=sfink
Differential Revision: https://phabricator.services.mozilla.com/D75149
2020-05-15 07:17:25 +00:00
Jon Coppeard be8edb839f Bug 1637642 - Add telemetry for GC preparation phase that occurs before root marking r=sfink
Differential Revision: https://phabricator.services.mozilla.com/D75148
2020-05-15 07:14:39 +00:00
Jon Coppeard 7acb0aa81c Bug 1637663 - Remove SCC telemetry r=sfink
This was added for incremental sweeping of groups of zones (or compartments as they were then).  This has been working fine for a long time and I don't think we need to continue collecting telemetry about it.

This leaves the data collection in place as it's still reported to the profile (which makes more sense I think).

Differential Revision: https://phabricator.services.mozilla.com/D75147
2020-05-15 07:14:00 +00:00
Tom Schuster d76da80aa0 Bug 1636624 - Mitigate leaks involving exceptions with CreateSciptError. r=mccr8
Doing this kind of censoring in "CreateScriptError" turns out to be more effort
than I thought. We don't have a JSContext to create Rooted instances.
This still catches all the relevant places where we are creating script-errors without inner-window-ids.

Differential Revision: https://phabricator.services.mozilla.com/D75152
2020-05-13 17:53:57 +00:00
Iain Ireland 9206b149be Bug 1634135: Update test_xrayToJS to handle Regexp.prototype.dotAll r=bholley
We are adding support for the dotAll (/s) RegExp flag, so the list of expected properties on the RegExp prototype has to be updated.

Differential Revision: https://phabricator.services.mozilla.com/D74149
2020-05-13 16:23:33 +00:00
André Bargull 8642ae3db5 Bug 1629796: Replace finalization iterator with multiple callback calls. r=jonco
Implements the spec changes from: https://github.com/tc39/proposal-weakrefs/pull/187

The spec change removes the `FinalizationRegistryCleanupIterator` in favour of
calling the clean-up callback for each finalised value. It also allows to call
`cleanupSome()` within the callback function.

`FinalizationRegistryObject::cleanupQueuedRecords()` has been changed to iterate
from back to front, because this allows us to call `GCVector::popCopy()`, which
makes it more efficient to remove entries from the `records` vector.

Differential Revision: https://phabricator.services.mozilla.com/D70821
2020-05-13 15:25:24 +00:00
Dorel Luca 609e319c24 Merge mozilla-central to autoland. CLOSED TREE 2020-05-12 17:32:56 +03:00
Sebastian Hengst ff55bf0ffc Backed out 12 changesets (bug 1634135) for causing crashes e.g. when urls get pasted in Slack (bug 1637243). a=backout
Backed out changeset ee1018a8611a (bug 1634135)
Backed out changeset 0081b4c73633 (bug 1634135)
Backed out changeset 4eda5acc8e1f (bug 1634135)
Backed out changeset d8f770d123f2 (bug 1634135)
Backed out changeset 3f680457842f (bug 1634135)
Backed out changeset f3b9c956fa85 (bug 1634135)
Backed out changeset b3b82e1cda7f (bug 1634135)
Backed out changeset 9dddfd577a3d (bug 1634135)
Backed out changeset ba01ceb63cf3 (bug 1634135)
Backed out changeset f53110858cb9 (bug 1634135)
Backed out changeset 49b9d6a8a3a5 (bug 1634135)
Backed out changeset a73e5ff68480 (bug 1634135)
2020-05-12 16:00:06 +02:00
Yoshi Cheng-Hao Huang ede21ac58b Bug 1634720 - use UniquePtr::reset to release the pointer. r=KrisWright
After fixing the timeout, I found there's a leak for the RunnableTask
dispatched to HelperThreadPool.

Differential Revision: https://phabricator.services.mozilla.com/D74736
2020-05-12 07:15:24 +00:00
Yoshi Cheng-Hao Huang abb43a4823 Bug 1634720 : Add HelperThreadPoolShutdownObserver to shut down HelperThreadPool. r=KrisWright
When nsThreadManager shuts down, it will shutdown all the threads,
including the main thread of HelperThreadPool.

However the main thread of HelperThreadPool has been waiting.
https://searchfox.org/mozilla-central/rev/446160560bf32ebf4cb7c4e25d7386ee22667255/xpcom/threads/nsThreadPool.cpp#277

and nsThreadManager will have to wait until HelperThreadPool wakes up to
shutdown the main thread of HelperThreadPool.

Adding a HelperThreadPoolShutdownObserver to observe the
xpcom-shutdown-threads notification, and shut down HelperThreadPool
accordingly.

Differential Revision: https://phabricator.services.mozilla.com/D74735
2020-05-12 03:38:54 +00:00
Andrew McCreight f9c07914d4 Bug 1636990 - Inline NS_NewBackstagePass. r=kmag
Also, make an NS_ERROR in ~mozJSComponentLoader() into an assertion.

Differential Revision: https://phabricator.services.mozilla.com/D74691
2020-05-11 22:46:24 +00:00
Tom Schuster 25a8ce26ec Bug 1277801 - Introduce Cu.isOpaqueWrapper. r=peterv
With the following changes Object.prototype.toString is not using the JSClass' name
anymore. This means we now fail to detect opaque wrappers, because they just get the default string: [object Object]

Differential Revision: https://phabricator.services.mozilla.com/D74016
2020-05-11 20:53:10 +00:00
Iain Ireland c329847916 Bug 1634135: Update test_xrayToJS to handle Regexp.prototype.dotAll r=bholley
We are adding support for the dotAll (/s) RegExp flag, so the list of expected properties on the RegExp prototype has to be updated.

Differential Revision: https://phabricator.services.mozilla.com/D74149
2020-05-10 16:00:27 +00:00
Tom Schuster 4f64f475f2 Bug 1595046 - Make it possible to inspect every exception value in the web console. r=jonco,baku,mccr8
Differential Revision: https://phabricator.services.mozilla.com/D64437
2020-05-08 20:54:17 +00:00
Logan Smyth 208709890a Bug 1628853 - Expose a feature flag to enable/disable //# sourceXX= parsing. r=arai
These pragmas can be used to influence stack trace filenames, and to affect
how and where files show up in developer tools. In some circumstances, it can
be nice to disable allof that functionality in order to ensure that you get
the stack trace and debug information as SpiderMonkey sees it.

Differential Revision: https://phabricator.services.mozilla.com/D72103
2020-05-08 00:37:21 +00:00
Florian Quèze fa2f59b3f7 Bug 1630982 - Terminate browser-chrome mochitests with an exit(0), r=gbrown,dthayer.
Differential Revision: https://phabricator.services.mozilla.com/D71336
2020-05-07 17:34:30 +00:00
Dorel Luca d9c6949cf6 Backed out changeset b77388326b1b (bug 1630982) for causing leaks on mochitest jobs. CLOSED TREE 2020-05-07 13:49:20 +03:00
Florian Quèze c1fe95dc03 Bug 1630982 - Terminate browser-chrome mochitests with an exit(0), r=gbrown,dthayer.
Differential Revision: https://phabricator.services.mozilla.com/D71336
2020-05-07 09:25:57 +00:00
Tom Schuster f77a3af47a Bug 1277799 - Define @@toStringTag on all DOM interface prototype objects. r=peterv
Instead of manually defining toStringTag we now add the toStringTag symbol to the list of properties.
This is also how we usually define toStringTag in the JS engine.
Even though this changes more code I like this approach better. Everything is centralized in the generated bindings file.

Differential Revision: https://phabricator.services.mozilla.com/D72179
2020-05-05 17:54:51 +00:00
Simon Giesecke cbc8da0cf3 Bug 1626570 - Improve handling of copying arrays in js/xpconnect/. r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D72349
2020-05-05 10:40:31 +00:00
Razvan Maries c2b627950c Backed out 10 changesets (bug 1626570) for build bustages. CLOSED TREE
Backed out changeset a3f17d392234 (bug 1626570)
Backed out changeset 5247e1ddd5d6 (bug 1626570)
Backed out changeset c339fd44c9f8 (bug 1626570)
Backed out changeset 4c69a4c013b3 (bug 1626570)
Backed out changeset e85450d69351 (bug 1626570)
Backed out changeset 793f978248b3 (bug 1626570)
Backed out changeset 68b4c2418d83 (bug 1626570)
Backed out changeset 52d0911d4ad3 (bug 1626570)
Backed out changeset a7d4e3a59ee3 (bug 1626570)
Backed out changeset 6c06d397a5d2 (bug 1626570)
2020-05-05 13:37:08 +03:00
Simon Giesecke f13b476ee4 Bug 1626570 - Improve handling of copying arrays in js/xpconnect/. r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D72349
2020-05-05 09:49:40 +00:00
Lars T Hansen 414fee387b Bug 1478632 - wasm simd, part 1: feature gating and related prep. r=rhunt
We add a configuration option for SIMD and apply ENABLE_WASM_SIMD
throughout the engine as appropriate, mostly to insert #error or
MOZ_CRASH where things need to be done in later patches or for
architectures that we won't currently consider.

We add a command line switch for the shell and an option for
about:config and plumb the value of this through the engine.

Differential Revision: https://phabricator.services.mozilla.com/D57940
2020-05-05 08:17:47 +00:00
Gijs Kruitbosch b8cdf2ffcc Bug 1631021 - enable global sharing for BrowserTestUtils.jsm, r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D72396
2020-04-29 19:47:09 +00:00
Tom Schuster bd161088e3 Bug 1633145 - Replace INTERNED_STRING_TO_JSID. r=jandem
I am honstely still not convinced that this function should actually exists.
It seems like a convulted way of saying AtomToId, while also asserting that the atom is pinned.

Differential Revision: https://phabricator.services.mozilla.com/D72563
2020-04-30 18:18:12 +00:00
Benjamin Bouvier 675cdfa277 Bug 1618595: Disable Cranelift on aarch64 when reftypes are enabled; r=lth,perftest-reviewers,sparky
This requires adding a new JSOptions field (for internal use within the shell),
as well as a new browser pref (to support possible Cranelift benchmarking on
aarch64).

Differential Revision: https://phabricator.services.mozilla.com/D72907
2020-04-30 11:55:13 +00:00
Liang-Heng Chen 9d2d8bbeb9 Bug 1629707 - add `IntrinsicStoragePrincipal` to `nsIScriptObjectPrincipal`; r=baku
Differential Revision: https://phabricator.services.mozilla.com/D73132
2020-04-30 05:24:10 +00:00
Andrew McCreight 6bc3c0572e Bug 1632338 - Allow remote window proxies before SetNewDocument. r=peterv
In BrowsingContext::SetDocShell(), we indicate that any remote outer window
proxies need to be cleaned up, if we've transitioned from a remote window
proxy to a local one. However, we don't actually do the cleanup until
nsGlobalWindowOuter::SetNewDocument(), so don't assert if we find remote
window proxies when we're in between these two periods.

Also includes a formatting fix by clang-format.

Differential Revision: https://phabricator.services.mozilla.com/D72251
2020-04-27 15:22:53 +00:00
Tom Schuster 037471de0d Bug 1633145 - Add PropertyKey::isWellKnownSymbol. r=arai
Differential Revision: https://phabricator.services.mozilla.com/D72537
2020-04-26 17:01:57 +00:00
Tom Schuster 708481e981 Bug 1633145 - Hide internal flags in JSPropertySpec. r=arai
Consumers should not have to care about JSPROP_INTERNAL_USE_BIT.

Differential Revision: https://phabricator.services.mozilla.com/D72528
2020-04-25 14:06:40 +00:00
Simon Giesecke 191a830575 Bug 1628715 - Part 7: Add MOZ_NONNULL_RETURN to infallible nsTArray::AppendElements. r=xpcom-reviewers,necko-reviewers,nika,valentin
Differential Revision: https://phabricator.services.mozilla.com/D70831
2020-04-24 13:31:14 +00:00
Nika Layzell 00f86199f6 Bug 1625513 - Part 3: Allow importing a named object from a module with do_ImportModule, r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D71395
2020-04-21 22:33:09 +00:00
Cosmin Sabou 190731f374 Backed out 5 changesets (bug 1625513) for bc failures on browser_identity_UI.js. CLOSED TREE
Backed out changeset 88ac5d853e38 (bug 1625513)
Backed out changeset 8ac6db819435 (bug 1625513)
Backed out changeset cc19c74910d1 (bug 1625513)
Backed out changeset 8c235f0f967c (bug 1625513)
Backed out changeset 24a646225c68 (bug 1625513)
2020-04-22 00:17:08 +03:00
Nika Layzell 6841a208ad Bug 1625513 - Part 3: Allow importing a named object from a module with do_ImportModule, r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D71395
2020-04-21 18:33:49 +00:00
Noemi Erli 6ce4e6b1e0 Backed out 4 changesets (bug 1625513) for causing assertion in WindowGlobalChild.cpp
Backed out changeset 0366bbc9e0f7 (bug 1625513)
Backed out changeset 3554e0be2e66 (bug 1625513)
Backed out changeset ad09a911bc43 (bug 1625513)
Backed out changeset f2dbff5d584f (bug 1625513)
2020-04-20 22:28:20 +03:00
Nika Layzell cea1a2b9c7 Bug 1625513 - Part 3: Allow importing a named object from a module with do_ImportModule, r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D71395
2020-04-20 16:57:11 +00:00
Emilio Cobos Álvarez 61f6bf0355 Bug 866634 - Exempt pdf.js principal from script policy. r=ckerschb
Differential Revision: https://phabricator.services.mozilla.com/D71481
2020-04-20 06:47:29 +00:00
Gijs Kruitbosch 89b1bf2b4c Bug 1631117 - remove compartment's allowCPOWs flag, r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D71415
2020-04-19 14:24:07 +00:00
Andrea Marchesini 3a6775ecf7 Bug 1630947 - Update Reporting API - part 1 - ReportingObserver in workers, r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D71317
2020-04-18 12:25:57 +00:00
Gijs Kruitbosch 5ffecefa61 Bug 1620226 - remove Cu.permitCPOWsInScope and Cu.getCrossProcessWrapperTag, r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D71400
2020-04-17 21:32:38 +00:00
Cosmin Sabou 948e626a26 Backed out 2 changesets (bug 1630947) for causing build bustages on ReportingObserver.cpp. CLOSED TREE
Backed out changeset 18c357daf0f7 (bug 1630947)
Backed out changeset 6bfed9f2487d (bug 1630947)
2020-04-17 23:16:58 +03:00
Andrea Marchesini aaa72f6ebb Bug 1630947 - Update Reporting API - part 1 - ReportingObserver in workers, r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D71317
2020-04-17 19:55:28 +00:00
Yoshi Cheng-Hao Huang e68b3996b2 Bug 1628201: HelperThreadTaskHandler should use UniquePtr for mOffThreadTask. r=KrisWright
Differential Revision: https://phabricator.services.mozilla.com/D70155
2020-04-16 10:57:02 +00:00
Jon Coppeard a9cd50a889 Bug 1628751 - Replace use of standard library traits classes by the _v or _t versions r=jwalden
Differential Revision: https://phabricator.services.mozilla.com/D70405

--HG--
extra : moz-landing-system : lando
2020-04-14 09:05:55 +00:00
Razvan Maries 40bca43abb Backed out changeset ad3f58c996e5 (bug 1628201) for build bustages. CLOSED TREE 2020-04-10 17:31:01 +03:00
Yoshi Cheng-Hao Huang de3073b323 Bug 1628201: HelperThreadTaskHandler should use UniquePtr for mOffThreadTask. r=KrisWright
Differential Revision: https://phabricator.services.mozilla.com/D70155

--HG--
extra : moz-landing-system : lando
2020-04-10 12:52:35 +00:00
Mihai Alexandru Michis 5fe59763c4 Backed out changeset 152d46945b27 (bug 1628201) for causing bustages regarding UniquePtr.
CLOSED TREE

--HG--
extra : histedit_source : ddf57bae286966a214cc11f360a125bf81d5ecdd
2020-04-09 20:54:53 +03:00
Yoshi Cheng-Hao Huang a76b58aebf Bug 1628201: HelperThreadTaskHandler should use UniquePtr for mOffThreadTask. r=KrisWright
Differential Revision: https://phabricator.services.mozilla.com/D70155

--HG--
extra : moz-landing-system : lando
2020-04-08 19:38:32 +00:00
Tom Schuster 763682c095 Bug 1626100 - Replace SetPendingExceptionAndStack with a ExceptionStack version. r=sfink
Differential Revision: https://phabricator.services.mozilla.com/D69667

--HG--
extra : moz-landing-system : lando
2020-04-09 12:35:59 +00:00
Tom Schuster fae4303276 Bug 1626100 - Introduce an ExceptionStack class and StealPendingExceptionStack. r=sfink,mccr8
See also the bug for a more detailed description.

Differential Revision: https://phabricator.services.mozilla.com/D69636

--HG--
extra : moz-landing-system : lando
2020-04-09 12:35:29 +00:00
Toshihito Kikuchi 8bb38652d4 Bug 1603974 - Part 1: Implement nt::VirtualQuery consuming only ntdll.dll. r=mhowell
This patch introduces `nt::VirtualQuery` which consumes only ntdll's functions
to reduce dependency in `MMPolicy` on kernel32.dll.  With this, `MMPolicy` still
depends on kernel32.dll, that will be solved by a coming patch.

Differential Revision: https://phabricator.services.mozilla.com/D68342

--HG--
extra : moz-landing-system : lando
2020-04-08 14:27:01 +00:00
Andrew McCreight 61385fd61f Bug 1612364 - Clear mPendingException when returning to the top level event loop. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D70072

--HG--
extra : moz-landing-system : lando
2020-04-07 20:37:15 +00:00
Andrew McCreight ce9f9fb83f Bug 1627994 - Fix 'expection' typos. r=bholley
Differential Revision: https://phabricator.services.mozilla.com/D70035

--HG--
extra : moz-landing-system : lando
2020-04-07 17:00:54 +00:00
Andreas Farre 36eaf82163 Bug 1620594 - Part 2: Use SchedulerGroup::Dispatch instead of SystemGroup::Dispatch. r=nika
Depends on D67631

Differential Revision: https://phabricator.services.mozilla.com/D67632

--HG--
extra : moz-landing-system : lando
2020-04-07 15:16:33 +00:00
Daniel Varga 2617f15d0c Backed out 8 changesets (bug 1603974) for causing build bustage
CLOSED TREE

Backed out changeset ee3fb8271709 (bug 1603974)
Backed out changeset 28ef741f8f65 (bug 1603974)
Backed out changeset 631725404fb8 (bug 1603974)
Backed out changeset 484a45d16149 (bug 1603974)
Backed out changeset 5d4cd3237ec0 (bug 1603974)
Backed out changeset c2601b5bdd3e (bug 1603974)
Backed out changeset fe96d48d5b14 (bug 1603974)
Backed out changeset 9467dffe8d04 (bug 1603974)
2020-04-07 18:35:04 +03:00
Toshihito Kikuchi 18f97f01b8 Bug 1603974 - Part 1: Implement nt::VirtualQuery consuming only ntdll.dll. r=mhowell
This patch introduces `nt::VirtualQuery` which consumes only ntdll's functions
to reduce dependency in `MMPolicy` on kernel32.dll.  With this, `MMPolicy` still
depends on kernel32.dll, that will be solved by a coming patch.

Differential Revision: https://phabricator.services.mozilla.com/D68342

--HG--
extra : moz-landing-system : lando
2020-04-07 14:40:14 +00:00
Jon Coppeard 26300c631f Bug 1627666 - Remove GC_INCREMENTAL_DISABLED telemetry r=sfink
I think this was used when incremental GC was being enabled to see how whether/how frequently incremental GC got disabled.  The data is a solid 0% for the last 15 versions at least.

Depends on D69826

Differential Revision: https://phabricator.services.mozilla.com/D69827

--HG--
extra : moz-landing-system : lando
2020-04-06 16:34:10 +00:00
Jon Coppeard 407b4fe7c6 Bug 1627666 - Remove expired GC_NURSERY_BYTES telemetry r=sfink
This has been replaced by GC_NURSERY_BYTES_2.

Differential Revision: https://phabricator.services.mozilla.com/D69826

--HG--
extra : moz-landing-system : lando
2020-04-06 16:34:27 +00:00
Mihai Alexandru Michis 0eb5f699ca Backed out 2 changesets (bug 1622718) as requested by dev for causing Bug 1626727.
Backed out changeset eb632d0b3a7b (bug 1622718)
Backed out changeset 016b86b83932 (bug 1622718)
2020-04-03 06:03:25 +03:00
Tom Schuster 97d9a753fc Bug 1170775 - Rename DOM Xray DefineProperty parameter from *defined to *done. r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D68721

--HG--
extra : moz-landing-system : lando
2020-04-02 05:44:22 +00:00
Jeff Walden a655b1ae65 Bug 1626105 - Convert |JS::Evaluate| to |JS::EvaluateDontInflate| semantics, and remove |JS::EvaluateDontInflate|. r=evilpie
Differential Revision: https://phabricator.services.mozilla.com/D68911

--HG--
extra : moz-landing-system : lando
2020-03-31 01:32:46 +00:00
Jeff Walden 1416a9aaa0 Bug 1626105 - Convert |JS::CompileForNonSyntacticScope| to |JS::CompileForNonSyntacticScopeDontInflate| semantics, and remove |JS::CompileForNonSyntacticScopeDontInflate|. r=evilpie
Differential Revision: https://phabricator.services.mozilla.com/D68908

--HG--
extra : moz-landing-system : lando
2020-03-31 01:30:48 +00:00
Jeff Walden 6a774342a0 Bug 1626105 - Convert |JS::Compile| for UTF-8 to |JS::CompileDontInflate| semantics, and remove |JS::CompileDontInflate|. r=evilpie
Differential Revision: https://phabricator.services.mozilla.com/D68905

--HG--
extra : moz-landing-system : lando
2020-03-31 01:30:05 +00:00
Logan Smyth 1442e01626 Bug 1622718 - Part 1: Expose 'useCompilationScope' as an option from nsIJSSubScriptLoader. r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D68502

--HG--
extra : moz-landing-system : lando
2020-03-30 23:29:23 +00:00
Eden Chuang a56e1226e4 Bug 1623928 - Cu.reportError with 0 innerWindowID should be from chrome context r=baku
Differential Revision: https://phabricator.services.mozilla.com/D68383

--HG--
extra : moz-landing-system : lando
2020-03-30 09:01:06 +00:00
Andrew McCreight 750c11df72 Bug 1570487 - Nuke Xray waivers for local outer window proxies on navigation. r=peterv
We nuke xray waivers when we navigate outer windows out of process,
because it doesn't make much sense to have a waiver in that case.
This patch makes the behavior for navigating to local outer windows
consistent, by also nuking remote window proxies. Hopefully that
won't break anything.

This is Nightly-only for now, because it might break addons.

Differential Revision: https://phabricator.services.mozilla.com/D66495

--HG--
extra : moz-landing-system : lando
2020-03-24 19:24:03 +00:00
Tom Schuster d65152a788 Bug 1622562 - Remove ErrorReport flags everywhere. r=mccr8
Depends on D67143

Differential Revision: https://phabricator.services.mozilla.com/D67783

--HG--
extra : moz-landing-system : lando
2020-03-24 10:13:15 +00:00
Andrew McCreight 2110d31627 Bug 1582568 - Nuke CCWs for waivers for remote window proxies. r=peterv
Xray waivers for remote window proxies don't make much sense, so we nuke any
waiver when a window proxy navigates from local to remote. However, this xray
waiver can be the target of a CCW, and dead wrappers are not supposed to the
target of a CCW, so we need to find and nuke any CCWs targetting the waiver.

This requires fixing js::RemapWrapper so that it can be used to fix CCWs to
dead wrappers.

Hopefully this will fix a bunch of intermittent failures in
browser_windowProxy_transplant.js.

Differential Revision: https://phabricator.services.mozilla.com/D66459

--HG--
extra : moz-landing-system : lando
2020-03-23 15:36:40 +00:00
Tom Schuster d99e2a3133 Bug 1622562 - Remove JSREPORT_IS_WARNING everywhere. r=baku
Differential Revision: https://phabricator.services.mozilla.com/D67029

--HG--
extra : moz-landing-system : lando
2020-03-21 20:14:13 +00:00
Mihai Alexandru Michis 13d1400778 Backed out 4 changesets (bug 1622562) for causing wpt failures.
CLOSED TREE

Backed out changeset 1ab69d63949b (bug 1622562)
Backed out changeset a5c299f23df7 (bug 1622562)
Backed out changeset 233b80b283fb (bug 1622562)
Backed out changeset e76f213e7f04 (bug 1622562)

--HG--
extra : rebase_source : 3765e25897f0d8f95a7304e11713bf5aed8f5b83
2020-03-20 20:56:58 +02:00
Tom Schuster 7328dae6e3 Bug 1622562 - Remove JSREPORT_IS_WARNING everywhere. r=baku
Differential Revision: https://phabricator.services.mozilla.com/D67029

--HG--
extra : moz-landing-system : lando
2020-03-20 17:24:28 +00:00
Lars T Hansen 93f9148960 Bug 1620986 - Introduce run-time switch for multi-value. r=bbouvier,wingo
This adds a JS shell command line argument to disable multi-value (if
it is enabled at compile time) and an about:config option to do the
same in the browser.

At this time, multi-values are not enabled in the browser, so the
about:config option is not visible.

Differential Revision: https://phabricator.services.mozilla.com/D67465

--HG--
extra : moz-landing-system : lando
2020-03-20 10:58:07 +00:00
Tom Schuster 5eb9932e47 Bug 1621813 - Remove nsIScriptError.exceptionFlag. r=mccr8
I made some changes in preparation for removing nsIScriptError.flags in favor
of nsIConsoleMessage.logLevel.

Differential Revision: https://phabricator.services.mozilla.com/D66878

--HG--
extra : moz-landing-system : lando
2020-03-19 21:31:44 +00:00
Marco Bonardo 9e08ff40bd Bug 1622887 - Properly support js components implementing an [optional] out nsISupports. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D67024

--HG--
extra : moz-landing-system : lando
2020-03-18 17:54:03 +00:00
Jim Porter 11bcce27a9 Bug 1611053 - Add profiler marker for XPCJSContext::InterruptScript; r=gerald
Differential Revision: https://phabricator.services.mozilla.com/D60792

--HG--
extra : moz-landing-system : lando
2020-03-14 11:33:46 +00:00
Simon Giesecke 6f38376be4 Bug 1613985 - Use default for equivalent-to-default constructors/destructors in js. r=jorendorff
Differential Revision: https://phabricator.services.mozilla.com/D65493

--HG--
extra : moz-landing-system : lando
2020-03-16 13:47:02 +00:00
André Bargull 6b3564cef8 Bug 1618258 - Part 2: Rename FinalizationGroup to FinalizationRegistry in test files. r=jonco
Differential Revision: https://phabricator.services.mozilla.com/D66931

--HG--
rename : js/src/jit-test/tests/gc/finalizationGroup-ccw.js => js/src/jit-test/tests/gc/finalizationRegistry-ccw.js
rename : js/src/jit-test/tests/gc/finalizationGroup-gray.js => js/src/jit-test/tests/gc/finalizationRegistry-gray.js
rename : js/src/jit-test/tests/gc/finalizationGroup-oom1.js => js/src/jit-test/tests/gc/finalizationRegistry-oom1.js
rename : js/src/jit-test/tests/gc/finalizationGroup-oom2.js => js/src/jit-test/tests/gc/finalizationRegistry-oom2.js
rename : js/src/jit-test/tests/gc/finalizationGroup-oom3.js => js/src/jit-test/tests/gc/finalizationRegistry-oom3.js
rename : js/src/jit-test/tests/gc/finalizationGroup-oom4.js => js/src/jit-test/tests/gc/finalizationRegistry-oom4.js
rename : js/src/jit-test/tests/gc/finalizationGroup-records-not-initialized.js => js/src/jit-test/tests/gc/finalizationRegistry-records-not-initialized.js
rename : js/src/jit-test/tests/gc/finalizationGroup.js => js/src/jit-test/tests/gc/finalizationRegistry.js
rename : js/xpconnect/tests/mochitest/finalizationGroup_worker.js => js/xpconnect/tests/mochitest/finalizationRegistry_worker.js
rename : js/xpconnect/tests/mochitest/test_finalizationGroup.html => js/xpconnect/tests/mochitest/test_finalizationRegistry.html
rename : js/xpconnect/tests/mochitest/test_finalizationGroupInWorker.html => js/xpconnect/tests/mochitest/test_finalizationRegistryInWorker.html
extra : moz-landing-system : lando
2020-03-16 10:41:28 +00:00
Bogdan Tara c60fd3fdd2 Backed out 4 changesets (bug 1613985) for causing build bustages CLOSED TREE
Backed out changeset fba0caac746c (bug 1613985)
Backed out changeset 8605d7a19107 (bug 1613985)
Backed out changeset 41e858fbf235 (bug 1613985)
Backed out changeset 847433cf1e0a (bug 1613985)
2020-03-16 12:41:41 +02:00
Simon Giesecke d77407a756 Bug 1613985 - Use default for equivalent-to-default constructors/destructors in js. r=jorendorff
Differential Revision: https://phabricator.services.mozilla.com/D65493

--HG--
extra : moz-landing-system : lando
2020-03-16 09:38:17 +00:00
Andreea Pavel 62ee54ce79 Backed out changeset 05881652e940 (bug 1611053) for dt crashes on a CLOSED TREE 2020-03-14 01:21:24 +02:00
Jim Porter e2c03a8f87 Bug 1611053 - Add profiler marker for XPCJSContext::InterruptScript; r=gerald
Differential Revision: https://phabricator.services.mozilla.com/D60792

--HG--
extra : moz-landing-system : lando
2020-03-13 20:23:20 +00:00
Tom Schuster ff852cea9c Bug 1621817 - Remove nsIScriptError.strictFlag. r=remote-protocol-reviewers,mccr8,whimboo
I am not sure if you are okay with reviewing all those test changes.
Sadly it's not that easy to search through our huge JavaScript code
base for some generic name like 'isStrict'.

Differential Revision: https://phabricator.services.mozilla.com/D66573

--HG--
extra : moz-landing-system : lando
2020-03-13 16:12:16 +00:00
Boris Zbarsky 2c56fdef7b Bug 1373042. Remove the FileList special-case in ExportHelpers. r=bholley
Differential Revision: https://phabricator.services.mozilla.com/D66596

--HG--
extra : moz-landing-system : lando
2020-03-12 16:12:45 +00:00
Tom Schuster 31f96fb048 Bug 1617657 - Store errorMessageName in JSErrorReport. r=jorendorff,mccr8
JSErrorFormatString::name should really be baked into the binary so we
don't need to do any memory management.

Differential Revision: https://phabricator.services.mozilla.com/D65828

--HG--
extra : moz-landing-system : lando
2020-03-11 22:07:08 +00:00
Tom Schuster 00218dcac0 Bug 1275508 - Remove JavaScript werror from browser. r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D66255

--HG--
extra : moz-landing-system : lando
2020-03-11 12:20:21 +00:00
Tom Schuster 3946b3eaea Bug 1619177 - Remove remaining extra warnings code. r=tcampbell,mccr8
Differential Revision: https://phabricator.services.mozilla.com/D65830

--HG--
extra : moz-landing-system : lando
2020-03-10 22:59:41 +00:00
Tom Schuster 46973116b0 Bug 1619177 - Remove extra strict mode from shells and fix tests. r=jandem
Differential Revision: https://phabricator.services.mozilla.com/D65809

--HG--
extra : moz-landing-system : lando
2020-03-10 22:56:08 +00:00
Eden Chuang fa546ee148 Bug 1613367 - Set Cu.reportError message as from chrome context if innerWindowId is 0 r=baku
Differential Revision: https://phabricator.services.mozilla.com/D65952

--HG--
extra : moz-landing-system : lando
2020-03-10 08:54:50 +00:00
Ehsan Akhgari cde7e014c2 Bug 1620322 - Part 9: Move ContentBlockingLog to antitracking to keep all related code together in the same place; r=baku
Differential Revision: https://phabricator.services.mozilla.com/D65822

--HG--
rename : dom/base/ContentBlockingLog.cpp => toolkit/components/antitracking/ContentBlockingLog.cpp
rename : dom/base/ContentBlockingLog.h => toolkit/components/antitracking/ContentBlockingLog.h
extra : moz-landing-system : lando
2020-03-09 23:36:39 +00:00
Narcis Beleuzu 0186cbe565 Backed out 8 changesets (bug 1620322) for bustages on nsContentSink.cpp . CLOSED TREE
Backed out changeset f41739c64dff (bug 1620322)
Backed out changeset be942a7f329e (bug 1620322)
Backed out changeset a916987c7c71 (bug 1620322)
Backed out changeset ead3484ffb5f (bug 1620322)
Backed out changeset 4e1e8b9afa1a (bug 1620322)
Backed out changeset 473bba698e5a (bug 1620322)
Backed out changeset 0e5e5d41597d (bug 1620322)
Backed out changeset 31b24d79db3d (bug 1620322)

--HG--
rename : toolkit/components/antitracking/ContentBlockingLog.cpp => dom/base/ContentBlockingLog.cpp
rename : toolkit/components/antitracking/ContentBlockingLog.h => dom/base/ContentBlockingLog.h
rename : toolkit/components/antitracking/ContentBlocking.cpp => toolkit/components/antitracking/AntiTrackingCommon.cpp
rename : toolkit/components/antitracking/ContentBlocking.h => toolkit/components/antitracking/AntiTrackingCommon.h
2020-03-09 22:18:36 +02:00
Ehsan Akhgari 8530d61140 Bug 1620322 - Part 9: Move ContentBlockingLog to antitracking to keep all related code together in the same place; r=baku
Differential Revision: https://phabricator.services.mozilla.com/D65822

--HG--
rename : dom/base/ContentBlockingLog.cpp => toolkit/components/antitracking/ContentBlockingLog.cpp
rename : dom/base/ContentBlockingLog.h => toolkit/components/antitracking/ContentBlockingLog.h
extra : moz-landing-system : lando
2020-03-09 18:12:42 +00:00
Noemi Erli a48fac9e3b Backed out 8 changesets (bug 1620322) for causing bustages in ContentBlockingLog.cpp CLOSED TREE
Backed out changeset 3dcf513e36cb (bug 1620322)
Backed out changeset 46714855ce1d (bug 1620322)
Backed out changeset 0eb2b5f7322f (bug 1620322)
Backed out changeset 72d640fa0740 (bug 1620322)
Backed out changeset 4533bb4e5177 (bug 1620322)
Backed out changeset 659270edd419 (bug 1620322)
Backed out changeset 6802c18b1914 (bug 1620322)
Backed out changeset 60ff34db9f15 (bug 1620322)

--HG--
rename : toolkit/components/antitracking/ContentBlockingLog.cpp => dom/base/ContentBlockingLog.cpp
rename : toolkit/components/antitracking/ContentBlockingLog.h => dom/base/ContentBlockingLog.h
rename : toolkit/components/antitracking/ContentBlocking.cpp => toolkit/components/antitracking/AntiTrackingCommon.cpp
rename : toolkit/components/antitracking/ContentBlocking.h => toolkit/components/antitracking/AntiTrackingCommon.h
2020-03-09 19:19:41 +02:00
Ehsan Akhgari 271a1e1e51 Bug 1620322 - Part 9: Move ContentBlockingLog to antitracking to keep all related code together in the same place; r=baku
Differential Revision: https://phabricator.services.mozilla.com/D65822

--HG--
rename : dom/base/ContentBlockingLog.cpp => toolkit/components/antitracking/ContentBlockingLog.cpp
rename : dom/base/ContentBlockingLog.h => toolkit/components/antitracking/ContentBlockingLog.h
extra : moz-landing-system : lando
2020-03-09 10:23:30 +00:00
André Bargull fd2afd2541 Bug 1616882 - Part 2: Remove class fields option. r=tcampbell
Depends on D63506

Differential Revision: https://phabricator.services.mozilla.com/D63507

--HG--
extra : moz-landing-system : lando
2020-03-09 14:24:48 +00:00
André Bargull 3cfeb5044c Bug 1616882 - Part 1: Remove the 'await_fix' option. r=tcampbell,loganfsmyth
Differential Revision: https://phabricator.services.mozilla.com/D63506

--HG--
extra : moz-landing-system : lando
2020-03-05 18:34:12 +00:00
Sebastian Streich 115092bca7 Bug 1620292 - Remove Geturi usage in XPCJSRuntime.cpp r=ckerschb
Differential Revision: https://phabricator.services.mozilla.com/D65562

--HG--
extra : moz-landing-system : lando
2020-03-09 13:28:03 +00:00
Toshihito Kikuchi 0d29a60c01 Bug 1615401 - Part 1: Partially implement FileVersionInfoWin to use from OSInfo::Kernel32BaseVersion(). r=bobowen
This patch partially implements `FileVersionInfoWin` and `base::FilePath` class of
Chromium sandbox so that a coming patch can use `base::win::OSInfo::Kernel32BaseVersion()`.

Differential Revision: https://phabricator.services.mozilla.com/D65744
2020-03-06 18:51:54 +02:00
Boris Zbarsky da6fb20d19 Bug 1618011 part 8. Switch ByteString conversions to having a method name prefix. r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D64889

--HG--
extra : moz-landing-system : lando
2020-03-06 23:05:16 +00:00
Boris Zbarsky 0082f55dee Bug 1618011 part 7. Switch most error messages used in bindings to having a method name prefix. r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D64888

--HG--
extra : moz-landing-system : lando
2020-03-06 23:05:16 +00:00
Boris Zbarsky 61e0515f43 Bug 1618011 part 6. Pass a BindingCallContext (if neded) and source description to primitive conversions. r=peterv
The BindingCallContext tracks what method the conversion is for, and the source
description is how the primitive is involved in that method (e.g. "argument 5").

Differential Revision: https://phabricator.services.mozilla.com/D64887

--HG--
extra : moz-landing-system : lando
2020-03-06 23:05:16 +00:00
Boris Zbarsky e322a9eb2f Bug 1618011 part 4. Pass a BindingCallContext to dictionary Init() methods. r=peterv
Dictionaries always need a BindingCallContext, because they can throw
MSG_NOT_DICTIONARY from Init().

We allow non-binding callsites to pass JSContext*, in which case they will not
get quite-as-nice error reporting.

Differential Revision: https://phabricator.services.mozilla.com/D64885

--HG--
extra : moz-landing-system : lando
2020-03-06 23:05:15 +00:00
Arthur Iakab 14247fb057 Backed out 11 changesets (bug 1618011)for Linting failure.
CLOSED TREE

Backed out changeset 8b11ddd8999f (bug 1618011)
Backed out changeset 11df2f359473 (bug 1618011)
Backed out changeset c50121035d50 (bug 1618011)
Backed out changeset 8b8c4c60c34b (bug 1618011)
Backed out changeset b01f8c66110b (bug 1618011)
Backed out changeset 433fdf04058c (bug 1618011)
Backed out changeset 29a9227d08ac (bug 1618011)
Backed out changeset b2dfa2e66d24 (bug 1618011)
Backed out changeset 85650ee945c4 (bug 1618011)
Backed out changeset 278a213e5304 (bug 1618011)
Backed out changeset 9119aeb72ea4 (bug 1618011)
2020-03-07 00:15:57 +02:00
Boris Zbarsky 2564974432 Bug 1618011 part 8. Switch ByteString conversions to having a method name prefix. r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D64889

--HG--
extra : moz-landing-system : lando
2020-03-06 20:39:23 +00:00
Boris Zbarsky bc068d0e54 Bug 1618011 part 7. Switch most error messages used in bindings to having a method name prefix. r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D64888

--HG--
extra : moz-landing-system : lando
2020-03-06 20:39:10 +00:00
Boris Zbarsky 0a681b4df5 Bug 1618011 part 6. Pass a BindingCallContext (if neded) and source description to primitive conversions. r=peterv
The BindingCallContext tracks what method the conversion is for, and the source
description is how the primitive is involved in that method (e.g. "argument 5").

Differential Revision: https://phabricator.services.mozilla.com/D64887

--HG--
extra : moz-landing-system : lando
2020-03-06 20:38:55 +00:00
Boris Zbarsky 242fd385c0 Bug 1618011 part 4. Pass a BindingCallContext to dictionary Init() methods. r=peterv
Dictionaries always need a BindingCallContext, because they can throw
MSG_NOT_DICTIONARY from Init().

We allow non-binding callsites to pass JSContext*, in which case they will not
get quite-as-nice error reporting.

Differential Revision: https://phabricator.services.mozilla.com/D64885

--HG--
extra : moz-landing-system : lando
2020-03-06 20:30:52 +00:00
Noemi Erli cae18cfff0 Backed out changeset ae75c4984b1b (bug 1620292) for causing bustages in BasePrincipal.h CLOSED TREE 2020-03-06 23:02:03 +02:00
Sebastian Streich 69d07ec477 Bug 1620292 - Remove Geturi usage in XPCJSRuntime.cpp r=ckerschb
Differential Revision: https://phabricator.services.mozilla.com/D65562

--HG--
extra : moz-landing-system : lando
2020-03-06 20:04:33 +00:00
Boris Zbarsky 7df96355fc Bug 1448992. Get rid of nsXPCComponentsBase. r=bholley
Differential Revision: https://phabricator.services.mozilla.com/D65737

--HG--
extra : moz-landing-system : lando
2020-03-06 17:40:57 +00:00
Tim Huang 04d44bae12 Bug 1616570 - Part 1: Rename CookieSettings to CookieJarSettings. r=Ehsan
Given that we are going to add ContentBlockingAllowList in
CookieSettings, so CookieSettings will be responsible for more stuff than the
cookie behavior and cookie permission. We should use a proper name to
reflect the purpose of it. The name 'CookieSettings' is misleading that
this is only for cookie related stuff. So, we decide to rename
'CookieSettins' to 'CookieJarSettings' which serves better meaning here.

Differential Revision: https://phabricator.services.mozilla.com/D63935

--HG--
rename : netwerk/cookie/CookieSettings.cpp => netwerk/cookie/CookieJarSettings.cpp
rename : netwerk/cookie/nsICookieSettings.idl => netwerk/cookie/nsICookieJarSettings.idl
extra : moz-landing-system : lando
2020-03-04 08:59:08 +00:00
Tom Schuster 0281383267 Bug 1619171 - Don't prefix warnings with Error: in the console. r=bzbarsky
Differential Revision: https://phabricator.services.mozilla.com/D65091

--HG--
extra : moz-landing-system : lando
2020-03-03 18:14:00 +00:00
Tom Schuster 2a3ecaf824 Bug 1549641 - Do not overwrite error message in xpc::ErrorReport. r=bzbarsky
We would before always prefer the error name and message contained in the JSErrorReport,
and that was probably ok, because ErrorReportToMessageString in xpc did basically the same thing as
ErrorReportToString in js. However now that we have special code to try and retrieve overwritten
name and message properties we need to prefer aToStringResult.

There was one caller in ContentUtils that explicitly passed "<unknown>" for aToStringResult,
all other callers either use nullptr or js::ErrorReport::toStringResult().c_str.

Differential Revision: https://phabricator.services.mozilla.com/D64350

--HG--
extra : moz-landing-system : lando
2020-02-28 12:13:49 +00:00
Andrew McCreight 4babb2b5ab Bug 1609815 - Remove Web Replay C++ implementation. r=jgilbert,jandem,gbrown
Patch by bhackett and jlaster. Also reviewed by mccr8.

Differential Revision: https://phabricator.services.mozilla.com/D60197

--HG--
extra : moz-landing-system : lando
2020-02-27 17:39:15 +00:00
Andi-Bogdan Postelnicu 9e50e0961f Bug 1618581 - Resolve `AccessCheck` in `XPCWrappedNativeScope::GetComponentsJSObject`. r=jandem
Differential Revision: https://phabricator.services.mozilla.com/D64599

--HG--
extra : moz-landing-system : lando
2020-02-27 16:23:55 +00:00
Boris Zbarsky f6cdd2b50e Bug 911444 part 4. Expose a print method on PDF viewer windows. r=bholley
The method is exposed only if the consumer has the same principal as the PDF
would have if it were not getting the PDF viewer treatment.

The method just calls the print() method in the PDF viewer window.

It's enough to expose this on nsOuterWindowProxy, not RemoteOuterWindowProxy,
because PDF documents end up in the process they would have been in based on
their pre-PDF-viewer principal, since we do process determination in the parent
process but only run the pdfjs stream converter in the content process, once we
have decided which one to use.

Differential Revision: https://phabricator.services.mozilla.com/D63711

--HG--
extra : moz-landing-system : lando
2020-02-27 14:54:53 +00:00
Ciure Andrei 00dd87f6f4 Backed out changeset d407a28318e6 (bug 1609815) for causing windows ming bustages CLOSED TREE
--HG--
extra : histedit_source : b2c748e31e0f6ba8fcf9960a336e0bbd361b07e6
2020-02-27 07:05:19 +02:00
Andrew McCreight b197e1f783 Bug 1609815 - Remove Web Replay C++ implementation. r=jgilbert,jandem,gbrown
Patch by bhackett and jlaster. Also reviewed by mccr8.

Differential Revision: https://phabricator.services.mozilla.com/D60197

--HG--
extra : moz-landing-system : lando
2020-02-27 04:43:48 +00:00
Boris Zbarsky c912aa08f4 Bug 1617527. Remove the same-compartment checks when setting an exception on a JSContext r=sfink
The exception is not guaranteed to be in the context compartment anyway (e.g. changing the compartment does not wrap the exception), so there isn't much point checking it up front.  And the exception stack is always stored as an unwrapped object, so again there's no point checking it on set, since we just plan to UncheckedUnwrap it.

Differential Revision: https://phabricator.services.mozilla.com/D64004

--HG--
extra : moz-landing-system : lando
2020-02-26 21:17:15 +00:00
Kris Maglione c31aa68fb4 Bug 1535617: Part 2 - Clear weak references for most cycle collected objects on unlink. r=mccr8
This covers most cycle collected objects which support weak references, but
not the ones which inherit from a cycle collected class and don't do any cycle
collection on their own.

Differential Revision: https://phabricator.services.mozilla.com/D63962

--HG--
extra : moz-landing-system : lando
2020-02-25 19:44:39 +00:00
Dorel Luca 1def5d818a Backed out 4 changesets (bug 911444) for Mochitest failures in dom/base/test/test_pdf_print.html. CLOSED TREE
Backed out changeset d156bbaabbd5 (bug 911444)
Backed out changeset a32592af0b11 (bug 911444)
Backed out changeset b96d0a37ed1a (bug 911444)
Backed out changeset fd2e3e8728d9 (bug 911444)
2020-02-25 00:11:50 +02:00
Boris Zbarsky b4ea855936 Bug 911444 part 4. Expose a print method on PDF viewer windows. r=bholley
The method is exposed only if the consumer has the same principal as the PDF
would have if it were not getting the PDF viewer treatment.

The method just calls the print() method in the PDF viewer window.

It's enough to expose this on nsOuterWindowProxy, not RemoteOuterWindowProxy,
because PDF documents end up in the process they would have been in based on
their pre-PDF-viewer principal, since we do process determination in the parent
process but only run the pdfjs stream converter in the content process, once we
have decided which one to use.

Differential Revision: https://phabricator.services.mozilla.com/D63711

--HG--
extra : moz-landing-system : lando
2020-02-22 05:25:35 +00:00
Sylvestre Ledru 17f939518a bug 1617532 - js/ replace typedef by using r=jandem
Done with:
./mach static-analysis check --checks="-*, modernize-use-using" --fix js/

Differential Revision: https://phabricator.services.mozilla.com/D63821

--HG--
extra : moz-landing-system : lando
2020-02-24 11:08:17 +00:00
Masatoshi Kimura a37fc61f17 Bug 1617415 - Remove nsTSubstring<T>::ReplaceASCII. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D63775

--HG--
extra : moz-landing-system : lando
2020-02-23 01:01:33 +00:00
Boris Zbarsky 0a38e48eb3 Bug 267645 part 2. Sanitize exceptions from exported functions. r=xeonchen,bholley
Differential Revision: https://phabricator.services.mozilla.com/D35996

--HG--
extra : moz-landing-system : lando
2020-02-22 05:01:59 +00:00
Boris Zbarsky 3acaa3cda8 Bug 267645 part 1. Add a way to ask for DOMException to be exposed in sandboxes. r=bholley
Differential Revision: https://phabricator.services.mozilla.com/D63278

--HG--
extra : moz-landing-system : lando
2020-02-22 04:56:52 +00:00
Simon Giesecke 9350e6b741 Bug 1613985 - Use MOZ_COUNTED_DEFAULT_CTOR_*/MOZ_COUNTED_DTOR_* macros. r=froydnj
This removes the need for explicit #ifdef NS_BUILD_REFCNT_LOGGING without
introducing user-defined destructors when it is not defined.

Also, some uses of virtual for declaring destructors are replaced by the
appropriate override declaration through these changes.

Differential Revision: https://phabricator.services.mozilla.com/D62604

--HG--
extra : moz-landing-system : lando
2020-02-20 11:40:14 +00:00
Dorel Luca d5f9df8ee1 Backed out 2 changesets (bug 1613985) for Build bustage on Windows2012. CLOSED TREE
Backed out changeset fd177b40b561 (bug 1613985)
Backed out changeset fb6d62b7f28d (bug 1613985)
2020-02-19 22:22:41 +02:00
Simon Giesecke 59b23375c0 Bug 1613985 - Use MOZ_COUNTED_DEFAULT_CTOR_*/MOZ_COUNTED_DTOR_* macros. r=froydnj
This removes the need for explicit #ifdef NS_BUILD_REFCNT_LOGGING without
introducing user-defined destructors when it is not defined.

Also, some uses of virtual for declaring destructors are replaced by the
appropriate override declaration through these changes.

Differential Revision: https://phabricator.services.mozilla.com/D62604

--HG--
extra : moz-landing-system : lando
2020-02-19 18:05:38 +00:00
Jed Davis ee171b6406 Bug 1615155 - Don't generate default `Recv__delete__` if there are args. r=nika
The default method implementations cause problems when trying to
override them with different types in a direct call class.

For the `Recv__delete__` case there's a simple solution: omit it if
there are any arguments, because it doesn't make much sense to specify
arguments and then completely ignore them, and the no-arg case isn't a
problem for overriding.

Differential Revision: https://phabricator.services.mozilla.com/D62977

--HG--
extra : moz-landing-system : lando
2020-02-18 20:46:21 +00:00
Andrew McCreight 5ccc4cff06 Bug 1616327 - Use fallible SetLength in XPCConvert::JSData2Native. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D63219

--HG--
extra : moz-landing-system : lando
2020-02-18 19:46:14 +00:00
Masatoshi Kimura 7510e3d9e4 Bug 1602485. r=aklotz,froydnj
Differential Revision: https://phabricator.services.mozilla.com/D60344

--HG--
extra : moz-landing-system : lando
2020-02-10 22:05:23 +00:00
Tom Ritter 87c65e049e Bug 1599226 - Change Ion-for-Trusted-Principals into Jits-for-Trusted-Principals r=jandem
Because Tor disables both the Ion Jit and the Baseline Jit, we want
to enable both of them for trusted principals; not just Ion.

Differential Revision: https://phabricator.services.mozilla.com/D61272

--HG--
extra : moz-landing-system : lando
2020-02-13 19:09:41 +00:00
Tom Ritter 67489f798f Bug 1599226 - Allow enabling Ion selectively on addon and system principal r=jandem
Differential Revision: https://phabricator.services.mozilla.com/D61076

--HG--
extra : moz-landing-system : lando
2020-02-13 19:07:35 +00:00
Simon Giesecke b50347f917 Bug 1611415 - Prefer using std::move over forget. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D60980

--HG--
extra : moz-landing-system : lando
2020-02-13 14:38:48 +00:00
Ted Campbell 211e335615 Bug 1615143 - Eliminate TraceKind::LazyScript. r=jonco
Now that JSScript and LazyScript share a trace method, we can use a single
TraceKind within the GC. To acheive this we also must remove eager marking of
LazyScripts.

Differential Revision: https://phabricator.services.mozilla.com/D62681

--HG--
extra : moz-landing-system : lando
2020-02-13 14:33:33 +00:00
shindli 91aa0518dd Backed out changeset 0c982bc69cb3 (bug 1611415) for causing build bustages in /builds/worker/workspace/build/src/obj-firefox/dist/include/nsCOMPtr CLOSED TREE 2020-02-12 20:13:29 +02:00
Simon Giesecke f604a47fa5 Bug 1611415 - Applied FixItHints from mozilla-non-std-move. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D60980

--HG--
extra : moz-landing-system : lando
2020-02-12 17:24:41 +00:00
Jon Coppeard edef790b40 Bug 1614650 - Assert that finalizers don't rely on the mark state of other cells r=sfink,mccr8
This gives JSContext a more fine-grained view of which part of the GC is running on its thread, to separate out finalization from sweeping generally.

I had to remove an assertion in xpconnect which was the only place where this currently happened.

Differential Revision: https://phabricator.services.mozilla.com/D62453

--HG--
extra : moz-landing-system : lando
2020-02-12 10:22:55 +00:00
Logan Smyth a3da23d98b Bug 1609426 - Part 2: Expose more possible Sandbox bindings. r=bzbarsky
The debugger needs references to the DOM native functions for its whitelist
of pure functions that allow eager evaluation. These whitelist validations
can happen for many objects across many realms, so it is much easier if we
can pull these functions from a single central sandbox instead of trying to
pull them in from a specific content realm.

Differential Revision: https://phabricator.services.mozilla.com/D61964

--HG--
extra : moz-landing-system : lando
2020-02-12 02:03:02 +00:00
J.C. Jones ac5dfc4597 Bug 1333140 - Require SecureContext for WebCrypto r=bholley,keeler,baku
Adds [SecureContext] for crypto.subtle, CryptoKey, and SubtleCrypto, retiring
the WebCrypto WPT overrides for WebCryptoAPI/historical.any.js.

Rebased on https://phabricator.services.mozilla.com/D58743

Differential Revision: https://phabricator.services.mozilla.com/D58555

--HG--
extra : moz-landing-system : lando
2020-02-11 09:25:09 +00:00
Jan de Mooij 5600a9f9bc Bug 1613594 part 8 - Rename ionBuilder memory reporter to ionCompileTask. r=iain
Differential Revision: https://phabricator.services.mozilla.com/D62015

--HG--
extra : moz-landing-system : lando
2020-02-10 08:50:51 +00:00
Andrew McCreight 78d52fad9d Bug 1613465 - Remove two null checks of infallible new in XPConnect. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D61742

--HG--
extra : moz-landing-system : lando
2020-02-06 13:19:58 +00:00
Noemi Erli c2195932ec Backed out 3 changesets (bug 1599226) for causing hazards busatges CLOSED TREE
Backed out changeset 05b2d3c59b88 (bug 1599226)
Backed out changeset 528083f7cf98 (bug 1599226)
Backed out changeset ad782d625431 (bug 1599226)
2020-02-10 22:25:32 +02:00
Tom Ritter d2a5543efd Bug 1599226 - Change Ion-for-Trusted-Principals into Jits-for-Trusted-Principals r=jandem
Because Tor disables both the Ion Jit and the Baseline Jit, we want
to enable both of them for trusted principals; not just Ion.

Differential Revision: https://phabricator.services.mozilla.com/D61272

--HG--
extra : moz-landing-system : lando
2020-02-04 18:53:40 +00:00
Tom Ritter d31708964d Bug 1599226 - Allow enabling Ion selectively on addon and system principal r=jandem
Differential Revision: https://phabricator.services.mozilla.com/D61076

--HG--
extra : moz-landing-system : lando
2020-02-04 03:15:13 +00:00
Jonathan Kingston d9d928a6df Bug 1273687 - Add isSecureContext to xpconnect sandboxes r=bholley
Differential Revision: https://phabricator.services.mozilla.com/D58743

--HG--
extra : moz-landing-system : lando
2020-02-07 16:16:13 +00:00
Ted Campbell 3a601cbd72 Bug 1612863 - Use OOM crash when InitSelfHostedCode fails. r=mccr8
The browser is unable to start if this operation fails, but we should track
the difference between OOM and other forms of failure. This should now
classify OOM errors correctly in crash stats.

Differential Revision: https://phabricator.services.mozilla.com/D61779

--HG--
extra : moz-landing-system : lando
2020-02-06 15:23:38 +00:00
Olli Pettay f49348082e Bug 1612431, it is enough to update existing browsing context name when changing iframe.name, r=kmag
This brings back some of the behavior we had before bug 1578628.

Differential Revision: https://phabricator.services.mozilla.com/D61637

--HG--
extra : moz-landing-system : lando
2020-02-06 18:44:05 +00:00
Jan de Mooij f67821a2cf Bug 1613875 - Fix Wasm helper thread memory reporter. r=lth
Differential Revision: https://phabricator.services.mozilla.com/D62006

--HG--
extra : moz-landing-system : lando
2020-02-07 12:03:25 +00:00
Andrew McCreight f058acf8e8 Bug 1612447, part 4 - Use UniquePtr for XPCMaps. r=bzbarsky
The main advantage here is that it documents who really owns the
maps.

Differential Revision: https://phabricator.services.mozilla.com/D61330

--HG--
extra : moz-landing-system : lando
2020-02-05 03:30:48 +00:00
Andrew McCreight 3fb9c6fefb Bug 1612447, part 3 - Fix sizes of XPCMaps. r=bzbarsky
This will make the places we call ctors a little nicer, and the
extra flexibility is never used.

Differential Revision: https://phabricator.services.mozilla.com/D61329

--HG--
extra : moz-landing-system : lando
2020-02-05 03:29:29 +00:00
Andrew McCreight 72a91c0d86 Bug 1612447, part 2 - Inline the XPCMap newMap methods. r=bzbarsky
These methods used to do something interesting, but now they
are just wrappers around constructor calls.

This patch also gets rid of the default ctors that are "deleted"
by a comment. There's no need to delete them because we are already
defining a constructor, so no default constructor will be created.

Differential Revision: https://phabricator.services.mozilla.com/D61328

--HG--
extra : moz-landing-system : lando
2020-02-05 03:25:03 +00:00
Andrew McCreight 15a9f219cd Bug 1612447, part 1 - Remove some XPCMap Remove methods that are never called. r=bzbarsky
Things are now removed from these maps using iterators.

Differential Revision: https://phabricator.services.mozilla.com/D61327

--HG--
extra : moz-landing-system : lando
2020-02-05 03:22:50 +00:00
Emilio Cobos Álvarez 322cec0c5e Bug 1612510 - Remove IsChromeOrXBL*. r=bzbarsky
XBL is no longer a thing... Also, should we rename AllowContentXBLScope?

Differential Revision: https://phabricator.services.mozilla.com/D61359

--HG--
extra : moz-landing-system : lando
2020-02-04 21:28:57 +00:00
Boris Zbarsky b88d5ac5a8 Bug 1612213 part 1. Switch most consumers of ThrowDOMException to the new methods. r=smaug,jgilbert
Differential Revision: https://phabricator.services.mozilla.com/D61267

--HG--
extra : moz-landing-system : lando
2020-02-03 20:19:11 +00:00
Andrew McCreight a4cdc71de2 Bug 1612384 - Remove mozJSComponentLoader::CompilationScope(). r=kmag
It is unused.

Differential Revision: https://phabricator.services.mozilla.com/D61314

--HG--
extra : moz-landing-system : lando
2020-01-30 19:35:49 +00:00
Tom Tung 6db05b23ac Bug 1599496 - Turn javascript.options.shared_memory on by default on early Beta; r=bzbarsky
This patch mainly enables the pref for SharedArrayBuffer on early Beta. (We have
already enabled that on Nightly by default)

This change causes some tests to fail. This patch handles the failures for
a mochitest and web-platform-tests.

Differential Revision: https://phabricator.services.mozilla.com/D60965

--HG--
extra : moz-landing-system : lando
2020-01-28 14:53:08 +00:00
Jon Coppeard 6b1a075865 Bug 1610412 - Fix FinalizationGroup test that assumed the browser wouldn't trigger a GC during the test r=mccr8
Depends on D60866

Differential Revision: https://phabricator.services.mozilla.com/D60867

--HG--
extra : moz-landing-system : lando
2020-01-24 20:53:43 +00:00
Andrew McCreight 359a6cd8c2 Bug 1611173 - Remove support for non-nsISupports XPIDL interfaces. r=nika
It used to be that some XPIDL interfaces were allowed to be non-nsISupports,
and were only used to hold a bunch of constants. It appears that we've now
had enough de-COM work happen that there are no longer any, so we can remove
support for this.

Differential Revision: https://phabricator.services.mozilla.com/D61008

--HG--
extra : moz-landing-system : lando
2020-01-24 23:13:30 +00:00
Boris Zbarsky 7a190b94ba Bug 1181957. Don't set up an AutoEntryScript if we're not planning to call script in nsXPCWrappedJS::DelegatedQueryInterface. r=mccr8
For builtinclass interfaces, or ones not declared in IDL, we don't call out
into scripted QueryInterface anyway, so we can return earlier, before we ever
set up the AutoEntryScript.

Differential Revision: https://phabricator.services.mozilla.com/D61005

--HG--
extra : moz-landing-system : lando
2020-01-25 00:13:56 +00:00
Brindusan Cristian d5beb3eb6b Backed out changeset 27bd6308aff7 (bug 1611173) for build bustages at runtests.py. CLOSED TREE 2020-01-25 00:19:04 +02:00
Andrew McCreight f446abff25 Bug 1611173 - Remove support for non-nsISupports XPIDL interfaces. r=nika
It used to be that some XPIDL interfaces were allowed to be non-nsISupports,
and were only used to hold a bunch of constants. It appears that we've now
had enough de-COM work happen that there are no longer any, so we can remove
support for this.

Differential Revision: https://phabricator.services.mozilla.com/D61008

--HG--
extra : moz-landing-system : lando
2020-01-24 21:59:35 +00:00
Brindusan Cristian d5dee0c16b Backed out changeset 64c8ab5ec067 (bug 1611173) for linting failure at xpidl.py. CLOSED TREE 2020-01-24 23:54:00 +02:00
Andrew McCreight ba3997abc8 Bug 1611173 - Remove support for non-nsISupports XPIDL interfaces. r=nika
It used to be that some XPIDL interfaces were allowed to be non-nsISupports,
and were only used to hold a bunch of constants. It appears that we've now
had enough de-COM work happen that there are no longer any, so we can remove
support for this.

Differential Revision: https://phabricator.services.mozilla.com/D61008

--HG--
extra : moz-landing-system : lando
2020-01-24 21:34:24 +00:00
Andrea Marchesini c4cb10712a Bug 1609990 - AgentCluster comparison in MessagePort and BroadcastChannel - part 3 - CloneDataPolicy, r=smaug,sfink,lth
Differential Revision: https://phabricator.services.mozilla.com/D60485

--HG--
extra : moz-landing-system : lando
2020-01-24 16:31:21 +00:00
Noemi Erli e4b712dcb8 Backed out 4 changesets (bug 1609990) for causing Spidermonkey rust bustage CLOSED TREE
Backed out changeset 81a77bb3772c (bug 1609990)
Backed out changeset d4524885cb97 (bug 1609990)
Backed out changeset c95aac908332 (bug 1609990)
Backed out changeset bae3e50ab64d (bug 1609990)
2020-01-24 18:13:24 +02:00
Andrea Marchesini ac6024f408 Bug 1609990 - AgentCluster comparison in MessagePort and BroadcastChannel - part 3 - CloneDataPolicy, r=smaug,sfink,lth
Differential Revision: https://phabricator.services.mozilla.com/D60485

--HG--
extra : moz-landing-system : lando
2020-01-24 15:25:24 +00:00