v45.0 - 2024-05-09:
Trace Processor:
* Optimised single column `DISTINCT` queries.
* Optimised `LIMIT` and `OFFSET` queries.
SQL Standard library:
* Improved support for querying startups on Android 9 (API level 28) and
below. Available in `android.startup.startups` module.
* Added tables for querying "Time To Initial Display" and "Time To Full
Display" metrics for app startups. Available in new module
`android.startup.time_to_display`.
* Added table for querying hardware power rail counters in new
`android.power_rails` module.
UI:
* Add tracks to the list of searchable items.
* Use mipmaps to improve track query performance on large traces.
* Fix slow scrolling bug in ftrace explorer tab on low DPI machines.
* Overhaul track decider queries to improve trace load times.
* Add track
* Tidy up command names & remove some example ones.
* Remove arg auto-completion in pivot table.
* Show dominator tree views by default.
* Fix counter event selection off-by-one error.
* Add viewport control to the plugin API.
* Sticky track titles to improve track button accessibility in tall tracks.
* A handful of small bugfixes.
SDK:
* The TRACE_EVENT macro used to reject `const char *` event names: either
`StaticString` or `DynamicString` needed to be specified. In the last year
(since https://r.android.com/2494614), TRACE_EVENT mistakenly accepted
`const char *` as an event name. This has been fixed now. In case your
code fails to compile,
https://perfetto.dev/docs/instrumentation/track-events#dynamic-event-names
explains how to fix the problem.