๐บ๏ธ Mappa: v1.0.0
A new version of Mappa (v1.1.0) has been released.
Whatโs new?
- #11 Generated method can be surrounded by
#praga warning disable
when the user setup propertyPragmaWarning
inMappaSettings
attribute; - #126 Add
DebuggerNonUserCodeAttribute
to generated methods; - #137 Removed usage of
SymbolEqualityComparer.IncludeNullability
as it does not work very well with code with mixed nullability; - #122 Improved check if a property/method can be accessed in a class;
- #93 Add
MappaStaticDependency
attribute; - #118 Add support for concurrent collections (
BlockingCollection<T>
,ConcurrentBag<T>
,ConcurrentStack<T>
,ConcurrentQueue<T>
,ConcurrentDictionary<TKey, TValue>
,IProducerConsumerCollection
); - #127 Add warning when a property cannot be mapped.
Bug fixes
- #128 In some instances Mappa emits a CS8600 warning;
- #121 Fail to map
System.DateTime
to protobufTimestamp
.
Whatโs next for v1.2.0?
More feature are going to be added in future releases:
- #129 Add ability to assign constant values;
- #53 Better detection of implemented interfaces in case multiple interfaces of the same type are implemented by the class;
- #24 Add support for faster loop iteration using
Span<T>
when possible; - #34 User should be able to select if they want to use the
Add
method or the indexer when mapping to dictionaries; - #54 When mapping from string support static
Parse
methods on the target type; - #70 Allow
MappaInvokeMethodAttribute
to support methods withMappaMethodContext
; - #47 Add default support for mapping from
Guid
tobyte[]
and vice-versa; - #118 When targeting read-only properties of type collection Mappa should support more types (e.g.
Stack<T>
,Queue<T>
, โฆ);
NuGet packages
Mappa provide 6 NuGet packeges:
- Mappa: source generator that allows to automatically generate mapping between classes and value types;
- Mappa source generator: source generator that allows to automatically generate mapping between classes and value types;
- Mappa Protobuf: methods to map
Google.Protobuf.WellKnownTypes
objects from Google.Protobuf package into common objects. - Mappa Protobuf dependency: utility methods to register the Protobuf mapper.
- Mappa Bson: methods to map
MongoDB.Bson
objects from MongoDB.Bson package into common objects. - Mappa Bson dependency: utility methods to register the Bson mapper.