kmongo

[deprecated] KMongo - a Kotlin toolkit for Mongo

APACHE-2.0 License

Stars
781
Committers
40

Bot releases are visible (Hide)

kmongo - kmongo-3.9.2

Published by zigzago over 5 years ago

  • #91 add reactive stream support
  • #109 Async driver: add watchIndefinitely function
kmongo - kmongo-3.9.1

Published by zigzago almost 6 years ago

  • #66 Generate custom Jackson serializer/deserializer for simple classes
  • #88 add suspendable forEach coroutine version
  • #94 First _id is string then the following are ObjectId
  • #96 How to receive Set in mongoDb to List in model?
  • #99 easier projection for one, two or three fields
  • #101 support of ClientSession for sync driver
  • #103 Can't deserialize StringId directly
  • #107 deserialize Set as LinkedHashSet
  • client session support for coroutine (thanks to @augur)
kmongo - kmongo-3.9.0

Published by zigzago almost 6 years ago

  • #83 Java 7 compatibility for kmongo-native
  • #84 embedded object with date contained in an inherited data class is not deserialized properly
  • #85 ObjectId is not properly deserialized in a String property when property is inherited
  • #87 bump version to kotlin 1.3 and coroutines 1.0
kmongo - kmongo-3.8.3

Published by zigzago about 6 years ago

  • #79 add MongoDatabase#withKMongo & MongoCollection.withKMongo
  • #80 memory leak in Any.json
  • #81 typed queries perf improvement: cache path of properties
kmongo - kmongo-3.8.2

Published by zigzago about 6 years ago

  • #78 typed queries: support for map key projection
  • #75 add KMongoConfiguration.resetConfiguration method
  • add default serializer/deserializer for java.time.ZoneId (thanks to @kspHeller )
kmongo - kmongo-3.8.1

Published by zigzago over 6 years ago

  • #69 Null or empty filter BSON passed to deleteMany causes "$and/$or/$nor must be a nonempty array"
  • #70 property isX: Boolean fails with typed queries
  • #71 explicit cast required for orderBy(Map<KProperty<*>, Boolean>)
  • #72 deprecate MongoCollection#count
  • #73 id not deserialized when using interface as collection class
  • #74 typed queries: support for array projection operator
kmongo - kmongo-3.8.0

Published by zigzago over 6 years ago

  • #59 typed query: pull does not work as expected
  • #60 add @DataRegistry annotation to support external @Data annotation
  • #62 serialization perf improvements
  • #63 flapdoodle: allow to test with replicaset
  • #64 sync driver: override MongoIterable.forEach to ensure it is called
  • #65 add change stream support for sync driver
  • #66 sync driver: ensure the mongo cursor is closed when dealing with MongoIterable
  • #67 allow to use both sync & async driver at the same time
  • #68 KMongo async: replace deprecated MongoClientSettings
kmongo - kmongo-3.7.0

Published by zigzago over 6 years ago

3.7.0 has major improvements and some breaking changes.

  • #39 new beta kmongo query dsl - type safe query dsl with optional annotation processor
  • #22 rxjava2 support (thanks to @diliuskh)

Breaking changes:

  • java driver 3.7 has introduced a ReplaceOptions class to replace UpdateOptions when calling replaceOne method. KMongo has chosen to be not backward compatible and does not keep replaceOne with UpdateOptions parameter.

  • In the async driver, the updateOne method has been simplified and it could cause compile error - you may need to name the options parameter when using updateOne

Known issue:

  • Fongo test framework is broken by 3.7 java driver. Workaround: build the 3.7 branch of Fongo (no Fongo release is available yet).
kmongo - kmongo-3.7.0-rc0

Published by zigzago over 6 years ago

3.7.0 is a KMongo release with major improvements. A first release candidate is available.

  • #39 new kmongo query dsl - type safe query dsl with optional annotation processor - documentation will be available in a few days
  • #22 rxjava2 support (thanks to @diliuskh)
kmongo - kmongo-3.6.3

Published by zigzago over 6 years ago

  • #52 jackson mapping: add idProperty and idValue extensions
  • #53 improve performance by caching id property
  • #54 upgrade fongo to support mongo driver 3.6
kmongo - kmongo-3.6.2

Published by zigzago over 6 years ago

kmongo - kmongo-3.6.1

Published by zigzago almost 7 years ago

  • #48 Update operations without set
  • #49 Shouldn't filter inner object _id on update
  • #50 Test dependencies in compile scope
kmongo - kmongo-3.6.0

Published by zigzago almost 7 years ago

Breaking change

  • #43 support BigDecimal <-> Decimal128 mapping for jackson engine: Big Decimal are now persisted as Decimal128 (was double)

Known issue

Other

  • #42 jackson Id: support for key serializer/deserializer
  • #46 native binding: support for Pair & Triple properties
  • #47 native binding: support of Map<Id, *> serialization/deserialization
kmongo - kmongo-3.5.1

Published by zigzago almost 7 years ago

  • #38 native mapping: do not require to use @field:BsonProperty

  • #41 support for @ BsonCreator

  • #40 experimental support for typed ids

kmongo - kmongo-3.5.0

Published by zigzago about 7 years ago

There are however some other minor breaking changes:

  • java.util.Calendar instances was persisted with the timezone and the locale. To be coherent with other java.time classes, only the timestamp is now persisted in UTC by default
  • #34 findOneAndReplace, findOneAndUpdate and findOneAndDelete methods had an erroneous non null result. They now return a nullable result.

Other changes:

  • @ MongoId is deprecated in favor of @ BsonId
  • KMongoConfiguration.defaultCollectionNameBuilder is deprecated in favor of CollectionNameFormatter.defaultCollectionNameBuilder
kmongo - kmongo-3.4.2

Published by zigzago about 7 years ago

  • #35 Date stored as timestamp by jackson is not retreived by kmongo
kmongo - kmongo-3.4.1

Published by zigzago about 7 years ago

  • improve coroutines module
  • #30 DBObject insert exception
  • #31 KMongo sync - add alias for shadowed methods
  • #32 KMongo async - add alias for shadowed methods
  • #33 add Collection#ensureIndex method
kmongo - kmongo-3.4.0

Published by zigzago over 7 years ago

Breaking changes

  • #13 KMongoConfiguration.defaultCollectionNameBuilder has bean changed from "lower case" to "camel case" strategy. So if you upgrade to 3.4.0 and use the default strategy, add
    KMongoConfiguration.useLowerCaseCollectionNameBuilder()
    before initializing KMongo, in order to keep the original behaviour.
  • #21 @Transient annotated fields or methods are now ignored by default

New features

  • #25 KMongo coroutine sub module (thanks to Deny Prasetyo)
  • #27 KMongo flapdoodle sub module
  • #17 KMongo fongo sub module

Other fixes

  • #11 BsonSerializer can only be used with BsonGenerator
  • #12 Crash when using Filters.eq(field, Locale.ENGLISH)
  • #15 Saving list of DBRef not working correctly
  • #16 MongoIdUtil.getIdProperty doesn't grab _id correctly from Map types
  • #18 Saving DBRef containing an ObjectId breaks
  • #19 updateOneById update parameter inconsistent
  • #20 Need a way to bypass document validation on save()
kmongo -

Published by zigzago about 8 years ago

  • #7 Add save method
  • #8 Add findOne(filter:Bson) method
kmongo -

Published by zigzago about 8 years ago

  • #5 Add UpdateOptions option for updateOneById/replaceOneById
  • #6 Dates not handled correctly

If you use KMongo before 3.3.4 to save "Date" objects, pass -Dkmongo.oldLocalBehaviour=true to get backward compatibility - the flag will be deleted in 3.5

More details on the Date support here : http://litote.org/kmongo/#date_support