mash: Investigate base::Feature usage in the ash process |
|||
Issue descriptionbase::Feature relies on local state. Historically this wasn't loaded early enough for features to be used for configuration at startup. sky@ fixed this for --mus by moving local state loading earlier. Verify that this works in the ash_and_ui process for --mash. Until we make this work, "features" will need to be ordinary command line switches.
,
Feb 6 2018
TL;DR - base::Feature works fine in //ash for both mustash and classic ash. We should introduce ash/public/cpp/ash_features.(h|cc) and start using it. Details: * Enabling flags via command line works (--enable-features=Foo) * Features enabled via Finch are synchronized after browser startup. These features are applied on the next Chrome start. This behavior is identical in mustash and classic ash. * There is code in FieldTrialsSynchronizer that copies features to long-runner renderer processes. The ash process under mustash doesn't need this today. If we need it in the future we could change this code to provide an interface for utility processes or other arbitrary mojo service processes: https://cs.chromium.org/chromium/src/chrome/browser/metrics/field_trial_synchronizer.cc?l=48 If you need to work on this in the future: * You can experiment on linux-chromeos builds. * Use an official, branded build. * Pass --fake-variations-channel=canary to make the metrics system think you are on a real release channel and not on an engineering build * Use chrome://version/?show-variations-cmd to see what field trials the browser process thinks you are in * Use logging of base::FeatureList::IsEnabled() in ash to see what the ash process thinks under --mash * Test with a commonly set field trial, like HappinessTrackingSystem (enabled for 99% of users) See go/uma and go/finch-debugging for other tips.
,
Feb 6 2018
Other tricks: * Wipe your user data dir before starting * On first login you won't have variations in chrome://version, but you will on the next run
,
Feb 26 2018
|
|||
►
Sign in to add a comment |
|||
Comment 1 by wutao@chromium.org
, Feb 6 2018