- Added heavy test coverage
- Tests/demos of all additivity of DBObject and Tuple
- ++ additivity operator on MongoDBObject for lists of tuple pairs
- Added test for $nor demonstrating additivity between a DSLed DBObject and a tuple
- Added val aliasing for MongoDBObject -> DBObject and MongoDBList -> DBList (only for the 'object' singletons)
- Added bareword DSL operator for $nor
- Added new $not syntax, along with identical support for nested queries in $pull:
- Added SLF4J-JCL Bindings as a +test+ dependency (so we can print logging while testing without forcing you to use an slf4j implementation yourself)
- $elemMatch shouldn't have been a nestable, and only accept DBObject. Fixed.
- Full test coverage on DSL ...nested query chains are heavily broken at the moment.
- Migrated $each to a now functioning internal hook on $addToSet only exposed in certain circumstances
- Various cleanups to docs and type constraints in BarewordOperators
- Changed Geo related stuff to use ValidNumericType instead of Numeric as some Numerics are not valid, and we'll be using Valid+Type for auto conversion reg soon
- GridFS' `files' should have returned a MongoCursor not a raw Java DBCursor. Closes #25
- GridFS findOne wasn't returning Option[_] and detecting nulls like Collection, which has been corrected. Closes #26
- Added a false $eq operator to emulate key = value easily in the DSL
- Restored ability to chain DSL operators (First pass - may change)
- Fixed RegEx and Binary $type tests
- Differentiated GeoCoords to use two different Manifested Numerics for differing datatypes
- Timestamp must take precedence over date to match properly
- Changed precedence so DBList is first as it's also a dbobject and test failed
- Added Joda DateTime to Type testing in $type
- Updates and test coverage for $size and $exists
- Added new implementations of $in, $nin, $all and $mod with tests. $mod now accepts non-Int numerics and of two differing types.
- Stripped out support for implicit Product/Tuple conversions as they're buggy as hell and constantly interfere with other code.
- Implemented new code and tests for $gt, $gte, $lt, $lte.
- Added Date tests to $Ne and added testing for $lt
- Valid Date and Numeric Type boundaries introduced and used instead of Numeric (since Char doesn't actually workwith Mongo and you can't double up type bounds)
- Refactor of $ne to a new baseline, new unit test for DSLCoreOperators to test it
- Checkpoint, ValidProduct won't work either
- mid-refactor of core operators code, checkpoint for if we keep aritied tuple code
- Removed crufty extra logging in distinctKeySet
- Ported MapReduce test to Specs in new directory structure; needs more test methods
- Removing GridFSSpec as it has been ported to Specs in the new modules
- Changed sub$project names back to start with casbah- to reduce confusion with maven artifacts
- Updated documentation buildout and migrated default build version to 2.8.1, removing 2.8.1rc4
- Added documentation build script
- Moved loading of ConversionHelpers from Connection creation to instantiation of Commons' Implicits
- This means conversions are ALWAYS loaded now for everyone
- Added registered conversion for Product (tuples) which fixes open issues with serialization
- Migrated Conversions code from core to commons, repackaging as com.mongodb.casbah.commons.conversions
- Unit Test remains in Core as it uses core code to test loading/unloading which is fine for buildtime tests
- Moved Logger from core to commons, package changed from com.mongodb.casbah.util.Logging to com.mongodb.casbah.commons.Logging
- Switched off of configgy to slf4j as akka did; fixed project build and released as 2.0b1
- Collection is now inline with the 2.3 java driver
- updated MongoDB for API compatibility with Java driver 2.3 and added some necessary docs.
- added a WriteConcern helper object for Scala users w/ named & default args
- Updated connection to match 2.3, added support for specifying writeconcern and slaveOK
- Fixes #18 corrected pop implementation
- Fixes #13 added findAndModify / findAndRemove
- Fixes #19 Added full support for geospatial query. Needs some docs and tests
- Updated to Java 2.3 driver #12
- Fixes #2 ElemMatch works much like $not
- Fixes #11 Context Bound and Byte Enum supported $type queries
- Fixes #17 added $rename and fixed a bug caused by $or implementation
- Fixes #1, added $each target and improved $addtoSet impl $each is a bit of an unfortunate stray in that it CAN be invoked elsewhere but should only work with $addToSet
- Culled useless version javadoc cruft & added @see to all bareword query ops
- Fixes #3 Resolved an issue where the $or wasn't being broken into individual documents as expected. Should be heavily tested.
- Fixes #15 Wrap the return of operator calls in a DBObject constructor.
- Fixed anchoring on CoreOperators - things like $mod and such needed to be callable
- Fixes #3 dded $or operator with proper right-hand array creation.
- Added @see linkage to each core operator's doc page
- Fixes #10, added $slice operator
- Removed 'batchSafely' methods as they are now deprecated and counterindicated
- Renamed 'safely' methods to 'request' as they are NOT safe and 10gen convention is moving off 'safe' as a term.
- Migration of codebase for 10gen ownership
- Package changed from com.novus.* to com.mongodb.*
- Cull casbah-mapper. Mapper now lives as an independent project at http://github.com/maxaf/casbah-mapper ...
- bumped version of scala-time to the 0.2 release
- stop spamming the logs when JodaDateTimeDeserializer is a NOOP
- more thorough BigDecimal conversions & test
- Fixes #24 adds DBList support via MongoDBList, following 2.8 collections
- First pass at a DBList implementation
- Forward port from 1.0.8.1 bugfix branch
- Factory & Builder for MongoDBObject always return as DBObject
- Unit test for reported issue
- Added "safely" and "batchSafely" resource loaning methods on Collection & DB
- Given an operation, uses write concern / durability on a single connection and throws an exception if anything goes wrong.
- Adjusted boundaries on getAs and expand; the view-permitting Any was causing ambiguity issues at runtime with non AnyRefs (e.g. AnyVal).
- Fixed an assumption in expand which could cause runtime failure
- Updated MongoDBObject factory & builder to explicitly return a type; some pieces were assuming at runtime that it was a MongoDBObjectBuilder$anon1 which fucked things up beyond all recognition
- New basic spec test for MongoDBObject, just validates expand behavior ATM
- Beginning a massive refactor for submodules, which will become 1.1