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 - Release 2.3.8 Latest Release

Published by evanchooly about 1 year ago

What's Changed

Full Changelog: https://github.com/MorphiaOrg/morphia/compare/v2.3.7...v2.3.8

morphia - Release 2.4.4

Published by evanchooly about 1 year ago

What's Changed

Full Changelog: https://github.com/MorphiaOrg/morphia/compare/v2.4.3...v2.4.4

morphia - Release 2.4.3

Published by evanchooly about 1 year ago

Version 2.4.3 (2023-08-27)

Notes

Downloads

Binaries can be found on maven central.

Documentation

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

1 Issues Resolved

BUG

  • #2488: IllegalStateException due to implicit re-use of client session

What's Changed

Full Changelog: https://github.com/MorphiaOrg/morphia/compare/v2.4.2...v2.4.3

morphia - Version 2.4.0

Published by evanchooly about 1 year ago

Version 2.4.0 (2023-07-25)

Notes

Downloads

Binaries can be found on maven central.

Documentation

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

34 Issues Resolved

TASK

  • #2413: Document the new configuration

BACKPORT

  • #2447: Morphia doesn't check the actual key type for subclasses of Map

BUG

  • #2196: Property codec registration doesnt work woth ServiceLoader
  • #2230: dev.morphia.mapping.codec.Conversions is not thread safe
  • #2253: Error: Caused by: dev.morphia.query.ValidationException: Could not resolve path 'customParams.inventory.data' against <SOME_ENTITY_CLASS>. Unknown path element: 'data'.
  • #2264: Custom Enum Codec is not called in most situations
  • #2347: Lifecycle invocations seem to break with subclassed entities
  • #2423: Generated config content shows null values
  • #2430: Forward port missing references fix
  • #2447: Morphia doesn't check the actual key type for subclasses of Map

DOCS

  • #2413: Document the new configuration
  • #2419: Deprecate Mapper#mapPackage()
  • #2420: Deprecate Datastore#enableDocumentValidation()
  • #2421: Deprecate Datastore#ensureCaps()
  • #2422: Deprecate Datastore#ensureIndexes()
  • #2429: Forward port docs fix
  • #2442: Deprecate field/method property discovery config values

ENHANCEMENT

  • #2280: The API for a regex filter should take both the field and the pattern
  • #2342: Implement a new sort method for FindOptions that accepts a Meta and a Sort args
  • #2400: Introduce config file
  • #2401: Deprecate MapperOptions
  • #2419: Deprecate Mapper#mapPackage()
  • #2420: Deprecate Datastore#enableDocumentValidation()
  • #2421: Deprecate Datastore#ensureCaps()
  • #2422: Deprecate Datastore#ensureIndexes()
  • #2442: Deprecate field/method property discovery config values

MIGRATION

  • #2400: Introduce config file
  • #2401: Deprecate MapperOptions
  • #2413: Document the new configuration
  • #2419: Deprecate Mapper#mapPackage()
  • #2420: Deprecate Datastore#enableDocumentValidation()
  • #2421: Deprecate Datastore#ensureCaps()
  • #2422: Deprecate Datastore#ensureIndexes()
  • #2442: Deprecate field/method property discovery config values

2 Pull Requests merged

  • #2233: BitSet codec
  • #2190: change property codec registries from service loader to mapper
morphia - Version 2.3.6

Published by evanchooly about 1 year ago

Version 2.3.6 (2023-07-24)

Notes

Downloads

Binaries can be found on maven central.

Documentation

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

2 Issues Resolved

BACKPORT

BUG

morphia - Version 2.4.1

Published by evanchooly about 1 year ago

Version 2.4.1 (2023-07-30)

Notes

Downloads

Binaries can be found on maven central.

Documentation

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

2 Issues Resolved

BUG

  • #2451: Fixes not merged to 2.3.x branch
  • #2454: Forward port index error handling
morphia - Version 2.3.7

Published by evanchooly about 1 year ago

Version 2.3.7 (2023-07-30)

Notes

Downloads

Binaries can be found on maven central.

Documentation

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

2 Issues Resolved

BUG

  • #2450: Fixes not merged to 2.3.x branch
  • #2453: Forward port index error handling

What's Changed

Full Changelog: https://github.com/MorphiaOrg/morphia/compare/r2.3.5...r2.3.7

morphia - Version 2.4.2

