> **Warning** _Plugin Refactor_
> For more flexibility there was one final rework of plugins. Registering requires all plugins to be instantiated
> before being passed into `Color.register`, but this allows a user redefine some defaults of certain plugins.
>
> `coloraide.ColorAll` was moved to `coloraide.everythng.ColorAll` to avoid allocating plugins when they are not
> desired.
>
> In the process, we also renamed a number of plugin classes for consistency and predictability, details found below.
- **NEW**: Updated some class names for consistency and predictability. `XyY` --> `xyY`, `Din99o` --> `DIN99o`, `SRGB`
--> `sRGB`, and `ORGB` --> `oRGB`.
Lastly, `LCh` should be the default casing convention. This convention will be followed unless a spec mentions
otherwise. Changes: `Lch` --> `LCh`, `LchD65` --> `LChD65`, `Oklch` --> `OkLCh`, `Lchuv` --> `LChuv`, `Lch99o` -->
`LCh99o`, `LchChroma` --> `LChChroma`, `OklchChroma` --> `OkLChChroma`, and `Lchish` --> `LChish`.
- **NEW**: Updated migration guide with recent plugin changes.
- **NEW**: `coloraide.ColorAll` renamed and moved to `coloraide.everything.ColorAll`. This prevents unnecessary
inclusion and allocation of objects that are not desired.
- **NEW**: Default `Color` object now only registers `bradford` CAT by default, all others must be registered
separately, or `coloraide.everything.Color` could be used.
- **NEW**: All plugin classes must be instantiated when being registered. This allows some plugins to be instantiated
with different defaults. This allows some plugins to be configured with different defaults.
py
Before change:
Color.register([Plugin1, Plugin2])
After change:
Color.register([Plugin1(), Plugin2(optional_parm=True)])