Skip to content

Conversation

@tvolkert
Copy link
Contributor

Before this change, long-running post-frame callbacks wouldn't show up in the timeline at all. This adds a timeline event for post-frame callbacks, with a debug flag that will add timeline events for each individual callback.

#testexempt -- we have no way to test calls to the timeline.

Pre-launch Checklist

  • I read the [Contributor Guide] and followed the process outlined there for submitting PRs.
  • I read the [Tree Hygiene] wiki page, which explains my responsibilities.
  • I read and followed the [Flutter Style Guide], including [Features we expect every widget to implement].
  • I signed the [CLA].
  • I updated/added relevant documentation (doc comments with ///).
  • I added new tests to check the change I am making, or this PR is [test-exempt].
  • All existing and new tests are passing.

@flutter-dashboard
Copy link

It looks like this pull request may not have tests. Please make sure to add tests before merging. If you need an exemption to this rule, contact Hixie or stuartmorgan on the #hackers channel in Chat (don't just cc them here, they won't see it! Use Discord!).

If you are not sure if you need tests, consider this rule of thumb: the purpose of a test is to make sure someone doesn't accidentally revert the fix. Ask yourself, is there anything in your PR that you feel it is important we not accidentally revert back to how it was before your fix?

Reviewers: Read the Tree Hygiene page and make sure this patch meets those guidelines before LGTMing.

@github-actions github-actions bot added the framework flutter/packages/flutter repository. See also f: labels. label Oct 12, 2023
@tvolkert
Copy link
Contributor Author

Assets are added in flutter/assets-for-api-docs#227

@tvolkert tvolkert requested a review from Hixie October 12, 2023 22:25
@tvolkert
Copy link
Contributor Author

Test failure looks like #136329

@tvolkert tvolkert force-pushed the tracePostFrameCallbacks branch from 3d23f54 to 8380682 Compare October 13, 2023 01:15
Copy link
Contributor

Choose a reason for hiding this comment

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

The StackTrace API format is technically unspecified, and this plus regex is a bit scary to me. Would it be so bad to use a generic event name? or allow developers to speciy a label?

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 added a debug label

@tvolkert tvolkert force-pushed the tracePostFrameCallbacks branch from 8380682 to 1d7ea8a Compare October 22, 2023 05:17
@github-actions github-actions bot added a: text input Entering text in a text field or keyboard related problems f: material design flutter/packages/flutter/material repository. a: accessibility Accessibility, e.g. VoiceOver or TalkBack. (aka a11y) f: scrolling Viewports, list views, slivers, etc. f: cupertino flutter/packages/flutter/cupertino repository f: routes Navigator, Router, and related APIs. f: gestures flutter/packages/flutter/gestures repository. labels Oct 22, 2023
@tvolkert tvolkert changed the title Added timeline events for post frame callbacks Add timeline events for post frame callbacks Oct 22, 2023
@tvolkert tvolkert force-pushed the tracePostFrameCallbacks branch from 1d7ea8a to e0bc307 Compare October 22, 2023 05:47
Copy link
Contributor

@Hixie Hixie left a comment

Choose a reason for hiding this comment

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

@tvolkert tvolkert added the autosubmit Merge PR when tree becomes green via auto submit App label Oct 22, 2023
@auto-submit auto-submit bot merged commit cb9a3f6 into flutter:master Oct 22, 2023
tvolkert added a commit to flutter/assets-for-api-docs that referenced this pull request Oct 22, 2023
@tvolkert tvolkert deleted the tracePostFrameCallbacks branch October 23, 2023 02:02
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Oct 23, 2023
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Oct 23, 2023
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Oct 23, 2023
auto-submit bot pushed a commit to flutter/packages that referenced this pull request Oct 23, 2023
flutter/flutter@823e083...5e8b5f4

2023-10-23 [email protected] Update `ColorScheme.fromSwatch` docs for Material 3 (flutter/flutter#136816)
2023-10-23 [email protected] Reland "Fixes ability to call nextFocus() on a node to focus its descâ�¦ (flutter/flutter#136898)
2023-10-23 [email protected] `OverlayPortal.overlayChild` contributes semantics to `OverlayPortal` instead of `Overlay` (flutter/flutter#134921)
2023-10-23 [email protected] Roll Packages from be915be to 4bf5114 (12 revisions) (flutter/flutter#137062)
2023-10-23 [email protected] Roll Flutter Engine from 8820a419c800 to 1dc66e8f2fba (1 revision) (flutter/flutter#137055)
2023-10-23 [email protected] Roll Flutter Engine from e2abdeb650f8 to 8820a419c800 (1 revision) (flutter/flutter#137051)
2023-10-23 [email protected] Roll Flutter Engine from 39f78ce1884d to e2abdeb650f8 (1 revision) (flutter/flutter#137050)
2023-10-23 [email protected] Roll Flutter Engine from 4899344c34d9 to 39f78ce1884d (1 revision) (flutter/flutter#137048)
2023-10-23 [email protected] Roll Flutter Engine from 9d05b061e245 to 4899344c34d9 (1 revision) (flutter/flutter#137046)
2023-10-23 [email protected] Roll Flutter Engine from cde34b8182b1 to 9d05b061e245 (1 revision) (flutter/flutter#137044)
2023-10-22 [email protected] Add timeline events for post frame callbacks (flutter/flutter#136435)
2023-10-22 [email protected] Roll Flutter Engine from b8d702c0e0d7 to cde34b8182b1 (1 revision) (flutter/flutter#137038)
2023-10-22 [email protected] Roll Flutter Engine from f3c7a50bc83f to b8d702c0e0d7 (1 revision) (flutter/flutter#137035)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-packages
Please CC [email protected],[email protected],[email protected] on the revert to ensure that a human
is aware of the problem.

To file a bug in Packages: https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
thanhle1547 added a commit to thanhle1547/flutter_form_registry that referenced this pull request Sep 6, 2025
This adds a timeline event for post-frame callbacks, with a debug flag that will add timeline events for each individual callback.

flutter/flutter#136435
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

a: accessibility Accessibility, e.g. VoiceOver or TalkBack. (aka a11y) a: text input Entering text in a text field or keyboard related problems autosubmit Merge PR when tree becomes green via auto submit App f: cupertino flutter/packages/flutter/cupertino repository f: gestures flutter/packages/flutter/gestures repository. f: material design flutter/packages/flutter/material repository. f: routes Navigator, Router, and related APIs. f: scrolling Viewports, list views, slivers, etc. framework flutter/packages/flutter repository. See also f: labels.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants