Skip to content

Conversation

@Hixie
Copy link
Contributor

@Hixie Hixie commented Sep 15, 2016

This requires all AnimationController objects to be given a
TickerProvider, a class that can create the Ticker.

It also provides some nice mixins for people who want to have their
State provide a TickerProvider. And a schedulerTickerProvider for those
cases where you just want to see your battery burn.

Also, we now enforce destruction order for elements.

@Hixie
Copy link
Contributor Author

Hixie commented Sep 15, 2016

I like the end result, but I'm not a huge fan of this API design. Better suggestions welcome.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

single quotes

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is there some reason the BuildContext can't serve as the ticker provider?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

To make that work (without requiring every widget to also have a custom element) we'd have to bake knowledge about Tickers into framework.dart, which I would be very reluctant to do.

Copy link
Contributor

@abarth abarth left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ok, I'm now convinced that your design is correct. The only substantive issue is with the classes that need to deal with ticker provider changes.

We might want to think of snappier names for the parts that developers are going to type a lot (i.e., the mixins and the argument to AnimationController)...

Maybe instead of TickerProvider, we could call it a Timeline? Dunno. TickerProvider sounds so enterprisy.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe we should get this from the tester? That will make it less likely for people to copy/pasta this into production code.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This was an excellent idea. Done.

As a side-effect it also allows the tester to verify that all these AnimationControllers are disposed as well.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should enabled by @required ?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

sure, why not. done.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You're inconsistent about whether you're using early return in these two error handlers.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This seems like a very dangerous default.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah. Removed. I've actually removed the schedulerTickerProvider entirely.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This field seems like a bug factory. It's easy to use and your code is only wrong in that it burns battery. Maybe move it to flutter_test, which would service almost all of the clients.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

agreed. removed

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Won't this drop a frame? The oldController.value is the value we had at the last tick but calling forward will cause the first frame of the new control (i.e., next frame) to have that value as well.

Instead, I think we need some way of changing the ticker provider for a running animation, presumably by handing the timebase off between the tickers so they don't repeat a frame.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm pretty sure that forward() will cause this frame to have the value of the from, and the next frame will have advanced.

But I agree that it's cleaner to build the animation controller from the old one, so let me explore that.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think you forgot to actually store the new value in _tickerProvider.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

oops fixed

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The problem with this approach is that these animations are exposed publicly by this class. Clients won't expect them to change. Specifically, how will they know to move their child animations onto the new instances?

We could solve that by introducing proxy animations to hide the identity change, but I think it would be better to teach AnimationController how to switch ticker providers, especially because of the frame-repeating problem mentioned in another comment.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

done as suggested

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe assert that?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Right now there's no way to tell -- the ticker provider isn't kept around to compare against.

@Hixie
Copy link
Contributor Author

Hixie commented Sep 16, 2016

Thanks for the excellent comments. I agree with all of them. I'll fix them on Monday.

@HansMuller
Copy link
Contributor

Maybe State could inherit from TickerProviderStateMixin and include a createAnimationController() method?

Copy link
Contributor

@dragostis dragostis left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm in totally in favor of this change. I like the mixin approach and feel like this not only improves efficiency but also makes controllers a bit more obvious to use.

Copy link
Contributor

@dragostis dragostis Sep 16, 2016

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

All the parameters could be enclosed with [].

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

added hyperlinks where appropriate

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same here.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

flutter before meta?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

fixed

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Would 'supply' be a better fit than 'vend'? (I may be missing the nuance here, though.)

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think both are fine.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe The type of the provided ticker depends on the implementing class.?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think the text I have now is more grammatically correct. "implementing class" is a bit of a weird construction.

But more to the point, the text here isn't talking about the object type per se, but about the kind of behavior it may have. So for example, you could have a ticker provider return the same type as another, but with different behaviour. Case in point, most of the ticker providers essentially provide Ticker objects, but they don't all act the same.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe it would be useful to add [some of] this explanation to the docs?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also, enabled should probably not be null.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

asserted

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

'should' is really not explicit enough here.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

what should it say instead?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What I was trying to say is that it does not explain why they should or should not be enabled.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

'used ... to enable and disable' is a bit confusing since this method only returns a bool. Maybe 'use ... when enabling or disabling'?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

