For simple rules like function spacing, we can auto-fix these across the code
base so they are followed in a consistent way.
To generate this patch, I ran:
./mach eslint devtools --no-ignore --fix
After this, I reverted any changes to third party files that we really do want
to ignore.
MozReview-Commit-ID: 6Q8BApkAW20
This adds the INDIVIDUALS view state to the memory panel, renames "dominator
tree display" to "label display", and adds a view for listing the individual
nodes in a census group and inspecting each nodes' retaining paths.
--HG--
rename : devtools/client/memory/actions/dominator-tree-display.js => devtools/client/memory/actions/label-display.js
rename : devtools/client/memory/reducers/dominator-tree-display.js => devtools/client/memory/reducers/label-display.js
Effectively, this moves `inverted` from a global and per-census state, to a
per-`breakdownModel` state. Additionally, a `breakdownModel` is not just a
breakdown spec anymore, but also some extra associated metadata. As such, it has
been split in two and renamed to "censusDisplayModel" and
"dominatorTreeDisplayModel".
--HG--
rename : devtools/client/memory/reducers/breakdown.js => devtools/client/memory/reducers/census-display.js
rename : devtools/client/memory/reducers/dominatorTreeBreakdown.js => devtools/client/memory/reducers/dominator-tree-display.js
rename : devtools/client/memory/test/browser/browser_memory_allocationStackBreakdown_01.js => devtools/client/memory/test/browser/browser_memory_allocationStackDisplay_01.js
rename : devtools/client/memory/test/browser/browser_memory_breakdowns_01.js => devtools/client/memory/test/browser/browser_memory_displays_01.js
rename : devtools/client/memory/test/unit/test_action-set-breakdown-and-refresh-02.js => devtools/client/memory/test/unit/test_action-set-display-and-refresh-02.js
This commit does the following:
- Rename "Group By: {Allocation => Call} Stack" in memory tool
- Rename "Label By: {Allocation => Call} Stack" in memory tool
- Get rid of "Internal Type" for labeling and grouping nodes
- Get rid of group by "Object Class" in memory tool
- Rename group/label by "Coarse Type" to plain "Type" in memory tool
This patch overhauls the memory tool's frontend from being in a state of viewing
a snapshot's census (the implicit default) or viewing a census diff (a special
cased kind of thing) to one of three recognized view states: (1) census, (2)
diffing, or (3) dominator tree. The logic surrounding our current view is more
explicit now. View option (3) is the new one, whose introduction required those
clean ups.
Dominator trees are too large to render in full, all at once. Instead, we
eagerly load and render a few levels deep and then incrementally fetch further
subtrees as their parents are expanded in the UI. This means that we get new
Tree component instances across incremental fetches. Before this commit, the
Tree component stored a bunch of state internally (in this.state rather than
this.props) and we would lose focus and expansion state across incremental
fetches. This internal state has been pulled out and made as explicit props,
which are now managed by actions and reducers just like the rest of the state.
--HG--
rename : devtools/client/memory/components/tree-item.js => devtools/client/memory/components/census-tree-item.js