Version 2.2.0
Version 2.2.0 (2021-05-25)
Notes
Downloads
Binaries can be found on maven central.
Documentation
Full documentation can be found at https://morphia.dev/morphia/2.2. Javadoc can be found at https://morphia.dev/morphia/2.2/javadoc.
52 Issues Resolved
BREAKING
- #1601: Remove MorphiaInstanceCreator field from MapperOptions
TASK
- #1536: Migrate public CI to github actions
AGGREGATION
- #974: Aggregation Pipeline Can Not Map To Equivalent Class
- #1540: Add $sampleRate aggregation filter
- #1565: add support for $rand
- #1566: add $cosh, $sinh, and $tanh aggregation operators
BUG
- #865: Kotlin: Mapping exception when a field is delegated as NotNull
- #1541: External Mapping is broken
- #1546: Forward port #1545 (Impossible to add life cycle methods to entities having UUID fields)
- #1547: Forward port #1537 (Update pull does nothing)
- #1549: Expected @reference format in database
- #1551: Forward port #1500 (Reference Error)
- #1552: Forward port #1548 (Could not load ByteArray)
- #1573: Forward port #1568 (Null value handling is broken with lifecycle events)
- #1574: Forward port #1571 (Wildcard generics can cause crashes in certain scenarios)
- #1575: Forward port #1569 (Unset fails on deleted references)
- #1581: Classloader from
MapperOptions
is not respected inDiscriminatorLookup
- #1586: Wrong deserialization of polymorphic entities with lifecycle
- #1590: Forward port #1557: byte[] saved format changed
- #1601: Remove MorphiaInstanceCreator field from MapperOptions
- #1604: Forward port #1599
- #1605:
MorphiaCursor
shouldn't be in theinternal
package
DOCS
- #1529: new docs framework
- #1578: morphia.dev website is unusable on mobile devices
- #1595: In 2.x can not use project(field, true) on Query
- #1600: Update references documentation to cover the annotations, too
- #1605:
MorphiaCursor
shouldn't be in theinternal
package
ENHANCEMENT
- #611: Field annotations should also support method annotations
- #982: DatastoreImpl:tryVersionedUpdate should more descriptive than just ConcurrentModificationException
- #1155: Add nullable annotation for Kotlin
- #1189: Stream support
- #1511: Support getters/setters
- #1526: Loosen ID constraint on @entity
- #1530: Break out lifecycle management to separate codecs
- #1540: Add $sampleRate aggregation filter
- #1542: synchronize Morphia *Options classes with the new fields on the driver's *Options types
- #1565: add support for $rand
- #1566: add $cosh, $sinh, and $tanh aggregation operators
- #1579: Saving an existing document should unset null fieds in the database.
- #1585: Add UpdateOperations min/max support with Date or Instant values
- #1593: Make use of
FindIterable.explain()
now that it's there - #1594: Upgrade driver dep to 4.2.0
- #1606: aggregation: support lookup with pipeline
- #1620: Provide static import friendly names for aggregation stages
- #1621: How to build a list of updates?
KOTLIN
- #865: Kotlin: Mapping exception when a field is delegated as NotNull
- #1155: Add nullable annotation for Kotlin
MIGRATION
- #611: Field annotations should also support method annotations
- #982: DatastoreImpl:tryVersionedUpdate should more descriptive than just ConcurrentModificationException
- #1511: Support getters/setters
- #1594: Upgrade driver dep to 4.2.0
QUESTION
- #1621: How to build a list of updates?