tweaked

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

'vending' vs 'supplying'?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

they are both fine. "vending" implies more of a transactional operation which is why i used that.

Copy link
Contributor

@dragostis dragostis Sep 16, 2016

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

'This' -> 'That'

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why that?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I guess 'That' in this particular case underlines the separation of the two ideas. To me, 'This' brings the two closer than they naturally are, but this may be personal bias.

@Hixie
Copy link
Contributor Author

Hixie commented Sep 20, 2016

Maybe State could inherit from TickerProviderStateMixin and include a createAnimationController() method?

That would unfortunately bloat the memory footprint of all the States even if they don't have an animation controller.

Also, I think we should keep the knowledge of this kind of thing out of the framework core.

@Hixie
Copy link
Contributor Author

Hixie commented Sep 20, 2016

Thanks for the numerous comments. I've updated the patch. Please take another look since some of the changes are non-trivial.

Copy link
Contributor

@abarth abarth left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

You'll probably want to email flutter-dev after landing. 😄

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Does the base class not have @mustCallSuper? If not, should we introduce it here?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's complicated. The base class is actually a mixin. I tried adding @mustCallSuper the other day but it ends up being a bit of a mess, iirc.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh, looks like I cleaned the mess up, too, and we do have it now. La la la.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah, clearly we need a @mustCallSuper somewhere.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Always one step ahead, I see.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Bad indent.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@protected if this is for subclasses.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why didn't we use resync here?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

oops, I forgot this one.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

fixed

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should we null out _startTime as well?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I intentionally didn't so that the class would end up in a bogus state after dispose(). I can add a comment to that effect.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

added:

    // We intentionally don't null out _startTime. This means that if start()                                                                                                                                                                             
    // was ever called, the object is now in a bogus state. This weakly helps                                                                                                                                                                             
    // catch cases of use-after-dispose.                                                                                                                                                                                                                  

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should this be called muted to match the property on Ticker?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't have a strong opinion here.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I guess I'll change it to muted for consistency.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actually calling this "muted" here leads to a weird case where you set things to false if they're on, which is weird. I'm not sure what to do.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What's the point of the temporary variable?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

removed

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd use a temporary to avoid making this of query so many times.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

moved it from the other dependenciesChanged. :-)

@apwilson
Copy link
Contributor

@Hixie Is this cl going to make me cry?

@Hixie Hixie force-pushed the 5469-ticker branch 2 times, most recently from 34e048d to 572af07 Compare September 20, 2016 21:33
@Hixie
Copy link
Contributor Author

Hixie commented Sep 20, 2016

(This PR will be delayed a bit while we stabilize for gallery.)

@Hixie
Copy link
Contributor Author

Hixie commented Sep 20, 2016

tumblr_nukkme4sja1tpwh7uo1_500

Copy link
Contributor

@dragostis dragostis left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nit: ContinuousVSync?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I was going to make this change but actually that name makes it sound like it fires continually, which is a bit weird...

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe it would be useful to add [some of] this explanation to the docs?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nit: I would either use a comma after 'Typically' or place it after 'callbacks'.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

fixed x3

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same here.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

And here.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

'few' rather than 'many'? 😄

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

16 milliseconds is many milliseconds. :-)

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same here.

Copy link
Contributor

@dragostis dragostis Sep 20, 2016

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

toString should be inside `s.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

toString should be inside `s

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

