Initial implementation with sync support for the following fields:
- Name
- Upgrade Allowed
- Min Format Score
- Cutoff
- Cutoff Format Score
- Items
Quality profiles are always created if they are defined under
`quality_profiles` at the top-level. Within a quality profile
configuration, Recyclarr will not modify quality profile fields if those
corresponding properties in the config are omitted.
This change was necessary to facilitate the ability to serialize
(create/modify) YAML configuration data. This is a prerequisite to
creating config templates and also GUI work in the future.
Instead of organizing logic using service, such as Sonarr or Radarr,
organize it using function. So now logic is broken up by Custom Format,
Release Profile, and Quality Size.
YamlSerializerFactory continues to grow as we add parsing features to
YAML files. A new behavior system now provides granular sets of features
to the factory. To extend the functionality of the YAML parser,
implement the `IYamlBehavior` interface. It will automatically be
registered to Autofac and injected into `YamlSerializerFactory`.