morphia

MongoDB object-document mapper in Java based on https://github.com/mongodb/mongo-java-driver

APACHE-2.0 License

Stars
1.6K
Committers
70

Bot releases are hidden (Show)

morphia - Version 2.2.4

Published by evanchooly over 2 years ago

Version 2.2.4 (2022-03-05)

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.

5 Issues Resolved

BACKPORT

  • #1731: Regression when Querying by reference in $match stages

BUG

  • #1731: Regression when Querying by reference in $match stages
  • #1814: Multiple similar filters can lose the existing filter
  • #1831: Don't throw VersionMismatchException in case of index violations?

ENHANCEMENT

  • #1831: Don't throw VersionMismatchException in case of index violations?

1 Pull Requests merged

  • #1810: #1648: Cache generated proxy classes
morphia - Version 2.2.3

Published by evanchooly almost 3 years ago

Version 2.2.3 (2021-11-12)

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.

1 Issues Resolved

BUG

  • #1657: Exception on Datastore.insert with versioned objects
morphia - Version 2.2.2

Published by evanchooly about 3 years ago

Version 2.2.2 (2021-10-12)

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.

9 Issues Resolved

BUG

  • #1625: ClassCastException on maps with UUIDs as key values
  • #1627: Morphia fails to instantiate extended data classes without empty constructor
  • #1629: NullPointerException when saving arrays with null values
  • #1630: Forward port #1622: Update operation $set does not work with a whole map as an argument when the key of the map has a non-String type
  • #1639: It seems Date types and lifecycles do not play along well
  • #1643: Lazy loading breaks when the ID field is located in a super-class
  • #1647: Regression when querying by reference in 2.2

DOCS

  • #1635: Doc with deprecated methods

QUESTION

  • #1626: Map external interfaces without entity annotation

1 Pull Requests merged

  • #1628: Instantiate classes with no empty constructor
morphia - Version 2.1.7

Published by evanchooly over 3 years ago

Version 2.1.7 (2021-06-13)

Notes

Downloads

Binaries can be found on maven central.

Documentation

Full documentation can be found at https://morphia.dev/morphia/2.1. Javadoc can be found at https://morphia.dev/morphia/2.1/javadoc.

2 Issues Resolved

BUG

  • #1608: Polymorphic entities with lifecycle: child entity lifecycle methods are not invoked
  • #1622: Update operation $set does not work with a whole map as an argument when the key of the map has a non-String type
morphia - Version 2.2.1

Published by evanchooly over 3 years ago

