searching for reviewer(Manishearth)
8ed2557771a8cab161267b48ad662da0e4284597: Bug 1476445 - Use an acquire load for is_unique in servo_arc. r=manishearth
Bobby Holley <bobbyholley@gmail.com> - Tue, 17 Jul 2018 22:23:26 +0000 - rev 819642
Push
116603 by bmo:rcaliman@mozilla.com at Wed, 18 Jul 2018 09:50:41 +0000
Bug 1476445 - Use an acquire load for is_unique in servo_arc. r=manishearth
MozReview-Commit-ID: Dv7Rql4KUgr
Differential Revision:
https://phabricator.services.mozilla.com/D2205
00dd151d33d3f6d7f21c7dd450ca3b81ec061249: Bug 1459367 - Convert NS_STYLE_IMAGELAYER_ATTACHMENT_* to enum class. r=manishearth
Kristen Wright <kwright@mozilla.com> - Tue, 08 May 2018 15:05:33 -0700 - rev 793921
Push
109534 by mgregan@mozilla.com at Fri, 11 May 2018 00:59:12 +0000
Bug 1459367 - Convert NS_STYLE_IMAGELAYER_ATTACHMENT_* to enum class. r=manishearth
Converted NS_STYLE_IMAGELAYER_ATTATCHMENT_* vals to enum class, StyleImageLayerAttachment.
af621dc793aaeb4a787748981cde5ca2bd0709b8: Bug 1455784 - Update StyleSource to use ArcUnion. r=Manishearth
Bobby Holley <bobbyholley@gmail.com> - Fri, 20 Apr 2018 16:28:33 -0700 - rev 788169
Push
107916 by bmo:jaws@mozilla.com at Thu, 26 Apr 2018 00:14:29 +0000
Bug 1455784 - Update StyleSource to use ArcUnion. r=Manishearth
MozReview-Commit-ID: AT4sud9goGV
5a517a7c8cf23646603c65da037cd6b979c84682: Bug 1455784 - ArcUnion. r=Manishearth
Bobby Holley <bobbyholley@gmail.com> - Fri, 20 Apr 2018 15:48:18 -0700 - rev 788168
Push
107916 by bmo:jaws@mozilla.com at Thu, 26 Apr 2018 00:14:29 +0000
Bug 1455784 - ArcUnion. r=Manishearth
MozReview-Commit-ID: Jxp2A7cj6CV
29905fcd0df973c678d12b82173b514115d6e075: servo: Merge #20603 - Run rustfmt on selectors, servo_arc, and style (from bholley:rustfmt_style); r=Manishearth
Bobby Holley <bobbyholley@gmail.com> - Tue, 10 Apr 2018 21:00:11 -0400 - rev 780390
Push
105982 by plingurar@mozilla.com at Wed, 11 Apr 2018 10:46:01 +0000
servo: Merge
#20603 - Run rustfmt on selectors, servo_arc, and style (from bholley:rustfmt_style); r=Manishearth
Now that rustfmt is getting close to stable, and work on the style system has died down a bit, it seemed like an opportune time to auto-format the style crates.
The first commit disables import reordering, since tidy and rustfmt don't currently agree on the correct ordering. The second commit does a bunch of manual fixups such that the output of rustfmt passes tidy. The third commit runs rustfmt on the three aforementioned crate.
There are a few dozen warnings in the style crate about lines longer than 100 characters. It would be good to fix these, but I don't have time for that now.
Source-Repo:
https://github.com/servo/servo
Source-Revision:
9a900ef019cd643bff961d7b20db6da69f3edb29
0182516b26d30a006319595eaf16ac3da6832a2f: servo: Merge #20598 - Four nondescript WebGL improvements (from servo:webgl); r=Manishearth
Anthony Ramine <n.oxyde@gmail.com> - Tue, 10 Apr 2018 04:28:40 -0400 - rev 779833
Push
105891 by bmo:jaws@mozilla.com at Tue, 10 Apr 2018 18:27:48 +0000
servo: Merge
#20598 - Four nondescript WebGL improvements (from servo:webgl); r=Manishearth
Source-Repo:
https://github.com/servo/servo
Source-Revision:
ce72e526566de70ed71684ebc39a531f59c92aa5
cdf8e9c396b9d8a3a1fb77d8c72dfde43e978c3e: servo: Merge #20247 - Stop unconditionally collecting traversal statistics in nightly builds (from bholley:fix_stat_collection); r=Manishearth
Bobby Holley <bobbyholley@gmail.com> - Thu, 08 Mar 2018 15:53:11 -0500 - rev 765215
Push
102006 by bmo:ken.vandine@canonical.com at Fri, 09 Mar 2018 10:57:30 +0000
servo: Merge
#20247 - Stop unconditionally collecting traversal statistics in nightly builds (from bholley:fix_stat_collection); r=Manishearth
The current code also makes us panic when DUMP_STYLE_STATISTICS=1 is
set. :-(
Source-Repo:
https://github.com/servo/servo
Source-Revision:
4c797dfb5239c5e9a4014e91ed121ef9cf641ad0
0ca4ef640c8b7d1a25e0dcaf80d0410b807b64d5: servo: Merge #20210 - style: Add a comment about the weird setup for justify-items (from emilio:justify-items-kinda-sucks); r=Manishearth
Emilio Cobos Álvarez <emilio@crisal.io> - Tue, 06 Mar 2018 05:29:17 -0500 - rev 763834
Push
101568 by kgupta@mozilla.com at Tue, 06 Mar 2018 19:24:58 +0000
servo: Merge
#20210 - style: Add a comment about the weird setup for justify-items (from emilio:justify-items-kinda-sucks); r=Manishearth
And derive ToCss while at it.
Source-Repo:
https://github.com/servo/servo
Source-Revision:
226d9a5b0e69185b95c62e79b81044beba477654
06145412275073cce5e30b4f187f305d22e9dbff: servo: Merge #20135 - Clean up after some disk-space intensive builds (from servo:jdm-patch-13); r=Manishearth
Josh Matthews <josh@joshmatthews.net> - Tue, 27 Feb 2018 13:15:02 -0500 - rev 760870
Push
100769 by bmo:emilio@crisal.io at Wed, 28 Feb 2018 10:33:28 +0000
servo: Merge
#20135 - Clean up after some disk-space intensive builds (from servo:jdm-patch-13); r=Manishearth
This should help the ongoing disk usage problems.
Source-Repo:
https://github.com/servo/servo
Source-Revision:
068c1eb9fbff43bcf089c7c27101c72ef205b0c8
9450c630e1d6477f5d8e557caadce408e399ffbf: Bug 1438811: Remove the remaining bits of the traversal telemetry stuff. r?Manishearth
draft
Emilio Cobos Álvarez <emilio@crisal.io> - Fri, 16 Feb 2018 13:14:13 +0100 - rev 756806
Push
99555 by bmo:emilio@crisal.io at Sun, 18 Feb 2018 13:35:44 +0000
Bug 1438811: Remove the remaining bits of the traversal telemetry stuff. r?Manishearth
MozReview-Commit-ID: 2dA5usbGQRt
51d774eb06aea89b69127555fbea3008398ef376: Bug 1438811: Remove the remaining bits of the traversal telemetry stuff. r=manishearth
Emilio Cobos Álvarez <emilio@crisal.io> - Fri, 16 Feb 2018 13:14:13 +0100 - rev 756659
Push
99527 by bmo:mcmanus@ducksong.com at Sat, 17 Feb 2018 13:11:35 +0000
Bug 1438811: Remove the remaining bits of the traversal telemetry stuff. r=manishearth
MozReview-Commit-ID: 2dA5usbGQRt
30e38396a92e2dfa5d1b84fe3d7bac60135499bc: Bug 1438811: Remove the remaining bits of the traversal telemetry stuff. r?Manishearth
draft
Emilio Cobos Álvarez <emilio@crisal.io> - Fri, 16 Feb 2018 13:14:13 +0100 - rev 756591
Push
99496 by bmo:emilio@crisal.io at Sat, 17 Feb 2018 00:48:38 +0000
Bug 1438811: Remove the remaining bits of the traversal telemetry stuff. r?Manishearth
MozReview-Commit-ID: 2dA5usbGQRt
f59ba5133af69633a7da9b8e06b3f032dc89247a: Bug 1438811: Remove the remaining bits of the traversal telemetry stuff. r?Manishearth
draft
Emilio Cobos Álvarez <emilio@crisal.io> - Fri, 16 Feb 2018 13:14:13 +0100 - rev 756434
Push
99490 by bmo:emilio@crisal.io at Sat, 17 Feb 2018 00:02:16 +0000
Bug 1438811: Remove the remaining bits of the traversal telemetry stuff. r?Manishearth
MozReview-Commit-ID: 2dA5usbGQRt
c5832fb7c49fa550849e1461a06fbe465b888e09: Bug 1438811: Remove the remaining bits of the traversal telemetry stuff. r?Manishearth
draft
Emilio Cobos Álvarez <emilio@crisal.io> - Fri, 16 Feb 2018 13:14:13 +0100 - rev 756255
Push
99446 by bmo:emilio@crisal.io at Fri, 16 Feb 2018 18:07:52 +0000
Bug 1438811: Remove the remaining bits of the traversal telemetry stuff. r?Manishearth
MozReview-Commit-ID: 2dA5usbGQRt
5b6c75e32c7de348169703d08f3e0f1ba860be30: Bug 1438811: Remove the remaining bits of the traversal telemetry stuff. r?Manishearth
draft
Emilio Cobos Álvarez <emilio@crisal.io> - Fri, 16 Feb 2018 13:14:13 +0100 - rev 756106
Push
99377 by bmo:emilio@crisal.io at Fri, 16 Feb 2018 12:15:33 +0000
Bug 1438811: Remove the remaining bits of the traversal telemetry stuff. r?Manishearth
MozReview-Commit-ID: 2dA5usbGQRt
c1ea84b7d9b22460de822d7ef24c0e137bb02e43: servo: Merge #20011 - style: Tidy Stylist::compute_for_declarations (from emilio:cleanup-for-declarations-stuff); r=Manishearth
Emilio Cobos Álvarez <emilio@crisal.io> - Sat, 10 Feb 2018 06:45:52 -0500 - rev 753570
Push
98602 by bmo:vivek3zero@gmail.com at Sat, 10 Feb 2018 22:19:26 +0000
servo: Merge
#20011 - style: Tidy Stylist::compute_for_declarations (from emilio:cleanup-for-declarations-stuff); r=Manishearth
Source-Repo:
https://github.com/servo/servo
Source-Revision:
0098d519030f395f94f3f82fc04b93227fdff4ec
4e655361be5a1971300c15f58ec65c81f82ba826: Bug 1423840 (attempt 2) - Rewrite the prefs parser. r=glandium,Manishearth
Nicholas Nethercote <nnethercote@mozilla.com> - Thu, 01 Feb 2018 16:21:47 +1100 - rev 750076
Push
97533 by jhofmann@mozilla.com at Thu, 01 Feb 2018 10:48:29 +0000
Bug 1423840 (attempt 2) - Rewrite the prefs parser. r=glandium,Manishearth
The prefs parser has two significant problems.
- It doesn't separate tokenizing from parsing.
- It is implemented as a loop around a big switch on a "current state"
variable.
As a result, it is hard to understand and modify, slower than it could be, and
in obscure cases (involving comments and whitespace) it fails to parse what
should be valid input.
This patch replaces it with a recursive descent parser (albeit one without any
recursion!) that has separate tokenization. The new parser is easier to
understand and modify, more correct, and has better error messages. It doesn't
do error recovery, but that would be much easier to add than in the old parser.
The new parser also runs about 1.9x faster than the existing parser. (As
measured by parsing greprefs.js's contents from memory 1000 times in
succession, omitting the prefs hash table construction. If the table
construction is included, it's about 1.6x faster.)
The new parser is slightly stricter than the old parser in a few ways.
- Disconcertingly, the old parser allowed arbitrary junk between prefs
(including at the start and end of the prefs file) so long as that junk
didn't include any of the following chars: '/', '#', 'u', 's', 'p'. I.e.
lines like these:
!foo@bar&pref("prefname", true);
ticky_pref("prefname", true); // missing 's' at start
User_pref("prefname", true); // should be 'u' at start
would all be treated the same as this:
pref("prefname", true);
The new parser disallows such junk because it isn't necessary and seems like
an unintentional botch by the old parser.
- The old parser allowed character 0x1a (SUB) between tokens and treated it
like '\n'.
The new parser does not allow this character. SUB was used to indicate
end-of-file (*not* end-of-line) in some old operating systems such as MS-DOS,
but this doesn't seem necessary today.
- The old parser tolerated (with a warning) invalid escape sequences within
string literals -- such as "\q" (not a valid escape) and "\x1" and "\u12"
(both of which have insufficient hex digits) -- accepting them literally.
The new parser does not tolerate invalid escape sequences because it doesn't
seem necessary and would complicate things.
- The old parser tolerated character 0x00 (NUL) within string literals; this is
dangerous because C++ code that manipulates string values with embedded NULs
will almost certainly consider those chars as end-of-string markers.
The new parser treats NUL chars as end-of-file, to avoid this danger and
because it facilitates a significant optimization (described within the
code).
- The old parser allowed integer literals to overflow, silently wrapping them.
The new parser treats integer overflow as a parse error. This seems better,
and it caught existing overflows of places.database.lastMaintenance, in
testing/profiles/prefs_general.js (
bug 1424030) and
testing/talos/talos/config.py (
bug 1434813).
The first of these changes meant that a couple of existing prefs with ";;" at
the end had to be changed (done in the preceding patch).
The minor increase in strictness shouldn't be a problem for default pref files
such as greprefs.js within the application (which we can modify), nor for
app-written prefs files such as prefs.js. It could affect user-written prefs
files such as user.js; the experience above suggests that integer overflow and
";;" are the most likely problems in practice. In my opinion, the risk here is
acceptable.
The new parser also does a better job of tracking line numbers because it (a)
treats "\r\n" sequences as a single end-of-line marker, and (a) pays attention
to end-of-line sequences within string literals.
Finally, the patch adds thorough tests of both valid and invalid syntax.
MozReview-Commit-ID: JD3beOQl4AJ
593fe6b692c74531899bf721c1e73868f56a6c8a: servo: Merge #19912 - style: Temporarily use OrderMap on Gecko (from emilio:ordermap); r=Manishearth
Emilio Cobos Álvarez <emilio@crisal.io> - Wed, 31 Jan 2018 21:33:36 -0600 - rev 750070
Push
97533 by jhofmann@mozilla.com at Thu, 01 Feb 2018 10:48:29 +0000
servo: Merge
#19912 - style: Temporarily use OrderMap on Gecko (from emilio:ordermap); r=Manishearth
This will allow us to discard std hash map as a source of crashes.
Source-Repo:
https://github.com/servo/servo
Source-Revision:
e6d9c251d1b9770aa520bf358b79d906a00d71bb
e8b798a5205ad27d067b91210efb46df7ddab45d: Bug 1423840 - Rewrite the prefs parser. r=glandium,Manishearth
Nicholas Nethercote <nnethercote@mozilla.com> - Sun, 03 Dec 2017 00:26:36 +1100 - rev 749877
Push
97494 by bmo:gl@mozilla.com at Wed, 31 Jan 2018 23:47:33 +0000
Bug 1423840 - Rewrite the prefs parser. r=glandium,Manishearth
The prefs parser has two significant problems.
- It doesn't separate tokenizing from parsing.
- It is implemented as a loop around a big switch on a "current state"
variable.
As a result, it is hard to understand and modify, slower than it could be, and
in obscure cases (involving comments and whitespace) it fails to parse what
should be valid input.
This patch replaces it with a recursive descent parser (albeit one without any
recursion!) that has separate tokenization. The new parser is easier to
understand and modify, more correct, and has better error messages. It doesn't
do error recovery, but that would be much easier to add than in the old parser.
The new parser also runs about 1.9x faster than the existing parser. (As
measured by parsing greprefs.js's contents from memory 1000 times in
succession, omitting the prefs hash table construction. If the table
construction is included, it's about 1.6x faster.)
The new parser is slightly stricter than the old parser in a few ways.
- Disconcertingly, the old parser allowed arbitrary junk between prefs
(including at the start and end of the prefs file) so long as that junk
didn't include any of the following chars: '/', '#', 'u', 's', 'p'. I.e.
lines like these:
!foo@bar&pref("prefname", true);
ticky_pref("prefname", true); // missing 's' at start
User_pref("prefname", true); // should be 'u' at start
would all be treated the same as this:
pref("prefname", true);
The new parser disallows such junk because it isn't necessary and seems like
an unintentional botch by the old parser.
- The old parser allowed character 0x1a (SUB) between tokens and treated it
like '\n'.
The new parser does not allow this character. SUB was used to indicate
end-of-file (*not* end-of-line) in some old operating systems such as MS-DOS,
but this doesn't seem necessary today.
- The old parser tolerated (with a warning) invalid escape sequences within
string literals -- such as "\q" (not a valid escape) and "\x1" and "\u12"
(both of which have insufficient hex digits) -- accepting them literally.
The new parser does not tolerate invalid escape sequences because it doesn't
seem necessary and would complicate things.
- The old parser tolerated character 0x00 (NUL) within string literals; this is
dangerous because C++ code that manipulates string values with embedded NULs
will almost certainly consider those chars as end-of-string markers.
The new parser treats NUL chars as end-of-file, to avoid this danger and
because it facilitates a significant optimization (described within the
code).
- The old parser allowed integer literals to overflow, silently wrapping them.
The new parser treats integer overflow as a parse error. This seems better,
and it caught an existing overflow in testing/profiles/prefs_general.js, for
places.database.lastMaintenance (see
bug 1424030).
The first of these changes meant that a couple of existing prefs with ";;" at
the end had to be changed (done in the preceding patch).
The minor increase in strictness shouldn't be a problem for default pref files
such as greprefs.js within the application (which we can modify), nor for
app-written prefs files such as prefs.js. It could affect user-written prefs
files such as user.js; the experience above suggests that ";;" is the most
likely problem in practice. In my opinion, the risk here is acceptable.
The new parser also does a better job of tracking line numbers because it (a)
treats "\r\n" sequences as a single end-of-line marker, and (a) pays attention
to end-of-line sequences within string literals.
Finally, the patch adds thorough tests of both valid and invalid syntax.
MozReview-Commit-ID: 8EYWH7KxGG
* * *
[mq]: win-fix
MozReview-Commit-ID: 91Bxjfghqfw
bc141b951a1b1aac8fefe67cb5488091cf5de43a: servo: Merge #19864 - Make some callback-related code unsafe (from nox:callbacks); r=Manishearth
Anthony Ramine <n.oxyde@gmail.com> - Thu, 25 Jan 2018 16:21:10 -0600 - rev 747448
Push
96906 by hikezoe@mozilla.com at Fri, 26 Jan 2018 01:59:31 +0000
servo: Merge
#19864 - Make some callback-related code unsafe (from nox:callbacks); r=Manishearth
Source-Repo:
https://github.com/servo/servo
Source-Revision:
e9ab91d257a983a7c19cb5fada21a0359cfae95d
a984a3218ffe8ebaad26bff890bc25f00612d859: Bug 1431031: Tests for calc() on font-size on various situations. r=Manishearth
Emilio Cobos Álvarez <emilio@crisal.io> - Wed, 17 Jan 2018 17:20:20 +0100 - rev 722630
Push
96191 by bmo:oriol-bugzilla@hotmail.com at Fri, 19 Jan 2018 14:03:28 +0000
Bug 1431031: Tests for calc() on font-size on various situations. r=Manishearth
It makes no sense to pass a custom base size of zero in presence of rem, ex, or
ch units.
MozReview-Commit-ID: 7ZZwRzQKREX
110b50e49ca4064fbe78deaf0bf9fd72a45e45af: servo: Merge #19807 - style: Make the Gecko font-size calc() code do what it means to do (from emilio:calc-font-size); r=Manishearth
Emilio Cobos Álvarez <emilio@crisal.io> - Thu, 18 Jan 2018 09:36:51 -0600 - rev 722461
Push
96158 by bmo:jryans@gmail.com at Fri, 19 Jan 2018 01:05:25 +0000
servo: Merge
#19807 - style: Make the Gecko font-size calc() code do what it means to do (from emilio:calc-font-size); r=Manishearth
It makes no sense to pass a custom base size of zero in presence of rem, ex, or
ch units.
Bug: 1431031
Reviewed-by: Manishearth
MozReview-Commit-ID: 7ZZwRzQKREX
Source-Repo:
https://github.com/servo/servo
Source-Revision:
671b69c0b77f9a4bd0c098cb2a2f73c95dacb954
454a058a50a3529836e097cb4e0a337137a76059: Bug 1431031: Don't use reference_font_size for resolving rem on the root element. r?Manishearth
draft
Emilio Cobos Álvarez <emilio@crisal.io> - Wed, 17 Jan 2018 17:20:20 +0100 - rev 721659
Push
95916 by bmo:emilio@crisal.io at Wed, 17 Jan 2018 17:36:35 +0000
Bug 1431031: Don't use reference_font_size for resolving rem on the root element. r?Manishearth
ReferenceFontSize::InheritedStyle and ReferenceFontSize::CurrentStyle are fine,
because they're by definition the initial font-size on the root at that point.
The font-size Calc code passes ReferenceFontSize::Custom(0) to strip out the
relative part, but that has the unfortunate effect of stripping rem units on the
root. Prevent that by using always the inherited style, which is always the
reset style.
MozReview-Commit-ID: 7ZZwRzQKREX
ba5e72e139d164b1cd0772fc6efad5963aaf7a62: Bug 1431031: Don't use reference_font_size for resolving rem on the root element. r?Manishearth
draft
Emilio Cobos Álvarez <emilio@crisal.io> - Wed, 17 Jan 2018 17:20:20 +0100 - rev 721631
Push
95902 by bmo:emilio@crisal.io at Wed, 17 Jan 2018 16:37:52 +0000
Bug 1431031: Don't use reference_font_size for resolving rem on the root element. r?Manishearth
ReferenceFontSize::InheritedStyle and ReferenceFontSize::CurrentStyle are fine,
because they're by definition the initial font-size on the root at that point.
The font-size Calc code passes ReferenceFontSize::Custom(0) to strip out the
relative part, but that has the unfortunate effect of stripping rem units on the
root. Prevent that by using always the inherited style, which is always the
reset style.
MozReview-Commit-ID: 7ZZwRzQKREX
391fd88ff3e51cedfbc65b2b0345d48ab53cad06: servo: Merge #19665 - style_derive: Support parse-time aliases (from emilio:derive-parse-alias); r=Manishearth
Emilio Cobos Álvarez <emilio@crisal.io> - Sun, 31 Dec 2017 03:46:22 -0600 - rev 715133
Push
94070 by bmo:ato@sny.no at Tue, 02 Jan 2018 11:41:58 +0000
servo: Merge
#19665 - style_derive: Support parse-time aliases (from emilio:derive-parse-alias); r=Manishearth
This will allow
#19659 to use derive on display using:
#[parse(aliases = "-webkit-flex")]
Flex,
#[parse(aliases = "-webkit-inline-flex")]
InlineFlex,
And such.
Source-Repo:
https://github.com/servo/servo
Source-Revision:
4ba795081cd1efa42ce03c996d574cfe96f68ece
2941b6b2bcece74cce8bfbcad359ad7538a278a3: servo: Merge #19576 - style: Move text-align outside of the mako file (from canaltinova:text-align); r=Manishearth,emilio
Nazım Can Altınova <canaltinova@gmail.com> - Mon, 18 Dec 2017 12:12:52 -0600 - rev 713008
Push
93528 by kgupta@mozilla.com at Tue, 19 Dec 2017 14:18:06 +0000
servo: Merge
#19576 - style: Move text-align outside of the mako file (from canaltinova:text-align); r=Manishearth,emilio
I will need this refactoring before my next job. I didn't actually fix the FIXME's along the way. My other PR probably will cover these.
---
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
Source-Repo:
https://github.com/servo/servo
Source-Revision:
a9c17970c19a993920ce1ba2ff9faebd033c52b4
c0f0e908055c1656f49b3c4a75e70f206e436a13: Bug 1423840 - Rewrite the prefs parser. r=glandium,Manishearth
draft
Nicholas Nethercote <nnethercote@mozilla.com> - Sun, 03 Dec 2017 00:26:36 +1100 - rev 712632
Push
93376 by nnethercote@mozilla.com at Mon, 18 Dec 2017 05:26:12 +0000
Bug 1423840 - Rewrite the prefs parser. r=glandium,Manishearth
The prefs parser has two significant problems.
- It doesn't separate tokenizing from parsing.
- It is implemented as a loop around a big switch on a "current state"
variable.
As a result, it is hard to understand and modify, slower than it could be, and
in obscure cases (involving comments and whitespace) it fails to parse what
should be valid input.
This patch replaces it with a recursive descent parser (albeit one without any
recursion!) that has separate tokenization. The new parser is easier to
understand and modify, more correct, and has better error messages. It doesn't
do error recovery, but that would be much easier to add than in the old parser.
The new parser also runs about 1.9x faster than the existing parser. (As
measured by parsing greprefs.js's contents from memory 1000 times in
succession, omitting the prefs hash table construction. If the table
construction is included, it's about 1.6x faster.)
The new parser is slightly stricter than the old parser in a few ways.
- Disconcertingly, the old parser allowed arbitrary junk between prefs
(including at the start and end of the prefs file) so long as that junk
didn't include any of the following chars: '/', '#', 'u', 's', 'p'. I.e. a
line like this:
!foo@bar&pref("prefname", true);
ticky_pref("prefname", true); // missing 's' at start
User_pref("prefname", true); // should be 'u' at start
would be treated the same as this:
pref("prefname", true);
The new parser disallows such junk because it isn't necessary and seems like
an unintentional botch by the old parser.
- The old parser allowed character 0x1a (SUB) between tokens and treated it
like '\n'.
The new parser does not allow this character. SUB was used to indicate
end-of-file (*not* end-of-line) in some old operating systems such as MS-DOS,
but this doesn't seem necessary today.
- The old parser tolerated (with a warning) invalid escape sequences within
string literals -- such as "\q" (not a valid escape) and "\x1" and "\u12"
(both of which have insufficient hex digits) -- accepting them literally.
The new parser does not tolerates invalid escape sequences because it doesn't
seem necessary and would complicate things.
- The old parser tolerated character 0x00 (NUL) within string literals; this is
dangerous because C++ code that manipulates string values with embedded NULs
will almost certainly consider those chars as end-of-string markers.
The new parser treats NUL chars as end-of-file, to avoid this danger and
because it facilitates a significant optimization (described within the
code).
- The old parser allowed integer literals to overflow, silently wrapping them.
The new parser treats integer overflow as a parse error. This seems better,
and it caught an existing overflow in testing/profiles/prefs_general.js, for
places.database.lastMaintenance (see
bug 1424030).
The first of these changes meant that a couple of existing prefs with ";;" at
the end had to be changed.
The minor increase in strictness shouldn't be a problem for default pref files
such as greprefs.js within the application (which we can modify), nor for
app-written prefs files such as prefs.js. It could affect user-written prefs
files such as user.js; the experience above suggests that ";;" is the most
likely problem in practice. In my opinion, the risk here is acceptable.
The new parser also does a better job of tracking line numbers because it (a)
treats "\r\n" sequences as a single end-of-line marker, and (a) pays attention
to end-of-line sequences within string literals.
Finally, the patch adds thorough tests of both valid and invalid syntax.
MozReview-Commit-ID: 8EYWH7KxGG
c4cf8f4683114454167cc8db9fc352f0b634306b: servo: Merge #19578 - Allow deriving Parse on keywords (from emilio:parse-keyword); r=Manishearth,canaltinova
Emilio Cobos Álvarez <emilio@crisal.io> - Fri, 15 Dec 2017 14:55:49 -0600 - rev 712404
Push
93333 by dgottwald@mozilla.com at Sat, 16 Dec 2017 12:25:16 +0000
servo: Merge
#19578 - Allow deriving Parse on keywords (from emilio:parse-keyword); r=Manishearth,canaltinova
This makes patches like
#19576 much easier.
Source-Repo:
https://github.com/servo/servo
Source-Revision:
e631d167bf28676e45e37f418b4282fcfba98c1e
186c240f7a8026faea7c3662ae76d55b7b8fbeac: Bug 1423840 - Rewrite the prefs parser. r=glandium,Manishearth
draft
Nicholas Nethercote <nnethercote@mozilla.com> - Sun, 03 Dec 2017 00:26:36 +1100 - rev 709564
Push
92691 by nnethercote@mozilla.com at Fri, 08 Dec 2017 09:18:51 +0000
Bug 1423840 - Rewrite the prefs parser. r=glandium,Manishearth
The prefs parser has two significant problems.
- It doesn't separate tokenizing from parsing.
- It is implemented as a loop around a big switch on a "current state"
variable.
As a result, it is hard to understand and modify, slower than it could be, and
in obscure cases (involving comments and whitespace) it fails to parse what
should be valid input.
This patch replaces it with a recursive descent parser (albeit one without any
recursion!) that has separate tokenization. The new parser is easier to
understand and modify, more correct, and has better error messages. It doesn't
do error recovery, but that would be much easier to add than in the old parser.
The new parser also runs about 1.9x faster than the existing parser. (As
measured by parsing greprefs.js's contents from memory 1000 times in
succession, omitting the prefs hash table construction. If the table
construction is included, it's about 1.6x faster.)
The new parser is slightly stricter than the old parser in a few ways.
- Disconcertingly, the old parser allowed arbitrary junk between prefs
(including at the start and end of the prefs file) so long as that junk
didn't include any of the following chars: '/', '#', 'u', 's', 'p'. I.e. a
line like this:
!foo@bar&pref("prefname", true);
ticky_pref("prefname", true); // missing 's' at start
User_pref("prefname", true); // should be 'u' at start
would be treated the same as this:
pref("prefname", true);
The new parser disallows such junk because it isn't necessary and seems like
an unintentional botch by the old parser.
- The old parser allowed character 0x1a (SUB) between tokens and treated it
like '\n'.
The new parser does not allow this character. SUB was used to indicate
end-of-file (*not* end-of-line) in some old operating systems such as MS-DOS,
but this doesn't seem necessary today.
- The old parser tolerated (with a warning) invalid escape sequences within
string literals -- such as "\q" (not a valid escape) and "\x1" and "\u12"
(both of which have insufficient hex digits) -- accepting them literally.
The new parser does not tolerates invalid escape sequences because it doesn't
seem necessary and would complicate things.
- The old parser tolerated character 0x00 (NUL) within string literals; this is
dangerous because C++ code that manipulates string values with embedded NULs
will almost certainly consider those chars as end-of-string markers.
The new parser treats NUL chars as end-of-file, to avoid this danger and
because it facilitates a significant optimization (described within the
code).
- The old parser allowed integer literals to overflow, silently wrapping them.
The new parser treats integer overflow as a parse error. This seems better,
and it caught an existing overflow in testing/profiles/prefs_general.js, for
places.database.lastMaintenance (see
bug 1424030).
The first of these changes meant that a couple of existing prefs with ";;" at
the end had to be changed.
The minor increase in strictness shouldn't be a problem for default pref files
such as greprefs.js within the application (which we can modify), nor for
app-written prefs files such as prefs.js. It could affect user-written prefs
files such as user.js; the experience above suggests that ";;" is the most
likely problem in practice. In my opinion, the risk here is acceptable.
The new parser also does a better job of tracking line numbers because it (a)
treats "\r\n" sequences as a single end-of-line marker, and (a) pays attention
to end-of-line sequences within string literals.
Finally, the patch adds thorough tests of both valid and invalid syntax.
MozReview-Commit-ID: 8EYWH7KxGG
32e7d25e965361644597eb7c4972bc69ee1b48cd: Bug 1423840 - Rewrite the prefs parser. r=glandium,Manishearth
draft
Nicholas Nethercote <nnethercote@mozilla.com> - Sun, 03 Dec 2017 00:26:36 +1100 - rev 708941
Push
92496 by nnethercote@mozilla.com at Thu, 07 Dec 2017 11:10:39 +0000
Bug 1423840 - Rewrite the prefs parser. r=glandium,Manishearth
The prefs parser has two significant problems.
- It doesn't separate tokenizing from parsing.
- It is implemented as a loop around a big switch on a "current state"
variable.
As a result, it is hard to understand and modify, slower than it could be, and
in obscure cases it fails to parse some valid input.
This patch replaces it with a recursive descent parser (albeit one without any
recursion!) that has separate tokenization. The new parser is easier to
understand and modify, more correct, and has better error messages (including
filenames). It also runs about 1.9x faster than the existing parser. (As
measured by parsing greprefs.js's contents from memory 1000 times in
succession, omitting the prefs hash table construction. If the table
construction is included, it's about 1.6x faster.)
The new parser is slightly stricter than the old parser in a few ways.
- Disconcertingly, the old parser allowed arbitrary junk between prefs
(including at the start and end of the prefs file) so long as that junk
didn't include any of the following chars: '/', '#', 'u', 's', 'p'. I.e. a
line like this:
!foo@bar&pref("prefname", true);
would be treated the same as this:
pref("prefname", true);
The new parser disallows such junk because it isn't necessary and seems like
an unintentional botch by the old parser.
- The old parser allowed character 0x1a (SUB) between tokens and treated it
like '\n'.
The new parser does not allow this character. SUB was used to indicate
end-of-file (*not* end-of-line) in some old operating systems such as MS-DOS,
but this doesn't seem necessary today.
- The old parser tolerated (with a warning) invalid escape sequences within
string literals -- such as "\q" (not a valid escape) and "\x1" and "\u12"
(both of which have insufficient hex digits) -- accepting them literally.
The new parser does not tolerates invalid escape sequences because it doesn't
seem necessary and would complicate things.
- The old parser tolerated character 0x00 (NUL) within string literals; this is
dangerous because C++ code that manipulates string values with embedded NULs
will almost certainly consider those chars as end-of-string markers.
The new parser treats NUL chars as end-of-file, to avoid this danger and
because it facilitates a significant optimization (described within the
code).
- The old parser allowed integer literals to overflow, silently wrapping them.
The new parser treats integer overflow as a parse error. This seems better,
and it caught an existing overflow in testing/profiles/prefs_general.js, for
places.database.lastMaintenance.
The first of these changes meant that a couple of existing prefs with ";;" at
the end had to be changed.
The minor increase in strictness shouldn't be a problem for default pref files
such as greprefs.js within the application (which we can modify), nor for
app-written prefs files such as prefs.js. It could affect user-written prefs
files such as user.js; the experience above suggests that ";;" is the most
likely problem in practice. In my opinion, the risk here is acceptable.
The new parser should also do a better job of tracking line numbers because it
(a) treats "\r\n" sequences as a single end-of-line marker, and (a) pays
attention to end-of-line sequences within string literals.
The patch also adds a thorough test of valid syntax. (Note that the old parser
fails to correctly parse this test in a few places because it misimplemented
the grammar.) I'd like to also add tests for invalid syntax but the current
design makes this challenging, because parse errors trigger an error message on
the web console and a NS_ERROR_FILE_CORRUPTED return value from Parse().
MozReview-Commit-ID: 8EYWH7KxGG
f1be692f514bebc65041293202932dc16f9692c6: Bug 1423840 - Rewrite the prefs parser. r=glandium,Manishearth
draft
Nicholas Nethercote <nnethercote@mozilla.com> - Sun, 03 Dec 2017 00:26:36 +1100 - rev 708931
Push
92489 by nnethercote@mozilla.com at Thu, 07 Dec 2017 10:34:59 +0000
Bug 1423840 - Rewrite the prefs parser. r=glandium,Manishearth
The prefs parser has two significant problems.
- It doesn't separate tokenizing from parsing.
- It is implemented as a loop around a big switch on a "current state"
variable.
As a result, it is hard to understand and modify, slower than it could be, and
in obscure cases it fails to parse some valid input.
This patch replaces it with a recursive descent parser (albeit one without any
recursion!) that has separate tokenization. The new parser is easier to
understand and modify, more correct, and has better error messages (including
filenames). It also runs about 1.9x faster than the existing parser. (As
measured by parsing greprefs.js's contents from memory 1000 times in
succession, omitting the prefs hash table construction. If the table
construction is included, it's about 1.4x faster.)
The new parser is slightly stricter than the old parser in a few ways.
- Disconcertingly, the old parser allowed arbitrary junk between prefs
(including at the start and end of the prefs file) so long as that junk
didn't include any of the following chars: '/', '#', 'u', 's', 'p'. I.e. a
line like this:
!foo@bar&pref("prefname", true);
would be treated the same as this:
pref("prefname", true);
The new parser disallows such junk because it isn't necessary and seems like
an unintentional botch by the old parser.
- The old parser allowed character 0x1a (SUB) between tokens and treated it
like '\n'.
The new parser does not allow this character. SUB was used to indicate
end-of-file (*not* end-of-line) in some old operating systems such as MS-DOS,
but this doesn't seem necessary today.
- The old parser tolerated (with a warning) invalid escape sequences within
string literals -- such as "\q" (not a valid escape) and "\x1" and "\u12"
(both of which have insufficient hex digits) -- accepting them literally.
The new parser does not tolerates invalid escape sequences because it doesn't
seem necessary and would complicate things.
- The old parser tolerated character 0x00 (NUL) within string literals; this is
dangerous because C++ code that manipulates string values with embedded NULs
will almost certainly consider those chars as end-of-string markers.
The new parser treats NUL chars as end-of-file, to avoid this danger and
because it facilitates a significant optimization (described within the
code).
- The old parser allowed integer literals to overflow, silently wrapping them.
The new parser treats integer overflow as a parse error. This seems better,
and it caught an existing overflow in testing/profiles/prefs_general.js, for
places.database.lastMaintenance.
The first of these changes meant that a couple of existing prefs with ";;" at
the end had to be changed.
The minor increase in strictness shouldn't be a problem for default pref files
such as greprefs.js within the application (which we can modify), nor for
app-written prefs files such as prefs.js. It could affect user-written prefs
files such as user.js; the experience above suggests that ";;" is the most
likely problem in practice. In my opinion, the risk here is acceptable.
The new parser should also do a better job of tracking line numbers because it
(a) treats "\r\n" sequences as a single end-of-line marker, and (a) pays
attention to end-of-line sequences within string literals.
The patch also adds a thorough test of valid syntax. (Note that the old parser
fails to correctly parse this test in a few places because it misimplemented
the grammar.) I'd like to also add tests for invalid syntax but the current
design makes this challenging, because parse errors trigger an error message on
the web console and a NS_ERROR_FILE_CORRUPTED return value from Parse().
MozReview-Commit-ID: 8EYWH7KxGG
a6ab37216edee300b1c2f1b8e75f07111a2ae005: Bug 1422641: Inline Gecko_GetSMILOverrideDeclarationBlock. r?Manishearth,xidorn
draft
Emilio Cobos Álvarez <emilio@crisal.io> - Mon, 04 Dec 2017 01:05:25 +0100 - rev 707713
Push
92190 by bmo:emilio@crisal.io at Tue, 05 Dec 2017 17:07:36 +0000
Bug 1422641: Inline Gecko_GetSMILOverrideDeclarationBlock. r?Manishearth,xidorn
MozReview-Commit-ID: E8cM7zRZHn1
06852d04e07028e2e09ea389ad97eba7dd8047d8: Bug 1422641: Inline Gecko_GetSMILOverrideDeclarationBlock. r=Manishearth,xidorn
Emilio Cobos Álvarez <emilio@crisal.io> - Mon, 04 Dec 2017 01:05:25 +0100 - rev 707674
Push
92188 by kgupta@mozilla.com at Tue, 05 Dec 2017 16:54:08 +0000
Bug 1422641: Inline Gecko_GetSMILOverrideDeclarationBlock. r=Manishearth,xidorn
MozReview-Commit-ID: E8cM7zRZHn1
cee16defbc8e99ed887b120de00a319b758a4c72: servo: Merge #19493 - style: Some stylo-chrome perf tweaks (from emilio:chrome-perf); r=xidorn,Manishearth
Emilio Cobos Álvarez <emilio@crisal.io> - Tue, 05 Dec 2017 06:05:25 -0600 - rev 707670
Push
92188 by kgupta@mozilla.com at Tue, 05 Dec 2017 16:54:08 +0000
servo: Merge
#19493 - style: Some stylo-chrome perf tweaks (from emilio:chrome-perf); r=xidorn,Manishearth
Source-Repo:
https://github.com/servo/servo
Source-Revision:
8f30880d362ef54a2c6881c4927b96303ff763ef
7ae3057f16dc575a157d94df39ce2cae0c22043f: Bug 1422641: Inline Gecko_GetSMILOverrideDeclarationBlock. r?Manishearth,xidorn
draft
Emilio Cobos Álvarez <emilio@crisal.io> - Mon, 04 Dec 2017 01:05:25 +0100 - rev 706877
Push
91936 by bmo:emilio@crisal.io at Mon, 04 Dec 2017 10:24:39 +0000
Bug 1422641: Inline Gecko_GetSMILOverrideDeclarationBlock. r?Manishearth,xidorn
MozReview-Commit-ID: E8cM7zRZHn1
da8878b4d4a54d21416853951467ce2ef22fbc58: Bug 1422641: Inline Gecko_GetSMILOverrideDeclarationBlock. r?Manishearth,xidorn
draft
Emilio Cobos Álvarez <emilio@crisal.io> - Mon, 04 Dec 2017 01:05:25 +0100 - rev 706712
Push
91890 by bmo:emilio@crisal.io at Mon, 04 Dec 2017 01:54:17 +0000
Bug 1422641: Inline Gecko_GetSMILOverrideDeclarationBlock. r?Manishearth,xidorn
MozReview-Commit-ID: E8cM7zRZHn1
7e2b12a6a7e2c72f05269cf587d12b79505db395: Bug 1422641: Inline Gecko_GetSMILOverrideDeclarationBlock. r?Manishearth,xidorn
draft
Emilio Cobos Álvarez <emilio@crisal.io> - Mon, 04 Dec 2017 01:05:25 +0100 - rev 706702
Push
91885 by bmo:emilio@crisal.io at Mon, 04 Dec 2017 00:07:18 +0000
Bug 1422641: Inline Gecko_GetSMILOverrideDeclarationBlock. r?Manishearth,xidorn
MozReview-Commit-ID: E8cM7zRZHn1
78d7ac2ce842c4c889ed781517f66dbcc9698e4f: Bug 1408308: Integrate Servo SourceSizeList in ResponsiveImageSelector. r=Manishearth
Emilio Cobos Álvarez <emilio@crisal.io> - Mon, 13 Nov 2017 06:44:12 +0100 - rev 697228
Push
88922 by bmo:emilio@crisal.io at Mon, 13 Nov 2017 15:43:25 +0000
Bug 1408308: Integrate Servo SourceSizeList in ResponsiveImageSelector. r=Manishearth
MozReview-Commit-ID: DMVfE56DyYm
b59ffea83e0abe345853fa76dba4bca551464858: Bug 1408308: Integrate Servo SourceSizeList in ResponsiveImageSelector. r=Manishearth
Emilio Cobos Álvarez <emilio@crisal.io> - Thu, 09 Nov 2017 15:18:08 +0100 - rev 697207
Push
88922 by bmo:emilio@crisal.io at Mon, 13 Nov 2017 15:43:25 +0000
Bug 1408308: Integrate Servo SourceSizeList in ResponsiveImageSelector. r=Manishearth
This needs to dumb down the parsing in order to match what we do in Gecko and
pass more tests.
The remaining tests are just because of calc() in media queries and "or" media
expressions.
MozReview-Commit-ID: CXGdYVbojBL
6f321c024fc4e82363e9b1215891a37d8abde5de: servo: Merge #19197 - stylo: Integrate Servo SourceSizeList in ResponsiveImageSelector (from emilio:source-size-list-integration); r=Manishearth
Emilio Cobos Álvarez <emilio@crisal.io> - Sun, 12 Nov 2017 21:01:34 -0600 - rev 697206
Push
88922 by bmo:emilio@crisal.io at Mon, 13 Nov 2017 15:43:25 +0000
servo: Merge
#19197 - stylo: Integrate Servo SourceSizeList in ResponsiveImageSelector (from emilio:source-size-list-integration); r=Manishearth
Bug: 1408308
Reviewed-by: Manishearth
Source-Repo:
https://github.com/servo/servo
Source-Revision:
5d3a90ecce766f3dfba35e08101a74a5d73dba79
6bed71583aa9a40f73db1d8cf7d386ca793c08f5: Bug 1396057: Change tests of calc in media-queries so that the root element style has been resolved first. r=Manishearth
Emilio Cobos Álvarez <emilio@crisal.io> - Fri, 10 Nov 2017 16:48:44 +0100 - rev 697094
Push
88890 by bmo:dburns@mozilla.com at Mon, 13 Nov 2017 10:27:18 +0000
Bug 1396057: Change tests of calc in media-queries so that the root element style has been resolved first. r=Manishearth
This modify the tests so that the media query evaluation they're testing happens
after style resolution, which would've caught a bug in rem unit evaluation
inside media queries in stylo.
MozReview-Commit-ID: ByaR4ZA995l
b7ebbb451e5a493673f89edb06307caefed0833a: servo: Merge #19194 - stylo: Bring back support for calc() in media-queries (from emilio:media-query-calc); r=Manishearth
Emilio Cobos Álvarez <emilio@crisal.io> - Sun, 12 Nov 2017 20:06:12 -0600 - rev 697093
Push
88890 by bmo:dburns@mozilla.com at Mon, 13 Nov 2017 10:27:18 +0000
servo: Merge
#19194 - stylo: Bring back support for calc() in media-queries (from emilio:media-query-calc); r=Manishearth
Bug: 1396057
Reviewed-by: Manishearth
Source-Repo:
https://github.com/servo/servo
Source-Revision:
4970b5d1544fe8f33287b01540e972a639baa689
26a70922efd74a004f2f2c5f0d1e2d35481ae554: servo: Merge #16946 - Add intermittent failure reporting to filter-intermittents (from jdm:report); r=Manishearth
Josh Matthews <josh@joshmatthews.net> - Tue, 07 Nov 2017 13:05:12 -0600 - rev 694853
Push
88276 by bmo:lchang@mozilla.com at Wed, 08 Nov 2017 12:05:35 +0000
servo: Merge
#16946 - Add intermittent failure reporting to filter-intermittents (from jdm:report); r=Manishearth
We need to address https://github.com/servo/saltfs/issues/671 before this can be enabled by default on the builders, but I got the pieces working locally. This collects relevant information about each recorded intermittent failure encountered during a test run and posts them to a webapp which stores them in a database for later investigation. This will allow us to track over time which intermittent test failures are the most frequent, as well as whether they only happen on a particular builder or operating system.
Source-Repo:
https://github.com/servo/servo
Source-Revision:
693c3dcfb29ecc2aa4610aabc68ce7381bfd5d87
23558938a6c6c02c920c0df8670c0fac6a883532: Bug 1412743 - style: Avoid double-applying text-zoom for keywords. r=Manishearth, a=ritu
Emilio Cobos Álvarez <emilio@crisal.io> - Wed, 01 Nov 2017 22:57:00 -0400 - rev 694394
Push
88118 by bmo:edilee@mozilla.com at Tue, 07 Nov 2017 18:56:14 +0000
Bug 1412743 - style: Avoid double-applying text-zoom for keywords. r=Manishearth, a=ritu
Source-Repo:
https://github.com/servo/servo
Source-Revision:
c882266c8915b9f424cc4efbc860a9e417bf1326
95e8712dbf3baa0bb59d676aec75df3fbccd6240: servo: Merge #19074 - style: Avoid double-applying text-zoom for keywords (from emilio:font-size-woes); r=Manishearth
Emilio Cobos Álvarez <emilio@crisal.io> - Tue, 31 Oct 2017 15:08:24 -0500 - rev 689787
Push
87106 by bmo:emilio@crisal.io at Tue, 31 Oct 2017 23:05:35 +0000
servo: Merge
#19074 - style: Avoid double-applying text-zoom for keywords (from emilio:font-size-woes); r=Manishearth
Bug: 1412743
Reviewed-by: Manishearth
Source-Repo:
https://github.com/servo/servo
Source-Revision:
c882266c8915b9f424cc4efbc860a9e417bf1326
727af52a0f05e2a55513cb8f26bb2bdfeef0dd59: Bug 1412743: Avoid double-applying text-zoom for keywords. r?Manishearth
draft
Emilio Cobos Álvarez <emilio@crisal.io> - Tue, 31 Oct 2017 12:07:33 +0100 - rev 689376
Push
87004 by bmo:emilio@crisal.io at Tue, 31 Oct 2017 13:41:52 +0000
Bug 1412743: Avoid double-applying text-zoom for keywords. r?Manishearth
MozReview-Commit-ID: 3iOstV6RifQ
78e8b07f3e111265294a5fedb5297e55ab45e32f: Bug 1412743: Avoid double-applying text-zoom for keywords. r?Manishearth
draft
Emilio Cobos Álvarez <emilio@crisal.io> - Tue, 31 Oct 2017 12:07:33 +0100 - rev 689316
Push
86991 by bmo:emilio@crisal.io at Tue, 31 Oct 2017 11:08:42 +0000
Bug 1412743: Avoid double-applying text-zoom for keywords. r?Manishearth
MozReview-Commit-ID: 3iOstV6RifQ
da6b544b9891b2998db542fc881e5a9e133dd554: Bug 1412868: Remove Gecko_GetLookAndFeelSystemColor from the static analysis whitelist. r=manishearth
Brad Werth <bwerth@mozilla.com> - Mon, 30 Oct 2017 08:47:01 -0700 - rev 688995
Push
86890 by gszorc@mozilla.com at Mon, 30 Oct 2017 22:55:17 +0000
Bug 1412868: Remove Gecko_GetLookAndFeelSystemColor from the static analysis whitelist. r=manishearth
MozReview-Commit-ID: 7gf3CZM3ypv
38f363ae6e486df376200b402902b380c1934820: servo: Merge #19055 - Add support for -moz-window-opacity to stylo (from upsuper:window-opacity); r=Manishearth
Xidorn Quan <me@upsuper.org> - Mon, 30 Oct 2017 00:42:45 -0500 - rev 688923
Push
86890 by gszorc@mozilla.com at Mon, 30 Oct 2017 22:55:17 +0000
servo: Merge
#19055 - Add support for -moz-window-opacity to stylo (from upsuper:window-opacity); r=Manishearth
Fixes [
bug 1374177](https://bugzilla.mozilla.org/show_bug.cgi?id=1374177).
Source-Repo:
https://github.com/servo/servo
Source-Revision:
17bfe5c12013a47c09e0198d029f3ded2ccbc42c
196059cada7070ab1e35db83a22b60389bd0c794: Bug 1409444 - Update rand to 0.3.17. r=manishearth a=ritu
Xidorn Quan <me@upsuper.org> - Sat, 28 Oct 2017 15:12:47 +1100 - rev 688467
Push
86742 by bmo:gasolin@mozilla.com at Mon, 30 Oct 2017 02:19:49 +0000
Bug 1409444 - Update rand to 0.3.17. r=manishearth a=ritu