forked from slemesle/selma
-
Notifications
You must be signed in to change notification settings - Fork 38
/
RELEASE_NOTES
142 lines (117 loc) · 6.78 KB
/
RELEASE_NOTES
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
1.0 - 01/05/2016
This is the first 1.0 release of Selma coming with bug fixes and many new features.
Like custom field to field mapping, Maps inheritance, Bean Aggregation and CDI support.
* #106: Add support for custom mapping method on per field basis
* #108: Add support for abstract custom mappers
* #100: Add support for aggregated bean mapping
* #102: Fix default lower bound type resolution for generic types
* #109: Fix custom mapper call with out parameter
* #110: Properly match the fieldname when it ends with the name of the class thanks to Fanilo Randria
* #111: Add support for inner mapper interface
* #115: Add support for CDI injection thanks to Semiao Marco
* #118: Filter enum private members to avoid
* #119: Add support for mapping interfaces instead of beans
* #120: Add support for abstract getters and setters in mapped beans thanks to @facboy
* #126: Fix declared bean array mapping
* #127: Fix any type to String default mapping
* #133: Fix mapping embedded array of prime
* #137: Improve CDI support with CDI and CDI_SINGLETON thanks to @Musikolo
* #138: Add @InheritMaps to avoid @Maps duplication
0.15 - 7/29/2016
This release fixes bugs in generic handling and factory methods. It also implement a new cyclic mapping support using an
instance cache.
* #2: Support for cyclic mapping with new @Mapper(withCyclicMapping = true) Thanks to Julien Audo
* #101: Fix generic types resolving in source and destination bean
* #81: Make a whole package immutable with new @Mapper(withImmutablesPackages = {"org.project.immutables"}) Thanks to Julien Audo
* #90: Automatic conversion of primitives types to String
* #80: Add factory support for beans without public constructor Thanks to @facboy
* #97: Add support for mapping raw types and improve error handling Thanks to @facboy
* #95: Add support for Builder-style setters Thanks to @facboy
* #92: Fix using interceptor inside abstract mapper class Thanks to @vakoroteev
* #104: Remove compiler warnings in custom mapper validation
* #89: Ignore static methods in mapped beans
* #101: Fix generic types mapping support
0.14 - 3/17/2016
This release fixes bugs regarding generic types and adds support for factory methods.
* #63: Support for generic type in mappers
* #39: Add Factory method and class support
* #78: Add WithIoCServiceName to name Spring service using annotation, Thanks to Benoit Charret
* #75: Fix generic inherited type handling in collections and map, Thanks to Julien Audo
* #70: Handle custom mappers in a .class package, Thanks to Antoine Leveugle
* #57: Improve error messages for failing custom field to field mapping
0.13 - 11/19/2015
This release fixes bugs in the mapping of embedded properties and adds support abstract class mapper.
Abstract mappers can declare custom mappings methods.
* #53: Support for Abstract class mappers to allow custom mapping method to call mapper methods with 'this'
* #54: Map collections from getter method to support Jaxb beans
* #65: Fix properties matching to force exact name match instead of startsWith match
* #66: Fix temporary variables names on embedded field mapping
* #67: Fix custom mapper registry to match properly both update and immutable methods
* #68: Fix bad AnnotationMirror cast not valid in eclipse compiler
0.12 - 4/23/2015
This release adds support for collection mapping strategy
* #55: Use getter to populate collection when available
0.11 - 4/10/2015
This release adds Spring support by annotation. You can now use a Mapper as the custom mapper of another one.
* #52: Custom mapper are now called even for null values
* #51: Fix type mapping to identify correctly destination bean type
* #50: Mapper interface can now be used as a custom mapper for mapper composition
* #49: Fix Sourced bean handling to be used only when needed
* #48: Add support for Spring ioc withIoc=SPRING
0.10 -
This release deprecates @IgnoreFields and @Fields. The new @Maps annotation should now be used instead.
It supports all the parameters available in @Mapper at the method scope.
* #35: Deploy snapshots to sonatype snapshot repository
* #36: Deprecate @IgnoreFields and @Fields in favor of a new annotation
* #37: Add support for update graph in custom mappers
* #38: Add support for scoped custom mappers
* #40: Add compilation error when default enum value does not exist
* #41: Compilation error when fields have no getter
* #42: Support scoped mapping interceptor
* #43: Remove deprecated @IgnoreFields from warning messages
* #44: Add support for qualified class name in custom fields mapping
* #45: Add support for custom embedded field to root level field
* #46: Add support for ignore missing fields in source bean, destination bean or both
* #47: Fix missing custom mapper in type mapping registry
0.9 - 11/4/2014
* Upgrade JavaWriter to 2.5.0
* #27: Add support for new java.time date style LocalDate in MappingBuilder
* #27: Fix not supported mapping error so it can be raised properly when Selma can not generate working code for mapping
* #31: Improve error message for missing field. Selma now gives a complete @IgnoreFields sample with bean and field name
* #29: Add update graph style API handling
* #33: Add custom Immutables type handling to specify custom immutable types
0.8 - 10/5/2014
* #13: Add compiler warning for unused EnumMapper
* #14: Add compiler warning for unused CustomMapper and Interceptor
* #25: Add mappers cache bypass and check for cached instance class validity
* #25: Verify validity of the built mapper instances against current class loader for use with Play dev mode
0.7 - 7/3/2014
* #22: Same enum mapping is now processed as an immutable class
* #23: Ignore field now support fully qualified name
* #11: Report unused IgnoredFields using a compiler warning at class level and method level
* #12: Report unused custom fields mapping with a compiler warning at class level and method level
0.6 - 6/17/2014
* #19: remove not needed null checks
* #20: Add support for BigDecimal
* #18: New Builder style Mapper configuration
* #21: Use collection size constructor only when available
0.5 - 5/16/2014
* Custom Mapper can now be constructed by user and injected to the mapper
* Do not clone immutable objects
* Refactor @Mapper to use with prefix and remove fields
* Use @Fields on top of a mapper class to be consistent with method scope
* Rename withMapper to withCustom wich is way more expressive
* TypeElement comparison moved to Types.isSameType(...)
0.4 - 4/1/2014
* @Field now supported on a per method basis
* Improve per method configuration segregation
* Add support for Jdk6
* Add support for Jdk8
0.3 - 3/28/2014
* Mapping interceptor support in custom mapper for post-processing #8
* Customize mapping using field name with @Field #7
0.2 - 2/18/2014:
* Full support n-dimensions array
* Full support for mapping of nested collection values and map key or value
* Custom enumeration mapper
0.1 - First maven release