Version 2.2.1 (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.

1 Issues Resolved

BUG

  • #1623: Test packages included in the release JAR
morphia - Version 2.2.0

Published by evanchooly over 3 years ago

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 in DiscriminatorLookup
  • #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 the internal 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 the internal 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?

3 Pull Requests merged

  • #1607: core: add lookup with pipeline
  • #1587: #1586 deserialization of polymorphic entities with lifecycle
  • #1582: #1581 respect MapperOptions classloader
morphia - Version 2.1.6

Published by evanchooly over 3 years ago

Version 2.1.6 (2021-05-04)

Notes

Downloads

Binaries can be found on maven central.

Documentation

Full documentation can be found at https://morphia.dev/morphia/2.1. Javadoc can be found at https://morphia.dev/morphia/2.1/javadoc.

1 Issues Resolved

BUG

  • #1599: java.lang.ClassCastException: class org.bson.types.Binary cannot be cast to class org.bson.BsonBinary

1 Pull Requests merged

  • #1603: 1599 - make DocumentReader able to handle Binary
morphia - Version 2.1.5

Published by evanchooly over 3 years ago

Version 2.1.5 (2021-04-12)

Notes

Downloads

Binaries can be found on maven central.

Documentation

Full documentation can be found at https://morphia.dev/morphia/2.1. Javadoc can be found at https://morphia.dev/morphia/2.1/javadoc.

6 Issues Resolved

BUG

  • #1557: byte[] saved format changed
  • #1568: Null value handling is broken with lifecycle events
  • #1569: Unset fails on deleted references
  • #1571: Wildcard generics can cause crashes in certain scenarios
  • #1588: Backport #1582: Respect MapperOptions classloader
  • #1589: Backport #1586: Wrong deserialization of polymorphic entities with lifecycle
morphia - Version 2.1.4

Published by evanchooly almost 4 years ago

Version 2.1.4 (2021-01-12)

Notes

Downloads

Binaries can be found on maven central.

Documentation

Full documentation can be found at https://morphia.dev/morphia/2.1. Javadoc can be found at https://morphia.dev/morphia/2.1/javadoc.

8 Issues Resolved

BUG

  • #1500: Reference error
  • #1513: @Reference(idOnly=false) fail to save the reference with DBRef format document
  • #1537: Update pull does nothing
  • #1543: Backport #1541 (External Mapping is broken)
  • #1545: Impossible to add life cycle methods to entities having UUID fields
  • #1548: Could not load ByteArray
  • #1553: Potential bug in dev.morphia.mapping.codec.reader.DocumentReader (2.1.4-SNAPSHOT)

UNCATEGORIZED

  • #1556: Backport #1549 (Expected @Reference format in database)
morphia - Version 2.1.1

Published by evanchooly almost 4 years ago

Version 2.1.1 (Dec 01, 2020)

Notes

Downloads

Binaries can be found on maven central.

Docs

Full documentation and javadoc can be found at https://github.com/MorphiaOrg/morphia and https://morphia.dev/morphia/2.1/javadoc/index.html

1 Issues Resolved

BUG

  • Issue #1506: Cascading Generics are not correctly mapped
morphia - Version 1.6.1

Published by evanchooly almost 4 years ago

Version 1.6.1 (Nov 25, 2020)

Notes

Downloads

Binaries can be found on maven central.

Docs

Full documentation and javadoc can be found at https://github.com/MorphiaOrg/morphia and https://morphia.dev/morphia/1.6/javadoc/index.html.

2 Issues Resolved

BUG

  • Issue #1461: HashMap<UUID, any> is not properly decoded

UNCATEGORIZED

  • PR #1531: Bump mongo driver from 4.0.3 up to 4.1.1
morphia - Version 2.1.0

Published by evanchooly almost 4 years ago

Version 2.1.0 (Nov 11, 2020)

Notes

Downloads

Binaries can be found on maven central.

Docs

Full documentation and javadoc can be found at https://github.com/MorphiaOrg/morphia and https://morphia.dev/2.1.0/javadoc/.

28 Issues Resolved

BREAKING

  • Issue #1514: Remove unnecessary generics from mapping code
  • Issue #1520: Allowing mapping of third party types creates a hole in validation

TASK

  • Issue #1489: Remove final parameters from checkstyle
  • Issue #1515: Merge/remove MappedClass/MappedField classes

AGGREGATION

BUG

  • Issue #1464: datastore.save(List entities) cause no initial value on @Version field
  • Issue #1484: forward port #1483
  • Issue #1487: @CappedAt should only set provided values
  • Issue #1504: Migration to morphia 2.0.x break data retrieval because of timezone assumptions
  • Issue #1506: Cascading Generics are not correctly mapped
  • Issue #1514: Remove unnecessary generics from mapping code
  • Issue #1520: Allowing mapping of third party types creates a hole in validation
  • Issue #1524: Add a conversion to/from BigDecimal and String
  • Issue #1528: Filters.eq().not() is not applying the negation (2.0.2)

DOCS

ENHANCEMENT

EXPERIMENTAL

  • Issue #1520: Allowing mapping of third party types creates a hole in validation
  • Issue #1522: Document mapping external types

KOTLIN

  • Issue #1448: Allow instancing of classes with non-empty constructor
morphia - Version 2.0.2

Published by evanchooly about 4 years ago

Version 2.0.2 (Oct 16, 2020)

Notes

Downloads

Binaries can be found on maven central.

Docs

Full documentation and javadoc can be found at https://github.com/MorphiaOrg/morphia and https://morphia.dev/2.0.2/javadoc/.

1 Issues Resolved

BUG

morphia - Version 2.0.1

Published by evanchooly about 4 years ago

Version 2.0.1 (Sep 17, 2020)

Notes

Downloads

Binaries can be found on maven central.

Docs

Full documentation and javadoc can be found at https://github.com/MorphiaOrg/morphia and https://morphia.dev/2.0.1/javadoc/.

4 Issues Resolved

BUG

morphia - Version 2.0.0

Published by evanchooly over 4 years ago

Version 2.0.0 (Jul 06, 2020)

Notes

Downloads

Binaries can be found on maven central.

Docs

Full documentation and javadoc can be found at https://morphia.dev/2.0.0/ and https://morphia.dev/2.0.0/javadoc/.

114 Issues Resolved

BREAKING

  • Issue #911: Aggregation pipeline elements improvements
  • Issue #959: Add T merge(T entity) method
  • Issue #1122: Remove org.mongodb.morphia.query.Query#order(java.lang.String)
  • Issue #1230: FindAndModify Default Behaviour
  • Issue #1275: remove QueryImpl#parseFieldsString from the public API
  • Issue #1284: Remove MapReduce functionality
  • Issue #1294: Remove support for snapshots and $isolate
  • Issue #1298: Remove exists methods from Datastore
  • Issue #1300: Rename methods
  • Issue #1309: Deprecate Morphia's Geo wrappers in favor of the driver's
  • Issue #1350: Drop MongoIterable from Query's parent types
  • Issue #1351: Replace all uses of DBObject with Document and remove all exposures of these types from the API where possible
  • Issue #1352: Remove morphia logging code and migrate to slf4j
  • Issue #1396: Update discriminator key/value to new defaults
  • Issue #1398: Remove the date storage configuration item

TASK

AGGREGATION

BUG

  • Issue #204: Mapping Classes with generic super-class or super-interface [moved]
  • Issue #552: Support embedded lists of a generic type parameter
  • Issue #553: Generics mapping throws NPE
  • Issue #921: Datastore.ensureIndexes() breaks morphia
  • Issue #923: EnsureIndexes() fails when my Entity contains Embedded List<HashMap<K, V>>
  • Issue #935: Morphia does not uses registered Codec
  • Issue #1156: Mapping Arrays of @Reference(idOnly = true)
  • Issue #1230: FindAndModify Default Behaviour
  • Issue #1293: Generic Entity
  • Issue #1350: Drop MongoIterable from Query's parent types
  • Issue #1408: How to do projections with version 2.0.0-ALPHA2?
  • Issue #1412: Full text score not working with projection
  • Issue #1419: Fix javadoc errors
  • Issue #1424: Missing dev.morphia.morphia:util:pom:2.0.0-BETA1
  • Issue #1430: ClassCastException when retrieving entities with date-time fields and a load lifecycle listener
  • Issue #1447: Aggregation broken in 2.0.0-BETA2
  • Issue #1451: Sorting on tail is not allowed

DOCS

ENHANCEMENT

EXPERIMENTAL

morphia - Version 1.6.0

Published by evanchooly over 4 years ago

Version 1.6.0 (Jul 06, 2020)

Notes

This release is intended to be a used to verify that, absent any deprecations, upgrading 2.0 should just need to be a a drop in replacement. One caveat is that not all deprecations can have 1.x replacements and so some deprecation uses will have to wait until after the upgrade to 2.0 to replace.

Downloads

Binaries can be found on maven central.

Docs

Full documentation and javadoc can be found at https://morphia.dev/1.6.0/ and https://morphia.dev/1.6.0/javadoc/.

9 Issues Resolved

BREAKING

  • Issue #1395: Add MapperOptions.legacy() and deprecate MapperOptions.builder()

TASK

BUG

DOCS

ENHANCEMENT

  • Issue #1395: Add MapperOptions.legacy() and deprecate MapperOptions.builder()
  • Issue #1440: Consider a 1.6 release of the driver that is compatible with the 4.x Java driver
  • Issue #1442: Audit "user facing" interfaces for any missing deprecations
morphia - Version 2.0.0-RC1

Published by evanchooly over 4 years ago

Version 2.0.0-RC1 (May 27, 2020)

Notes

Downloads

Binaries can be found on maven central.

Docs

Full documentation and javadoc can be found at https://github.com/MorphiaOrg/morphia and https://morphia.dev/2.0.0-SNAPSHOT/javadoc/.

113 Issues Resolved

BREAKING

  • Issue #911: Aggregation pipeline elements improvements
  • Issue #959: Add T merge(T entity) method
  • Issue #1122: Remove org.mongodb.morphia.query.Query#order(java.lang.String)
  • Issue #1230: FindAndModify Default Behaviour
  • Issue #1275: remove QueryImpl#parseFieldsString from the public API
  • Issue #1284: Remove MapReduce functionality
  • Issue #1294: Remove support for snapshots and $isolate
  • Issue #1298: Remove exists methods from Datastore
  • Issue #1300: Rename methods
  • Issue #1309: Deprecate Morphia's Geo wrappers in favor of the driver's
  • Issue #1350: Drop MongoIterable from Query's parent types
  • Issue #1351: Replace all uses of DBObject with Document and remove all exposures of these types from the API where possible
  • Issue #1352: Remove morphia logging code and migrate to slf4j
  • Issue #1396: Update discriminator key/value to new defaults
  • Issue #1398: Remove the date storage configuration item

TASK

AGGREGATION

BUG

  • Issue #204: Mapping Classes with generic super-class or super-interface [moved]
  • Issue #552: Support embedded lists of a generic type parameter
  • Issue #553: Generics mapping throws NPE
  • Issue #921: Datastore.ensureIndexes() breaks morphia
  • Issue #923: EnsureIndexes() fails when my Entity contains Embedded List<HashMap<K, V>>
  • Issue #935: Morphia does not uses registered Codec
  • Issue #1156: Mapping Arrays of @Reference(idOnly = true)
  • Issue #1230: FindAndModify Default Behaviour
  • Issue #1293: Generic Entity
  • Issue #1350: Drop MongoIterable from Query's parent types
  • Issue #1408: How to do projections with version 2.0.0-ALPHA2?
  • Issue #1412: Full text score not working with projection
  • Issue #1419: Fix javadoc errors
  • Issue #1424: Missing dev.morphia.morphia:util:pom:2.0.0-BETA1
  • Issue #1430: ClassCastException when retrieving entities with date-time fields and a load lifecycle listener
  • Issue #1447: Aggregation broken in 2.0.0-BETA2

DOCS

ENHANCEMENT

EXPERIMENTAL

morphia - Version 1.6.0-RC1

Published by evanchooly over 4 years ago

Version 1.6.0-RC1 (May 27, 2020)

Notes

This release serves two primary functions:

  1. A move to the 4.0 driver which necessitates a move to Java 8 as the minimum version
  2. Alignment of deprecations with the forthcoming 2.0 release. With this release focus is turning more fully to 2.0 development and so this release will serve, in part, as a pre-migration step. Removal of the deprecated methods used in projects will better prepare projects for ultimately moving to 2.0. Not all deprecations can be removed as some of the ultimate replacements aren't available yet, however.

Downloads

Binaries can be found on maven central.

Docs

Full documentation and javadoc can be found at https://github.com/MorphiaOrg/morphia and https://morphia.dev/1.5.8/javadoc/.

8 Issues Resolved

BREAKING

  • Issue #1395: Add MapperOptions.legacy() and deprecate MapperOptions.builder()

TASK

BUG

DOCS

ENHANCEMENT

  • Issue #1395: Add MapperOptions.legacy() and deprecate MapperOptions.builder()
  • Issue #1440: Consider a 1.6 release of the driver that is compatible with the 4.x Java driver
  • Issue #1442: Audit "user facing" interfaces for any missing deprecations

QUESTION

  • Issue #1402: ReflectionUtils.readFromNestedJar throwing NPE
morphia - Version 2.0.0-ALPHA2

Published by evanchooly almost 5 years ago

Version 2.0.0-ALPHA2 (Dec 04, 2019)

Notes

Downloads

Binaries can be found on maven central.

Docs

Full documentation and javadoc can be found at https://github.com/MorphiaOrg/morphia and https://morphia.dev/2.0/javadoc/.

56 Issues Resolved

BREAKING

  • Issue #959: Add T merge(T entity) method
  • Issue #1122: Remove org.mongodb.morphia.query.Query#order(java.lang.String)
  • Issue #1230: FindAndModify Default Behaviour
  • Issue #1275: remove QueryImpl#parseFieldsString from the public API
  • Issue #1284: Remove MapReduce functionality
  • Issue #1294: Remove support for snapshots and $isolate
  • Issue #1298: Remove exists methods from Datastore
  • Issue #1300: Rename methods
  • Issue #1350: Drop MongoIterable from Query's parent types
  • Issue #1351: Replace all uses of DBObject with Document and remove all exposures of these types from the API where possible
  • Issue #1352: Remove morphia logging code and migrate to slf4j
  • Issue #1396: Update discriminator key/value to new defaults
  • Issue #1398: Remove the date storage configuration item

BUG

  • Issue #204: Mapping Classes with generic super-class or super-interface [moved]
  • Issue #552: Support embedded lists of a generic type parameter
  • Issue #553: Generics mapping throws NPE
  • Issue #921: Datastore.ensureIndexes() breaks morphia
  • Issue #923: EnsureIndexes() fails when my Entity contains Embedded List<HashMap<K, V>>
  • Issue #935: Morphia does not uses registered Codec
  • Issue #1156: Mapping Arrays of @Reference(idOnly = true)
  • Issue #1230: FindAndModify Default Behaviour
  • Issue #1293: Generic Entity
  • Issue #1350: Drop MongoIterable from Query's parent types

DOCS

ENHANCEMENT

  • Issue #22: Add @Polymorphic [moved]
  • Issue #364: Polymorphic lazy reference [moved]
  • Issue #439: make Datasource accessible in @EntityListeners [moved]
  • Issue #581: Support full constructors
  • Issue #677: Add support for global value naming convention
  • Issue #721: add the possibility to set a custom className field
  • Issue #735: Query.order(String) API design, to overwrite values set in previous calls, is flawed
  • Issue #749: [enhancement] Support the new driver API
  • Issue #959: Add T merge(T entity) method
  • Issue #1121: Remove deprecated elements
  • Issue #1122: Remove org.mongodb.morphia.query.Query#order(java.lang.String)
  • Issue #1141: Remove EntityScanner
  • Issue #1143: Remove methods exposing MorphiaIterator and MorphiaKeyIterator
  • Issue #1256: Multi Document transaction support with Morphia
  • Issue #1269: add an @internal taglet
  • Issue #1272: Upgrade minimum JVM version to 11
  • Issue #1275: remove QueryImpl#parseFieldsString from the public API
  • Issue #1284: Remove MapReduce functionality
  • Issue #1294: Remove support for snapshots and $isolate
  • Issue #1298: Remove exists methods from Datastore
  • Issue #1299: Deprecate getCount() methods in favor of Query.count()
  • Issue #1300: Rename methods
  • Issue #1301: explore replacements for com.mongodb.client.model.FindOptions
  • Issue #1302: Add deprecated placeholders for old methods on *Datastore and Query
  • Issue #1319: Please update to recent mongodb driver MongoClient interface
  • Issue #1351: Replace all uses of DBObject with Document and remove all exposures of these types from the API where possible
  • Issue #1352: Remove morphia logging code and migrate to slf4j
  • Issue #1353: Update to use Codecs instead of current mapping code
  • Issue #1354: Use MongoCollection rather than DBCollection
  • Issue #1355: Add remove() to Query
  • Issue #1356: Add update() to Query
  • Issue #1359: add modify() to Query
  • Issue #1360: add delete() to Query
  • Issue #1364: Options classes should subclass the driver options classes
  • Issue #1366: Replace ReflectionUtils
  • Issue #1368: Override getCollectionName() is a must for some use cases
  • Issue #1369: Map ID from Superclass
  • Issue #1372: Delete @Serialized and remove support
  • Issue #1374: Remove @PreSave
  • Issue #1377: Remove @NotSaved
  • Issue #1379: Drop returning instances/lists of Keys
  • Issue #1390: Remove support for CodeWScope
  • Issue #1393: Move getCollection(Class) implementation from Mapper to Datastore
  • Issue #1396: Update discriminator key/value to new defaults
  • Issue #1398: Remove the date storage configuration item

EXPERIMENTAL

morphia - Release 1.5.8

Published by evanchooly almost 5 years ago

Version 1.5.8 (Oct 31, 2019)

Notes

Downloads

Binaries can be found on maven central.

Docs

Full documentation and javadoc can be found at https://github.com/MorphiaOrg/morphia and https://morphia.dev/1.5/javadoc/.

3 Issues Resolved

BUG

ENHANCEMENT

  • Issue #175: Support parameterized classes in fields [moved]
  • PR #1394: Add classLoader to mapper options builder
Package Rankings
Top 5.34% on Repo1.maven.org
Badges
Extracted from project README
Build Status