||Holds run-time state so it can easily be passed to command providers.
||This file defines classes for representing config data/settings.
Config data is modeled as key-value pairs. Keys are grouped together into named
sections. Individual config settings (options) have metadata associated with
them. This metadata includes type, default value, valid values, etc.
The main interface to config data is the ConfigSettings class. 1 or more
ConfigProvider classes are associated with ConfigSettings and define what
settings are available.
||Container for mach command metadata.
||Create a command alias of the form `<alias>=<command> <args>`.
Aliases can also be used to set default arguments:
||Format number of seconds to MM:SS.DD form.
||You can invoke |./mach busted| to check if this issue is already on file. If it
isn't, please use |./mach busted file %s| to report it. If |./mach busted| is
misbehaving, you can also inspect the dependencies of bug 1543241.
||It looks like you tried to run a mach command from an invalid context. The %s
command failed to meet the following conditions: %s
Run |mach help| to show a list of all commands available to the current context.
||Thunderbird requirements definitions cannot include PyPI packages.
||Report the exception to remote error-tracking software.
||Records and sends Telemetry using Glean.
Metrics are defined in python/mozbuild/metrics.yaml.
Pings are defined in python/mozbuild/pings.yaml.
The "metrics" and "pings" properties may be replaced with no-op implementations if
Glean isn't available. This allows consumers to report telemetry without having
to guard against incompatible environments.
Also tracks whether an employee was just automatically opted into telemetry
during this mach invocation.
||Creates and a Telemetry instance based on system details.
If telemetry isn't enabled, the current interpreter isn't Python 3, or Glean
can't be imported, then a "mock" telemetry instance is returned that doesn't
set or record any data. This allows consumers to optimistically set telemetry
data without needing to specifically handle the case where the current system
doesn't support it.
||This file contains code for interacting with terminals.
All the terminal interaction code is consolidated so the complexity can be in
one place, away from code that is commonly looked at.
||Represents an error caused by something the user did wrong rather than
an internal `mach` failure. Exceptions that are subclasses of this class
will not be reported as failures to Sentry.