Release 6.0.0-beta0002
Pre-release
Pre-release
Feature/redesign plumbing (#75) The package had some large design changes that introduce breaking changes to the API if you were customising the model creation process. The following changes have been made. - All ValueGenerator types have been moved into a ValueGenerators namespace. - All TypeCreator types have been moved into a TypeCreators namespace. - CreationRule has been replaced with ExpressionCreationRule, PredicateCreationRule and RegexCreationRule which are in the CreationRules namespace. - The combination of build strategy, compiler and configuration have been replaced with just `IBuildConfiguration`. - IBuildConfiguration is now mutable. A new IBuildConfiguration is created for each call to a static method on the `Model` class however that some configuration is used for the entire creation process. Any mutations to the build configuration will apply until the entire build tree has completed. - `ICompilerModule` has been renamed to `IConfigurationModule` and now configures `IBuildConfiguration`. - The `IgnoreRule` class has been replaced with the `IIgnoreRule` interface. The logic for processing rule matches moves from `DefaultPropertyResolver` to the rule itself. - Renamed IValueGenerator.IsSupported to IsMatch - Renamed IPostBuildAction.IsSupported to IsMatch - Added IBuildConfiguration.TypeResolver - Added IBuildConfiguration parameter to ITypeCreator.CanCreate - ICreationRule, ITypeCreator, IValueGenerator, IPostBuildAction and IBuildLog now have overloads for ParameterInfo, PropertyInfo and Type rather than (Type, string) - IExecuteOrderRule and IIgnoreRule now have overloads for PropertyInfo rather than (Type, string) +semver: breaking Closes #74, #70, #73