Published by evanchooly about 1 year ago

Version 2.4.2 (2023-08-24)

Notes

Downloads

Binaries can be found on maven central.

Documentation

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

1 Issues Resolved

BUG

  • #2472: NullPointerException when using update
morphia - Version 2.3.5

Published by evanchooly over 1 year ago

Version 2.3.5 (2023-06-23)

Notes

Downloads

Binaries can be found on maven central.

Documentation

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

3 Issues Resolved

BACKPORT

  • #2412: Custom Enum Codec is not called in most situations

BUG

  • #2382: StackOverflow while trying to lookup entities having reference to no-longer-existing entity
  • #2412: Custom Enum Codec is not called in most situations
morphia - Version 2.3.1

Published by evanchooly over 1 year ago

Version 2.3.1 (2023-04-18)

Notes

Downloads

Binaries can be found on maven central.

Documentation

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

13 Issues Resolved

BACKPORT

  • #2234: dev.morphia.mapping.codec.Conversions is not thread safe

BUG

  • #2174: Queries themselves should refuse to execute once query validation fails
  • #2197: EntityModel exception of ArrayIndexOUtOfBounds for polymorphic types with generics
  • #2200: Embedded entity with mixup of strings and long for the same attribute works till 2.2.X but not upon 2.3.X
  • #2201: Missing @Nullable on the value in Filters.eq
  • #2223: Crash in 'Datastore.merge' together with 'unsetMissing' when setting arrays containing null element
  • #2229: Setting Query.disableValidation() does not affect update operations
  • #2234: dev.morphia.mapping.codec.Conversions is not thread safe
  • #2329: Filters.where(javascriptExpr) should not validate the js expression
  • #2330: Filter for and set null values
  • #2340: Test containers dependency should not be leaked to the library users

ENHANCEMENT

  • #2198: Morphia 1.3.2 allowed UpdateOperation.disableValidation(), but that seem to be missing in 2.3.0
  • #2225: When saving a new document, @Id is filled in before @PrePersist is called

2 Pull Requests merged

  • #2341: #2340 testcontainers dependency should not be leaked to the library users
  • #2203: Flesh out the documentation for the core lifecycle annotations
morphia - Version 2.3.4

Published by evanchooly over 1 year ago

Version 2.3.4 (2023-05-31)

Notes

Downloads

Binaries can be found on maven central.

Documentation

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

morphia - Version 2.3.3

Published by evanchooly over 1 year ago

Version 2.3.3 (2023-05-31)

Notes

Downloads

Binaries can be found on maven central.

Documentation

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

2 Issues Resolved

BACKPORT

  • #2394: Path validation against maps doesn't stop early enough

BUG

  • #2394: Path validation against maps doesn't stop early enough
morphia - Version 2.3.2

Published by evanchooly over 1 year ago

Version 2.3.2 (2023-05-02)

Notes

Downloads

Binaries can be found on maven central.

Documentation

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

2 Issues Resolved

BACKPORT

  • #2359: MANIFEST.MF missing ImplementationVersion

BUG

  • #2359: MANIFEST.MF missing ImplementationVersion
morphia - Version 2.3.0

Published by evanchooly almost 2 years ago

Version 2.3.0 (2022-12-06)

Notes

This release is long overdue and thus a bit of a large one. This release does have a breaking change around a package rename. Please see the migration guide for details and mitigation options. This release is also notable in that it's the last planned release in the 2.x line apart from bug/patch releases. This plan is subject to change but the current plan is to focus on 3.0 which will see the clean up of all the deprecated API elements among other larger plans.

Downloads

Binaries can be found on maven central.

Documentation

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

142 Issues Resolved

BREAKING

  • #1654: Move to driver 4.3.x
  • #1859: Promote the aggregation API out of experimental
  • #1863: Promote transactional code out of experimental status
  • #1865: Promote the Query/Filter types out of experimental
  • #1866: Promote experimental annotations out of experimental

TASK

  • #1633: Add Java 16 as a test target
  • #2057: Steal quarkus's code formatting setup
  • #2059: Fix the test logging
  • #2075: Update the website

AGGREGATION

  • #1634: Updates with aggregation pipeline
  • #1709: Regression when Querying by reference in $match stages
  • #1738: Implement $setWindowFields
  • #1739: Implement $covariancePop
  • #1740: Implement $covarianceSamp
  • #1741: Implement $dateAdd
  • #1742: Implement $dateDiff
  • #1743: Implement $dateSubtract
  • #1744: Implement $dateTrunc
  • #1745: Implement $denseRank
  • #1746: Implement $derivative
  • #1747: Implement $documentNumber
  • #1748: Implement $expMovingAvg
  • #1749: Implement $getField
  • #1751: Implement $integral
  • #1752: Implement $rank
  • #1753: Implement $setField
  • #1754: Implement $shift
  • #1770: Implement $unsetField
  • #1771: Add new Aggreggation#set(Set) method
  • #1807: Add the optional database name to $out
  • #1956: Implement $densify
  • #1957: Implement $documents
  • #1958: Implement $fill
  • #1960: Implement $bottom
  • #1961: Implement $bottomN
  • #1962: Implement $firstN
  • #1963: Implement $lastN
  • #1964: Implement $linearFill
  • #1965: Implement $locf
  • #1966: Implement $maxN
  • #1967: Implement $minN
  • #1968: Implement $sortArray
  • #1969: Implement $top
  • #1970: Implement $topN
  • #1971: Implement $tsIncrement
  • #1972: Implement $tsSecond
  • #1993: Implement $changeStream
  • #2121: Add alternate collection support to AggregationOptions

BACKPORT

  • #2146: $pull and $unset use the unmapped values
  • #2147: Forward port #2140

BUG

  • #1631: Forward port #1630
  • #1644: Forward Port #1643 : Lazy loading breaks when the ID field is located in a super-class
  • #1649: Forward Port: Regression when querying by reference in 2.2
  • #1650: Forward Port: It seems Date types and lifecycles do not play along well
  • #1659: Forward Port: Exception on Datastore.insert with versioned objects
  • #1709: Regression when Querying by reference in $match stages
  • #1720: Lazy intialization in EntityModel.getLifecycleMethods can create ConcurrentModificationExceptions
  • #1816: Forward port #1810: Cache generated proxy classes
  • #1841: Multiple similar filters can lose the existing filter
  • #1869: Codec set on MongoClient is overridden by DataStoreImpl
  • #1877: Forward port #1868
  • #1880: Forward port #1839
  • #1932: setOnInsert() doesn't deduce @Property annotations
  • #2012: ReferenceException when trying to persist a reference list with duplicated entries
  • #2085: setOnInsert() does not honor @Reference annotations
  • #2114: Field shadowing breaks mapping
  • #2146: $pull and $unset use the unmapped values
  • #2147: Forward port #2140

DOCS

  • #1995: Document the sharding support
  • #2075: Update the website
  • #2152: Document upgrade process

ENHANCEMENT

  • #1421: Support insert() and replace() operations in addition to save()
  • #1615: Explore mixins for mapping external types
  • #1634: Updates with aggregation pipeline
  • #1638: @Collation can infer locale from system default
  • #1640: Enhance creators to be smarter about constructor discovery
  • #1654: Move to driver 4.3.x
  • #1655: Resuscitate the validation extension
  • #1656: Move getLoggedQuery() to Query
  • #1738: Implement $setWindowFields
  • #1739: Implement $covariancePop
  • #1740: Implement $covarianceSamp
  • #1741: Implement $dateAdd
  • #1742: Implement $dateDiff
  • #1743: Implement $dateSubtract
  • #1744: Implement $dateTrunc
  • #1745: Implement $denseRank
  • #1746: Implement $derivative
  • #1747: Implement $documentNumber
  • #1748: Implement $expMovingAvg
  • #1749: Implement $getField
  • #1751: Implement $integral
  • #1752: Implement $rank
  • #1753: Implement $setField
  • #1754: Implement $shift
  • #1770: Implement $unsetField
  • #1771: Add new Aggreggation#set(Set) method
  • #1776: Enable specifying an alternate collection to the mapped collection
  • #1778: Simplify Query#update() and #modify() methods
  • #1807: Add the optional database name to $out
  • #1816: Forward port #1810: Cache generated proxy classes
  • #1823: Native query with morphia 2.x?
  • #1842: Add an option to MapperOptionsBuilder to configure user-defined CodecProviders
  • #1859: Promote the aggregation API out of experimental
  • #1863: Promote transactional code out of experimental status
  • #1864: Deprecate the MorphiaReference types
  • #1865: Promote the Query/Filter types out of experimental
  • #1866: Promote experimental annotations out of experimental
  • #1908: Remove UnsafeAllocator
  • #1911: Deprecate (local) getters from Options classes
  • #1938: Shard keys support
  • #1956: Implement $densify
  • #1957: Implement $documents
  • #1958: Implement $fill
  • #1960: Implement $bottom
  • #1961: Implement $bottomN
  • #1962: Implement $firstN
  • #1963: Implement $lastN
  • #1964: Implement $linearFill
  • #1965: Implement $locf
  • #1966: Implement $maxN
  • #1967: Implement $minN
  • #1968: Implement $sortArray
  • #1969: Implement $top
  • #1970: Implement $topN
  • #1971: Implement $tsIncrement
  • #1972: Implement $tsSecond
  • #1975: Remove SessionConfigurable
  • #1983: Deprecate Morphia.createDatastore() methods that do not take a MongoClient
  • #1984: Deprecate MapperOptions#getUuidRepresentation
  • #1993: Implement $changeStream
  • #1995: Document the sharding support
  • #2121: Add alternate collection support to AggregationOptions
  • #2134: Dynamic filter building
  • #2152: Document upgrade process
  • #2153: Deprecate LegacyQuery and its factory and configuration options

EXPERIMENTAL

  • #1938: Shard keys support

KOTLIN

  • #1640: Enhance creators to be smarter about constructor discovery

MIGRATION

  • #1778: Simplify Query#update() and #modify() methods
  • #2121: Add alternate collection support to AggregationOptions

QUESTION

  • #1727: Custom enum codec
  • #1823: Native query with morphia 2.x?

2 Pull Requests merged

  • #2126: Allow custom stages in aggregation pipeline
  • #1652: Decouple Datastores and Mappers
morphia - Version 2.2.9

Published by evanchooly almost 2 years ago

Version 2.2.9 (2022-09-14)

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.

3 Issues Resolved

TASK

  • #2060: Fix the test logging

BACKPORT

  • #2060: Fix the test logging

BUG

  • #2013: ReferenceException when trying to persist a reference list with duplicated entries
morphia - Version 2.2.10

Published by evanchooly almost 2 years ago

Version 2.2.10 (2022-11-22)

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.

8 Issues Resolved

BREAKING

  • #2124: slf4j-api version change from 1.7.x to 2.0.x between morphia 2.2.8 and 2.2.9 is a breaking change

TASK

  • #2058: Steal quarkus's code formatting setup

BACKPORT

  • #2058: Steal quarkus's code formatting setup
  • #2123: setOnInsert() does not honor @Reference annotations

BUG

  • #2123: setOnInsert() does not honor @Reference annotations
  • #2124: slf4j-api version change from 1.7.x to 2.0.x between morphia 2.2.8 and 2.2.9 is a breaking change
  • #2140: ArrayIndexOutOfBoundsException from MorphiaQuery.iterator and DatastoreImpl.save
  • #2145: Problem applying $unset and $pull operations on nested entities
morphia - Version 2.2.8

Published by evanchooly about 2 years ago

Version 2.2.8 (2022-08-24)

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

  • #2001: Backport 1932 (setOnInsert doesn't honor @Property annotations)
morphia - Version 2.2.7

Published by evanchooly over 2 years ago

Version 2.2.7 (2022-05-18)

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.

7 Issues Resolved

BUG

  • #1811: NPE while trying to save entity having reference (lazy, idOnly, ignoreMissing) to no-longer-existing entity
  • #1830: Query#modify() documentation is not entirely correct
  • #1839: UpdateOperators.unset() isn't working in Release version 2.2.3
  • #1853: Can't find a codec for class dev.morphia.mapping.codec.writer.NameState (v 2.2.5)
  • #1858: Unsafe allocation creator is inadvertently cached
  • #1868: Batch insert using .save(List entities) performance issue
  • #1876: Entity's list has the same objects multiple times
morphia - Version 2.2.6

Published by evanchooly over 2 years ago

Version 2.2.6 (2022-03-23)

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

  • #1855: The field '$and' must be an accumulator object
morphia - Version 2.2.5

Published by evanchooly over 2 years ago

Version 2.2.5 (2022-03-08)

Notes

This is purely a pom fix to address issues with the new release process. There are no code changes from 2.2.4.

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.

Package Rankings
Top 5.34% on Repo1.maven.org
Badges
Extracted from project README
Build Status