ScopedSettings builds on
ScopedValues (equivalent to
Base.ScopedValues for Julia >= v1.11) to implement scoped settings.
A ScopedSetting, like a ScopedValue, can be set to different values in
different scopes. But unlike a ScopedValue, the global default value of a
ScopedSetting can either be a value or can be computed on the fly, and can
be mutated via a global override. ScopedSettings integrates with
Preferences
to base ScopedValue default values on preferences and environment variables.
See the package documentation for more details: