mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-11-28 15:23:51 +00:00
19b2dce6f4
This patch series replaces the existing expand_categories method with a new one that makes us of the decision matrices to build the categories to display. The category matrix contains all combinations of variants, suites, platforms, and apps, for this particular category and each element represents whether some combination (variant, suite, platform, app) can run in this category. True means it can run, False means it can't. At the end of the category expansions phase, we go through the categories to display and apply the restriction/negation queries to them. Doing this at the end allows us to be more precise in where we apply these. Note that the tests category, and variants were updated because this was a major change. Given the new restrictions on the categories, the number of categories are dramatically reduced. This is because we strengthened the criteria for being selected from only one variant being available, to all variants being available to run. This new method with matrices uses more code, and memory versus the previous method, but it's much more maintainable and has new features to prevent the modification of the core code of the selector. In the previous solution, we needed to modify the core code when we added new restrictions. Now, this is all defined outside of the PerfParser. It's also much easier to tell where things are happening. Before, the code was very concentrated and a small change often caused unwanted/unexpected changes. Differential Revision: https://phabricator.services.mozilla.com/D163839 |
||
---|---|---|
.. | ||
bloatview | ||
browsertime | ||
clang-tidy | ||
code-coverage | ||
compare-locales | ||
crashreporter | ||
esmify | ||
fuzzing | ||
github-sync | ||
jprof | ||
leak-gauge | ||
lint | ||
moztreedocs | ||
performance | ||
phabricator | ||
power | ||
profiler | ||
quitter | ||
rb | ||
rewriting | ||
rusttests | ||
sanitizer/docs | ||
tryselect | ||
update-packaging | ||
update-programs | ||
update-verify | ||
vcs | ||
mach_commands.py | ||
moz.build |