- Fixed a bug where Events without tags were not treated by the trace writer
- Fixed a bug where Base64 encoding of the TraceViewer can't be parsed by the browser
- PerfMark task starts, stops, and events can now accept a "sub" task, as a second parameter. This makes it possible to avoid doing String concatenation when PerfMark is disabled
- Expose named tagging methods, also overloaded as
attachTag. These tags are different from
Tagas they have a name associated with the value.
- Add two-long tag variant, to accept 128 bit tag values. In the future, 128bit tags can be used for UUIDs, IPv6 addresses, and other larger tag spaces.
@CompileTimeConstantfrom PerfMark, and instead relaxed to just being a runtime constant.
- Fixed bug where the start time of recording only was calculated after being enabled
- Made trace writer unconditionally flush after writing HTML.
Link.link()are both deprecated and have been made into no-ops. These methods are replaced with the equivalent
PerfMark.linkIn(Link)methods, which fit better with other API methods.
- Tags passed in to tracing calls are not checked for
nulluntil much later. Passing
nullwas not allowed, but checking for it add unnecessary overhead when PerfMark was disabled. Users should continue to avoid passing null.
TraceEventViewerclass has been added, which aids in the generation of the trace UI. Users can now call
TraceEventViewer.writeTraceHtml()to render the trace data, instead of having to pass the JSON to
catapult. Note: this is not yet API stable, as the catapult trace viewer may not be maintained in the future.