0e7ce603dafe135b76060afbf91c94ade33da7ea: Bug 1253476 - Make Animation::Tick do finish actions synchronously; r?hiro draft
pulselistener - Mon, 20 May 2019 05:23:48 +0000 - rev 2009310
Push 364115 by reviewbot at Mon, 20 May 2019 05:24:17 +0000
Bug 1253476 - Make Animation::Tick do finish actions synchronously; r?hiro Animation::UpdateTiming takes a SyncNotifyFlag parameter. This is passed to UpdateFinishedState where it determines how we handle finish actions. If it is async we queue a microtask where we re-evaluate if the animation is finished or not before queuing events / resolving promises. That allows code like the following to _not_ trigger finish events: ``` const animation = elem.animate({...}, 1000); animation.currentTime += 1000; animation.effect.updateTiming({ duration: 2000 }); ``` (Since the check that the animation is finished will run in a microtask _after_ the call to updateTiming.) When the flag is "sync" we still don't _actually_ run the finish actions entirely synchronously: the finished promise is resolved synchronously, but resolving a promise actually queues a microtask for each callback. Likewise, the finish event is queued synchronously, but not dispatched. Since there should be no opportunity for script to run between when we call Animation::Tick and when we run the next microtask checkpoint (currently at the end of DocumentTimeline::WillRefresh but that will change slightly in the next patch in this series) there is no need to introduce the extra "async" microtask for re-evaluating an animation's finished state. Instead it should be possible to use the "sync" finishing behavior. Such a change should be unobservable to Web content but will reduce indirection somewhat. Differential Revision: https://phabricator.services.mozilla.com/D30318 Differential Diff: PHID-DIFF-vtoobbmk6i2dywsx3hbr
4b308226c79c98ce8905fd9a0f03e146d2f55200: Bug 1253476 - Use in-class member initializers in Animation.h; r?hiro draft
pulselistener - Mon, 20 May 2019 05:23:44 +0000 - rev 2009309
Push 364115 by reviewbot at Mon, 20 May 2019 05:24:17 +0000
Bug 1253476 - Use in-class member initializers in Animation.h; r?hiro The in-class initializers are easier to maintain since you don't have to try and match them up with the constructor initializer list (including matching the order). Differential Revision: https://phabricator.services.mozilla.com/D30317 Differential Diff: PHID-DIFF-4poh5tyklnv4by2egxlg
85eda6f14ec97a6f7c8cea8315cfd692ad1f2f61: try_task_config for code-review draft
pulselistener - Mon, 20 May 2019 05:22:25 +0000 - rev 2009308
Push 364114 by reviewbot at Mon, 20 May 2019 05:22:47 +0000
try_task_config for code-review Differential Diff: PHID-DIFF-vtoobbmk6i2dywsx3hbr
bf08bab94386be6072333dcb08e10a0379ce82d6: Bug 1253476 - Make Animation::Tick do finish actions synchronously; r?hiro draft
pulselistener - Mon, 20 May 2019 05:22:14 +0000 - rev 2009307
Push 364114 by reviewbot at Mon, 20 May 2019 05:22:47 +0000
Bug 1253476 - Make Animation::Tick do finish actions synchronously; r?hiro Animation::UpdateTiming takes a SyncNotifyFlag parameter. This is passed to UpdateFinishedState where it determines how we handle finish actions. If it is async we queue a microtask where we re-evaluate if the animation is finished or not before queuing events / resolving promises. That allows code like the following to _not_ trigger finish events: ``` const animation = elem.animate({...}, 1000); animation.currentTime += 1000; animation.effect.updateTiming({ duration: 2000 }); ``` (Since the check that the animation is finished will run in a microtask _after_ the call to updateTiming.) When the flag is "sync" we still don't _actually_ run the finish actions entirely synchronously: the finished promise is resolved synchronously, but resolving a promise actually queues a microtask for each callback. Likewise, the finish event is queued synchronously, but not dispatched. Since there should be no opportunity for script to run between when we call Animation::Tick and when we run the next microtask checkpoint (currently at the end of DocumentTimeline::WillRefresh but that will change slightly in the next patch in this series) there is no need to introduce the extra "async" microtask for re-evaluating an animation's finished state. Instead it should be possible to use the "sync" finishing behavior. Such a change should be unobservable to Web content but will reduce indirection somewhat. Differential Revision: https://phabricator.services.mozilla.com/D30318 Differential Diff: PHID-DIFF-vtoobbmk6i2dywsx3hbr
a938890bf134198d3d636a24ec0f7e925f0d3d2d: Bug 1253476 - Use in-class member initializers in Animation.h; r?hiro draft
pulselistener - Mon, 20 May 2019 05:22:11 +0000 - rev 2009306
Push 364114 by reviewbot at Mon, 20 May 2019 05:22:47 +0000
Bug 1253476 - Use in-class member initializers in Animation.h; r?hiro The in-class initializers are easier to maintain since you don't have to try and match them up with the constructor initializer list (including matching the order). Differential Revision: https://phabricator.services.mozilla.com/D30317 Differential Diff: PHID-DIFF-4poh5tyklnv4by2egxlg
abe5c66c7a145b13f81e7af522a9d3d9ecb15e4b: try_task_config for code-review draft
pulselistener - Mon, 20 May 2019 05:20:52 +0000 - rev 2009305
Push 364113 by reviewbot at Mon, 20 May 2019 05:21:12 +0000
try_task_config for code-review Differential Diff: PHID-DIFF-4poh5tyklnv4by2egxlg
1d2f80ad285748df0146c08120fc80e5dd4e84f8: Bug 1253476 - Use in-class member initializers in Animation.h; r?hiro draft
pulselistener - Mon, 20 May 2019 05:20:47 +0000 - rev 2009304
Push 364113 by reviewbot at Mon, 20 May 2019 05:21:12 +0000
Bug 1253476 - Use in-class member initializers in Animation.h; r?hiro The in-class initializers are easier to maintain since you don't have to try and match them up with the constructor initializer list (including matching the order). Differential Revision: https://phabricator.services.mozilla.com/D30317 Differential Diff: PHID-DIFF-4poh5tyklnv4by2egxlg
86402b23582d6a0adf0b9cce58be7b06807c96f2: try: -b do -p win64,linux64,macosx64 -u mochitest-dt,mochitest-e10s-devtools-chrome -t none --artifact draft
Micah Tigley <mtigley@mozilla.com> - Mon, 20 May 2019 01:15:39 -0400 - rev 2009303
Push 364112 by mtigley@mozilla.com at Mon, 20 May 2019 05:16:29 +0000
try: -b do -p win64,linux64,macosx64 -u mochitest-dt,mochitest-e10s-devtools-chrome -t none --artifact Pushed via `mach try syntax`
b2decf3d2183afd678d6a49a0655a6a052574328: Bug 1357774 - Part 2: Add the ability to update orientation state of a simulated device in RDM draft
Micah Tigley <mtigley@mozilla.com> - Sun, 19 May 2019 23:58:59 -0400 - rev 2009302
Push 364112 by mtigley@mozilla.com at Mon, 20 May 2019 05:16:29 +0000
Bug 1357774 - Part 2: Add the ability to update orientation state of a simulated device in RDM
5e6f5226d2e4c89eebd91e2e81c109cf795852d8: try: -b do -p all -u gtest,mochitest-gl,mochitest-media,mochitest-media-e10s,reftest,reftest-e10s,reftest-no-accel,web-platform-tests -t none draft
Jean-Yves Avenard <jyavenard@mozilla.com> - Mon, 20 May 2019 15:10:56 +1000 - rev 2009301
Push 364111 by jyavenard@mozilla.com at Mon, 20 May 2019 05:15:14 +0000
try: -b do -p all -u gtest,mochitest-gl,mochitest-media,mochitest-media-e10s,reftest,reftest-e10s,reftest-no-accel,web-platform-tests -t none Pushed via `mach try syntax`
9a3f5fc957491b7046fc1b687fa9bb39e005804c: Bug 1550422 - P28. Make setter only usable on main process. r?njn! draft
Jean-Yves Avenard <jyavenard@mozilla.com> - Mon, 20 May 2019 09:36:04 +1000 - rev 2009300
Push 364111 by jyavenard@mozilla.com at Mon, 20 May 2019 05:15:14 +0000
Bug 1550422 - P28. Make setter only usable on main process. r?njn! And set the underlying preference. StatiPrefs::Set becomes a convenience access to the original preference which is what gfxPrefs was actually doing.
b987b621c333a6557ee21d2d335fe4f2749beaa4: try_task_config for code-review draft
pulselistener - Mon, 20 May 2019 05:09:11 +0000 - rev 2009299
Push 364110 by reviewbot at Mon, 20 May 2019 05:09:33 +0000
try_task_config for code-review Differential Diff: PHID-DIFF-kttq62fzmbgvk35k2iis
6e609233d3ec302ecae234f24cfd6829a738dbe1: Bug 1357774 - Part 2: Add the ability to update orientation state of a simulated device in RDM draft
pulselistener - Mon, 20 May 2019 05:09:05 +0000 - rev 2009298
Push 364110 by reviewbot at Mon, 20 May 2019 05:09:33 +0000
Bug 1357774 - Part 2: Add the ability to update orientation state of a simulated device in RDM Differential Diff: PHID-DIFF-kttq62fzmbgvk35k2iis
72731b10931017b247d79f754145726e52672b71: Bug 1546736 Part 4 - Only capture web socket stacks for net monitor when the docshell/worker is being watched by the devtools, r=bzbarsky.
Brian Hackett <bhackett1024@gmail.com> - Sun, 19 May 2019 12:53:45 -1000 - rev 2009297
Push 364110 by reviewbot at Mon, 20 May 2019 05:09:33 +0000
Bug 1546736 Part 4 - Only capture web socket stacks for net monitor when the docshell/worker is being watched by the devtools, r=bzbarsky.
c4af6879f495591ca82b946a4fc1717e0322847d: Bug 1392411 Part 3 - Add test for capturing websocket stacks in net monitor, r=ochameau.
Brian Hackett <bhackett1024@gmail.com> - Sun, 19 May 2019 12:45:19 -1000 - rev 2009296
Push 364110 by reviewbot at Mon, 20 May 2019 05:09:33 +0000
Bug 1392411 Part 3 - Add test for capturing websocket stacks in net monitor, r=ochameau.
3e0d5c61f31e3fd31726f5b4769e734a8e933008: Bug 1392411 Part 2 - Report stacks for websocket construction in net monitor, r=ochameau.
Brian Hackett <bhackett1024@gmail.com> - Sun, 19 May 2019 12:44:55 -1000 - rev 2009295
Push 364110 by reviewbot at Mon, 20 May 2019 05:09:33 +0000
Bug 1392411 Part 2 - Report stacks for websocket construction in net monitor, r=ochameau.
541a6a19a385608655f5a8ae6a1b3a11494021ba: Bug 1392411 Part 1 - Report stacks to net monitor when creating web sockets, r=bzbarsky.
Brian Hackett <bhackett1024@gmail.com> - Sun, 19 May 2019 12:44:37 -1000 - rev 2009294
Push 364110 by reviewbot at Mon, 20 May 2019 05:09:33 +0000
Bug 1392411 Part 1 - Report stacks to net monitor when creating web sockets, r=bzbarsky.
45fb04e542c521dcdbf361091b06f4de6979789f: Bug 1518308 - Include unaliased module scope variables in debug environments, r=jonco.
Brian Hackett <bhackett1024@gmail.com> - Wed, 15 May 2019 07:14:28 -1000 - rev 2009293
Push 364110 by reviewbot at Mon, 20 May 2019 05:09:33 +0000
Bug 1518308 - Include unaliased module scope variables in debug environments, r=jonco.
4478ea184906f92ad82672ca5e91ae96a3a34107: Bug 1432885 - Step in to the first valid step target, r=loganfsmyth.
Brian Hackett <bhackett1024@gmail.com> - Tue, 14 May 2019 07:11:04 -1000 - rev 2009292
Push 364110 by reviewbot at Mon, 20 May 2019 05:09:33 +0000
Bug 1432885 - Step in to the first valid step target, r=loganfsmyth.
2bdf1fc43996b52258eb614e21b6c7d529bd312d: try: -b do -p linux64 -u all -t none draft
Makoto Kato <m_kato@ga2.so-net.ne.jp> - Mon, 20 May 2019 13:00:03 +0900 - rev 2009291
Push 364109 by m_kato@ga2.so-net.ne.jp at Mon, 20 May 2019 04:00:22 +0000
try: -b do -p linux64 -u all -t none Pushed via `mach try syntax`
(0) -1000000 -300000 -100000 -30000 -10000 -3000 -1000 -300 -100 -50 -20 +20 +50 +100 +300 +1000 +3000 +10000 +30000 +100000 tip