The code to import trace formatted events intentionally re-orders events in order to make it easier at flamegraph construction time to order the pushes and pops of frames. It turns out that this re-ordering results in incorrect flamegraphs being generated as shown in #251. This PR fixes this by avoiding re-ordering in situations where it isn't necessary.
Speedscope TypeScript source
This directory contains the bulk of speedscope's source code.
Subdirectories
gl/: WebGL code. This includes e.g. the code to render flamecharts.import/: Code to import profiles from varous profilers into speedscope. This include e.g. the code to import Chrome performance profiles.lib/: Mostly dependency-less utilities. This includes e.g. an LRU cache implementation, basic linear algebra classes, and the definition of speedscope's file format.store/: Speedscope's application state management. Implemented usingredux.typings/: TypeScript definition filesviews/: View code to generate the HTML & CSS used to construct the UI. Implemented usingpreactandaphrodite. Also contains code mapping from thereduxstore to views usingpreact-redux