toString should be inside `s

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

made it [toString]

@Hixie
Copy link
Contributor Author

Hixie commented Sep 22, 2016

Maybe it would be useful to add [some of] this explanation to the docs?

Not sure what you mean here

@Hixie
Copy link
Contributor Author

Hixie commented Sep 22, 2016

PR updated; I will check this in once the gallery launches.

This requires all AnimationController objects to be given a
TickerProvider, a class that can create the Ticker.

It also provides some nice mixins for people who want to have their
State provide a TickerProvider. And a schedulerTickerProvider for those
cases where you just want to see your battery burn.

Also, we now enforce destruction order for elements.
@Hixie
Copy link
Contributor Author

Hixie commented Sep 26, 2016

I shall land this when Travis goes green. Last chance to stop me! :-)

@Hixie Hixie merged commit 9e67385 into flutter:master Sep 26, 2016
@Hixie Hixie deleted the 5469-ticker branch September 26, 2016 17:57
rmistry pushed a commit to rmistry/flutter that referenced this pull request Jul 31, 2018
flutter/engine@af855e0...5b09e14

git log af855e0..5b09e14 --date=short --no-merges --format='%%ad %%ae %%s'
2018-07-30 37626415&flutter#43;[email protected] Roll src/third_party/skia 946a162a5239..0bf5408286ea (1 commits) (flutter#5909)
2018-07-30 [email protected] Add word movement granularities to android (flutter#5902)
2018-07-30 37626415&flutter#43;[email protected] Roll src/third_party/skia f7dcd76c552a..946a162a5239 (3 commits) (flutter#5908)
2018-07-30 [email protected] Remove the &flutter#34;VSYNC&flutter#34; trace event on Fuchsia (flutter#5907)
2018-07-30 37626415&flutter#43;[email protected] Roll src/third_party/skia 62501c12c83e..f7dcd76c552a (5 commits) (flutter#5906)
2018-07-30 [email protected] Replace travis with cirrus (flutter#5899)
2018-07-30 [email protected] Use container and GKE to accelerate build (flutter#5897)
2018-07-30 [email protected] Add docker container generation scripts (flutter#5898)
2018-07-30 37626415&flutter#43;[email protected] Roll src/third_party/skia c06b8a4e0ca3..62501c12c83e (11 commits) (flutter#5905)
2018-07-30 [email protected] Clear the EGL context only if our context is currently active (flutter#5895)
2018-07-30 [email protected] Return proper JSON-RPC error responses from service protocol failures (flutter#5889)
2018-07-30 37626415&flutter#43;[email protected] Roll src/third_party/skia 227424b57d28..c06b8a4e0ca3 (22 commits) (flutter#5904)

The AutoRoll server is located here: http://localhost:8000

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC&flutter#39;d on the roll, and stop the roller if necessary.
rmistry pushed a commit to rmistry/flutter that referenced this pull request Jul 31, 2018
flutter/engine@af855e0...3e6b681

git log af855e0..3e6b681 --date=short --no-merges --format='%%ad %%ae %%s'
2018-07-31 37626415&flutter#43;[email protected] Roll src/third_party/skia 0bf5408286ea..74c6ed3d1f17 (1 commits) (flutter#5910)
2018-07-30 37626415&flutter#43;[email protected] Roll src/third_party/skia 946a162a5239..0bf5408286ea (1 commits) (flutter#5909)
2018-07-30 [email protected] Add word movement granularities to android (flutter#5902)
2018-07-30 37626415&flutter#43;[email protected] Roll src/third_party/skia f7dcd76c552a..946a162a5239 (3 commits) (flutter#5908)
2018-07-30 [email protected] Remove the &flutter#34;VSYNC&flutter#34; trace event on Fuchsia (flutter#5907)
2018-07-30 37626415&flutter#43;[email protected] Roll src/third_party/skia 62501c12c83e..f7dcd76c552a (5 commits) (flutter#5906)
2018-07-30 [email protected] Replace travis with cirrus (flutter#5899)
2018-07-30 [email protected] Use container and GKE to accelerate build (flutter#5897)
2018-07-30 [email protected] Add docker container generation scripts (flutter#5898)
2018-07-30 37626415&flutter#43;[email protected] Roll src/third_party/skia c06b8a4e0ca3..62501c12c83e (11 commits) (flutter#5905)
2018-07-30 [email protected] Clear the EGL context only if our context is currently active (flutter#5895)
2018-07-30 [email protected] Return proper JSON-RPC error responses from service protocol failures (flutter#5889)
2018-07-30 37626415&flutter#43;[email protected] Roll src/third_party/skia 227424b57d28..c06b8a4e0ca3 (22 commits) (flutter#5904)

The AutoRoll server is located here: http://localhost:8000

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC&flutter#39;d on the roll, and stop the roller if necessary.
rmistry pushed a commit to rmistry/flutter that referenced this pull request Jul 31, 2018
flutter/engine@af855e0...d06e9e8

git log af855e0..d06e9e8 --date=short --no-merges --format='%%ad %%ae %%s'
2018-07-31 [email protected] Deprecate -[FlutterDartProject initFromDefaultSourceForConfiguration] (flutter#18886) (flutter#5858)
2018-07-31 37626415&flutter#43;[email protected] Roll src/third_party/skia 0bf5408286ea..74c6ed3d1f17 (1 commits) (flutter#5910)
2018-07-30 37626415&flutter#43;[email protected] Roll src/third_party/skia 946a162a5239..0bf5408286ea (1 commits) (flutter#5909)
2018-07-30 [email protected] Add word movement granularities to android (flutter#5902)
2018-07-30 37626415&flutter#43;[email protected] Roll src/third_party/skia f7dcd76c552a..946a162a5239 (3 commits) (flutter#5908)
2018-07-30 [email protected] Remove the &flutter#34;VSYNC&flutter#34; trace event on Fuchsia (flutter#5907)
2018-07-30 37626415&flutter#43;[email protected] Roll src/third_party/skia 62501c12c83e..f7dcd76c552a (5 commits) (flutter#5906)
2018-07-30 [email protected] Replace travis with cirrus (flutter#5899)
2018-07-30 [email protected] Use container and GKE to accelerate build (flutter#5897)
2018-07-30 [email protected] Add docker container generation scripts (flutter#5898)
2018-07-30 37626415&flutter#43;[email protected] Roll src/third_party/skia c06b8a4e0ca3..62501c12c83e (11 commits) (flutter#5905)
2018-07-30 [email protected] Clear the EGL context only if our context is currently active (flutter#5895)
2018-07-30 [email protected] Return proper JSON-RPC error responses from service protocol failures (flutter#5889)
2018-07-30 37626415&flutter#43;[email protected] Roll src/third_party/skia 227424b57d28..c06b8a4e0ca3 (22 commits) (flutter#5904)

The AutoRoll server is located here: http://localhost:8000

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC&flutter#39;d on the roll, and stop the roller if necessary.
rmistry pushed a commit to rmistry/flutter that referenced this pull request Jul 31, 2018
flutter/engine@af855e0...91ff524

git log af855e0..91ff524 --date=short --no-merges --format='%%ad %%ae %%s'
2018-07-31 37626415&flutter#43;[email protected] Roll src/third_party/skia 74c6ed3d1f17..1935aa3d27cd (11 commits) (flutter#5911)
2018-07-31 [email protected] Deprecate -[FlutterDartProject initFromDefaultSourceForConfiguration] (flutter#18886) (flutter#5858)
2018-07-31 37626415&flutter#43;[email protected] Roll src/third_party/skia 0bf5408286ea..74c6ed3d1f17 (1 commits) (flutter#5910)
2018-07-30 37626415&flutter#43;[email protected] Roll src/third_party/skia 946a162a5239..0bf5408286ea (1 commits) (flutter#5909)
2018-07-30 [email protected] Add word movement granularities to android (flutter#5902)
2018-07-30 37626415&flutter#43;[email protected] Roll src/third_party/skia f7dcd76c552a..946a162a5239 (3 commits) (flutter#5908)
2018-07-30 [email protected] Remove the &flutter#34;VSYNC&flutter#34; trace event on Fuchsia (flutter#5907)
2018-07-30 37626415&flutter#43;[email protected] Roll src/third_party/skia 62501c12c83e..f7dcd76c552a (5 commits) (flutter#5906)
2018-07-30 [email protected] Replace travis with cirrus (flutter#5899)
2018-07-30 [email protected] Use container and GKE to accelerate build (flutter#5897)
2018-07-30 [email protected] Add docker container generation scripts (flutter#5898)
2018-07-30 37626415&flutter#43;[email protected] Roll src/third_party/skia c06b8a4e0ca3..62501c12c83e (11 commits) (flutter#5905)
2018-07-30 [email protected] Clear the EGL context only if our context is currently active (flutter#5895)
2018-07-30 [email protected] Return proper JSON-RPC error responses from service protocol failures (flutter#5889)
2018-07-30 37626415&flutter#43;[email protected] Roll src/third_party/skia 227424b57d28..c06b8a4e0ca3 (22 commits) (flutter#5904)

The AutoRoll server is located here: http://localhost:8000

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC&flutter#39;d on the roll, and stop the roller if necessary.
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Aug 15, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants