Skip to content

News

0.7.0 • $expr and the first aggregation stages

Kotlin BSON

  • Fixed bug where arrays were generated incorrectly (9d0cbea3, !20)

MongoDB DSL

  • Create the aggregation Value (bec086c1)
  • Create the $expr filter operator (22b9d97e)
  • Add the $match aggregation stage (44ea7bf3)
  • Add the $sample aggregation stage (fc34f2b5)
  • Add the $skip aggregation stage (3239a479)
  • Add the $limit aggregation stage (4cc84722)
  • Add the $set aggregation stage (81b7f8b4)
  • Implement the $literal aggregation operator (49e1d564)
  • Implement the $eq, $ne, $gt, $lt, $gte, $lte aggregation operators (22b9d97e)

0.5.0 • Collection.isEmpty, .$., .$[]., improved documentation website

DSL

  • Added the filter operator Collection.isEmpty (#21, !21)
  • Added the filter operator Collection.isNotEmpty (#21, !21)
  • Added the positional operator: .$. (!22)
  • Added the all positional operator: .$[]. (!22)

Website

  • Added a documentation page for CRUD operations (!22)
  • Added a documentation page for bulkWrite (!22)
  • Added a documentation page for nested fields access, including arrays (!22)

0.4.0 • Insert, delete, drop, and a configuration tutorial

Drivers

  • Add insertOne, insertMany (!16)
  • Add deleteOne, deleteMany (!14)
  • Add drop (!14)

Query DSL

  • Add InsertOneOptions, DeleteOneOptions (!16)
  • Add DeleteOptions (!14)
  • Add DropOptions (!14)
  • Rename any to anyValue, and anyObject to any (#11, !16)
  • Add a documentation header for AbstractCompoundExpression (#12, !16)
  • Add a link to tracking issues in operators' documentation (#13, !16)

Documentation

  • Initialize the website (!15)
  • Add a tutorial for setting up everything (!15)
  • Add a contribution guide for integration tests (!16)
  • Add pages introducing how to find and update data (!18)
  • Add an explanation of the benefits of KtMongo over KMongo (!18)
  • Add a comparison between KtMongo and KMongo (!18)
  • Simplify the design of the home page (!17)

0.3.0 • count(), update(), bulkWrite(), abstract tree management and options

Drivers

  • Added count()
  • Added countEstimated()
  • Added updateOne(), updateMany(), upsertOne()
  • Added findOneAndUpdate()
  • Added filtered collections
  • Added an 'options' lambda to all operations
  • Added CountOptions.limit()
  • Improved MongoCollection.toString()
  • Added bulkWrite()

DSL

  • The BsonContext is now available in all expressions
  • Abstract over tree management with the new '.tree' package
  • Reorganize all operations from XXXExpressions to XXXOperators interfaces (to allow delegation)
  • Add Expression.toBsonDocument

BSON

  • Added buildBsonArray

Deployment

  • Added an integration test to ensure the driver is compatible with 3 stable MongoDB versions

0.2.0 • find(), basic filter and update operators

Drivers

  • Create MongoCollection and MongoIterable (!8)
  • Implement find, findOne (!8)

DSL

  • Create Expression (!2)
  • Create Path and Field to refer to MongoDB fields using Kotlin variables (!3)
  • Implement basic filter operators (!3)
  • $and, $or, $not
  • $eq, $ne, $in
  • $exists, $type
  • $gt, $gte, $lt, $lte
  • $elemMatch, $all
  • *notNull variants
  • Implement basic update operators (!7)
  • $set, $setOnInsert, $unset
  • $inc
  • $rename

BSON

  • Mark all functions as @LowLevelApi (!2)

Dependencies

  • Kotlin 2.0.20 (!5)