tree eca5097ad3d8367854d97f7ee90059423636bd4a
parent 4850de6020f4a05ba2b05505745583abab667114
author Andrei Litvin <andy314@gmail.com> 1690233384 -0400
committer GitHub <noreply@github.com> 1690233384 +0000
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsBcBAABCAAQBQJkvuooCRBK7hj4Ov3rIwAAJ3oIAGr4orG2UJUHH3D6l9iPf859
 PHLIHmhyyOySWcqEPVZdRoVCcstwb62AUcGY5sNA0TZUnGnr829B48v89RPpDgZl
 K9SJtdgOjh/pNusFRNHt1teG+4h+lbdQ3bQHuZi81J6hbD66ljIjqQQF8aK5q44L
 ZgAiBEu9QUX9Jlm/3L2HAm0nOKnEkO/JDNyHQn1dFo8aAP0XaqHNBEsWMIm89r2O
 lbFeQmySERJanoO295ibYUD9MBPEQA58tPGGRy4CAk/r0xZ3b9bgFHV1Sj6fgk1V
 1RKTduXlHBY9jZxDDmxqJPwTlekm+lxGaua7GDxFF14mbdj24IcaVNQltdj6pmg=
 =Z/we
 -----END PGP SIGNATURE-----
 

Add support for `--trace-to` for python and use it in repl tests (#28179)

* Start adding tracing start/stop functions

* Add raii-like support for tracing

* Add raii-like support for tracing

* Fix compile logic

* Switch linux, mac, android to C++17 by default

* Start outputting trace data

* Upload traces that are gathered

* Fix names

* Allow placeholders in script args too

* Allow from-string tracing

* Do not newline-separate restyle path otherwise only the first argument is processed

* Restyle

* Add some additional types

* Minor python fixes

* Import ctypes

* Things run now

* Add trace bits to our tests

* Undo restyle-diff change

* Fix some typos in naming

* Add perfetto for darwin too

* mobile-device-test.py does not suppor trace-to yet

* Make mobile device test also be able to trace. Mobile device test seems super slow

* Restyled by autopep8

* Restyled by isort

---------

Co-authored-by: Andrei Litvin <andreilitvin@google.com>
Co-authored-by: Restyled.io <commits@restyled.io>