catapult: new nox-catapult package for the Trace Event Format
Typed values and nox-json codecs for the JSON trace format consumed
by chrome://tracing, Perfetto and the Catapult tools:
- Phase: the ph character enumeration; unknown phases decode to
Other and round-trip verbatim, the legacy instant 'I' normalizes
to 'i'.
- Event: a flat record of the common members (name, cat, ts, pid,
tid, dur, args, id, ...); members the library does not type are
kept in source order in an extra field and round-trip unchanged.
Helpers cover the common producer shapes (complete, instant,
counter, process_name, thread_name).
- Catapult.t: a whole trace in either container format. Decoding
accepts both; encoding picks the array format when the trace is
events-only and the object format otherwise (stack frames,
samples, displayTimeUnit, free-form metadata).
- of_string repairs the crash-tolerant array tail the spec allows
(missing ']', trailing comma); Writer streams events one at a
time so producers get that property for free.
No existing package covers this: the opam catapult and trace-tef
libraries are runtime tracing clients that emit the format with
hand-rolled printf JSON and provide no decoder; both are credited
in the README. Tests use the spec's examples as vectors; alcobar
fuzz covers decode totality and roundtrips; README and mli
examples are mdx-checked.
catapult: new nox-catapult package for the Trace Event Format
Typed values and nox-json codecs for the JSON trace format consumed
by chrome://tracing, Perfetto and the Catapult tools:
- Phase: the ph character enumeration; unknown phases decode to
Other and round-trip verbatim, the legacy instant 'I' normalizes
to 'i'.
- Event: a flat record of the common members (name, cat, ts, pid,
tid, dur, args, id, ...); members the library does not type are
kept in source order in an extra field and round-trip unchanged.
Helpers cover the common producer shapes (complete, instant,
counter, process_name, thread_name).
- Catapult.t: a whole trace in either container format. Decoding
accepts both; encoding picks the array format when the trace is
events-only and the object format otherwise (stack frames,
samples, displayTimeUnit, free-form metadata).
- of_string repairs the crash-tolerant array tail the spec allows
(missing ']', trailing comma); Writer streams events one at a
time so producers get that property for free.
No existing package covers this: the opam catapult and trace-tef
libraries are runtime tracing clients that emit the format with
hand-rolled printf JSON and provide no decoder; both are credited
in the README. Tests use the spec's examples as vectors; alcobar
fuzz covers decode totality and roundtrips; README and mli
examples are mdx-checked.
catapult: new nox-catapult package for the Trace Event Format
Typed values and nox-json codecs for the JSON trace format consumed
by chrome://tracing, Perfetto and the Catapult tools:
- Phase: the ph character enumeration; unknown phases decode to
Other and round-trip verbatim, the legacy instant 'I' normalizes
to 'i'.
- Event: a flat record of the common members (name, cat, ts, pid,
tid, dur, args, id, ...); members the library does not type are
kept in source order in an extra field and round-trip unchanged.
Helpers cover the common producer shapes (complete, instant,
counter, process_name, thread_name).
- Catapult.t: a whole trace in either container format. Decoding
accepts both; encoding picks the array format when the trace is
events-only and the object format otherwise (stack frames,
samples, displayTimeUnit, free-form metadata).
- of_string repairs the crash-tolerant array tail the spec allows
(missing ']', trailing comma); Writer streams events one at a
time so producers get that property for free.
No existing package covers this: the opam catapult and trace-tef
libraries are runtime tracing clients that emit the format with
hand-rolled printf JSON and provide no decoder; both are credited
in the README. Tests use the spec's examples as vectors; alcobar
fuzz covers decode totality and roundtrips; README and mli
examples are mdx-checked.
catapult: new nox-catapult package for the Trace Event Format
Typed values and nox-json codecs for the JSON trace format consumed
by chrome://tracing, Perfetto and the Catapult tools:
- Phase: the ph character enumeration; unknown phases decode to
Other and round-trip verbatim, the legacy instant 'I' normalizes
to 'i'.
- Event: a flat record of the common members (name, cat, ts, pid,
tid, dur, args, id, ...); members the library does not type are
kept in source order in an extra field and round-trip unchanged.
Helpers cover the common producer shapes (complete, instant,
counter, process_name, thread_name).
- Catapult.t: a whole trace in either container format. Decoding
accepts both; encoding picks the array format when the trace is
events-only and the object format otherwise (stack frames,
samples, displayTimeUnit, free-form metadata).
- of_string repairs the crash-tolerant array tail the spec allows
(missing ']', trailing comma); Writer streams events one at a
time so producers get that property for free.
No existing package covers this: the opam catapult and trace-tef
libraries are runtime tracing clients that emit the format with
hand-rolled printf JSON and provide no decoder; both are credited
in the README. Tests use the spec's examples as vectors; alcobar
fuzz covers decode totality and roundtrips; README and mli
examples are mdx-checked.
catapult: new nox-catapult package for the Trace Event Format
Typed values and nox-json codecs for the JSON trace format consumed
by chrome://tracing, Perfetto and the Catapult tools:
- Phase: the ph character enumeration; unknown phases decode to
Other and round-trip verbatim, the legacy instant 'I' normalizes
to 'i'.
- Event: a flat record of the common members (name, cat, ts, pid,
tid, dur, args, id, ...); members the library does not type are
kept in source order in an extra field and round-trip unchanged.
Helpers cover the common producer shapes (complete, instant,
counter, process_name, thread_name).
- Catapult.t: a whole trace in either container format. Decoding
accepts both; encoding picks the array format when the trace is
events-only and the object format otherwise (stack frames,
samples, displayTimeUnit, free-form metadata).
- of_string repairs the crash-tolerant array tail the spec allows
(missing ']', trailing comma); Writer streams events one at a
time so producers get that property for free.
No existing package covers this: the opam catapult and trace-tef
libraries are runtime tracing clients that emit the format with
hand-rolled printf JSON and provide no decoder; both are credited
in the README. Tests use the spec's examples as vectors; alcobar
fuzz covers decode totality and roundtrips; README and mli
examples are mdx-checked.