Closed
Description
Is your improvement request related to a problem? Please describe.
In the discussion of pull-request #3235 (Create new fallback and unknown section in GitVersionConfiguration) we came to the conclusion that it might be a good idea to move the serialization and deserialization process out of the scope of the core domain (see #3235 (comment)).
Detailed Description
The core domain should have only the business logic without the dependency to the Yaml library.
Possible Implementation
Move the logic in GitVersionContextFactory from core to another place and only provide the final GitVersionConfiguration instance to the core domain. The idea is to either make the GitVersionConfiguration immutable or provide the entity via interface or abstract class.