Releases: MooVC/Fluentify
Releases · MooVC/Fluentify
1.0.0-rc.1: Ambiguous Delegate Resolution
Changed
- Auto Instantiation extension overloads to use the
Func<T, T>
delegae in place ofBuilder<T>
, addressing a warning relating to ambigious types when an assembly referencing Fluentify is referenced by another assembly that also uses Fluentify. - Nuget package metadata.
Removed
- The BuilderDelegateGenerator, used to generate the Builder delegate, formally used by Fluentify to support Auto Instantiation and onward configuration.
Full Changelog: 1.0.0-alpha0007...1.0.0-rc.1
1.0.0-alpha0007: Analyzers
Added
- Analyzer FLTFY01 that issues a Warning whenever the Fluentify attribute is attached to a class that does not have an accessible default constructor.
- Analyzer FLTFY02 that issues a Suggestion whenever the Descriptor attribute is attached to a property that is disregarded by Fluentify.
- Analyzer FLTFY03 that issues a Suggestion whenever the Descriptor attribute is attached to a property on a type that is not annotated with Fluentify.
- Analyzer FLTFY04 that issues a Warning whenever the value provided for the Descriptor attribute is deemed unsuitable for use as a method name.
- Analyzer FLTFY05 that issues a Suggestion whenever the Ignore attribute is attached to a property on a type that is not annotated with Fluentify.
- Analyzer FLTFY06 that issues a Suggestion whenever the Ignore attribute is attached to a property that is already disregarded by Fluentify.
- README.md to Nuget package.
- Security Policy.
Changed
- The Builder delegate is now public, enabling generated extensions to be called from outside the scope of the current assembly.
Full Changelog: 1.0.0-alpha0006...1.0.0-alpha0007
1.0.0-alpha0006: Specialized Support for Booleans
Changed
- The default descriptor for properties of type
bool
orbool?
will now be the same name as the property, instead ofWith{PropertyName}
.
Fixed
- An extension accepting a
Builder<T>
parameter is no longer generated for value types.
Full Changelog: 1.0.0-alpha0005...1.0.0-alpha0006
1.0.0-alpha0005: Specialized Support for Enumerables
Added
- Params based extension generation for IEnumerable, IReadOnlyCollection and IReadOnlyList, supporting additive operations.
Full Changelog: 1.0.0-alpha0004...1.0.0-alpha0005
1.0.0-alpha0004: Specialized Support for Collections
Added
- Params based extension generation for types deriving from ICollection that adhere to the new() constraint, supporting additive operations.
Fixed
- Class instance initialization now correctly sets each member, including properties annotated with Ignore.
- The generated constructor for partial record types now correctly accounts for generic type parameters.
Full Changelog: 1.0.0-alpha0003...1.0.0-alpha0004
1.0.0-alpha0003: Specialized Support for Arrays
Added
- Params based extension generation for Array types, supporting additive operations.
Full Changelog: https://github.com/MooVC/Fluentify/commits/1.0.0-alpha0003
1.0.0-alpha0002: Class Extension Generation
Added
- Extension generation on class type using the Fluentify attribute.
Full Changelog: 1.0.0-alpha0001...1.0.0-alpha0002
1.0.0-alpha0001: Initial Release (Alpha)
Added
- Extension generation per property on a record type using the Fluentify attribute.
- Custom descriptors for generated extensions on a per property basis using the Descriptor attribute.
- The ability to opt-out of extension generation via the Ignore attribute.
Full Changelog: https://github.com/MooVC/Fluentify/commits/1.0.0-alpha0001