so that bareword ops like $set and $inc are available.
MongoDBList which is a Seq[_]. Enjoy!
behavior especially boxing.
warning. Catch if you don't like it.
…chnique should work.
There is now a JodaGridFS implementation which works cleanly with Joda DateTime and will return them to you
- Fixes SCALA-45: Allow filename and contentType to be nullable * Retrieving filename or contentType on a GridFS File now returns Option[String] when fetched * To facilitate sane usage, the loan-pattern/execute-around-resource methods now return the _id of the created file as Option[AnyRef]
* SCALA-70: Removed type alias to com.mongodb.WriteConcern and made method args for it explicit, as it was causing a fun post-compile (aka "library compiles, user code doesn't") implosion. * added socketKeepAlive option * Fixes SCALA-45: Allow filename and contentType to be nullable + Retrieving filename or contentType on a GridFS File now returns Option[String] when fetched + To facilitate sane usage, the loan-pattern/execute-around-resource methods now return the _id of the created file as Option[AnyRef] * SCALA-46 - Support Java Driver 2.6.5 based Lazy BSON Decoding * Change group with finalize to use underlying implementation * SCALA-46 - Support Java Driver 2.6.5 LazyBSONObject & Decodingk + In order to correct bugs outstanding in the Java Driver, and optimize for Scala rewrote a special Scala Only version, OptimizedLazyBSONObject and related classes. + Removed the _typedValue hook which just muddies the water with Abstract Type erasure. Just return all as Option[DBObject], do your own casting as necessary. + Introducing Scala versions of the LazyBSON System to Casbah-Util for more scala appropriate hackage. + Finished timing tests on Lazy decoder. Definitely shows an edge but most performance boost will be realized by frameworks which typically would have had to decode *twice* and can now decode *once*. + Replaced the old Typed Cursors and Collections with the new Lazy ones * SCALA-52 - Support new ReadPreference semantics, deprecate SlaveOK + Deprecated slaveOK + Introduced ReadPreference + Added set/get readPreference bindings at DB/Connection/collection levels * SCALA-50 - Support MongoDB Server 2.0 getLastError Changes (j, w=string/number) * Significant cleanup and refactor around DBCollection; reduced all core write ops to single implementations with default args + All write ops take an implicit DBEncoder and WriteConcern w/ defaults set now + Introduced core DBEncoder logic to write ops + String "w" value, new constants, "j" boolean for WriteConcern * SCALA-51: Added "continueInsertOnError" boolean for WriteConcern * SCALA-39 - Added support for options argument to DBCollection.ensureIndex * Fix MapReduce for new Java Driver stuff * Update to Java Driver 2.7.3 + Updated DBEncoderFactories in DBCollection to conform to new 2.7.3 behavior with nullables * Refactored MongoURI to be more "Scala-Ey" + Optional fields such as Password & Login now are returned wrapped in Option rather than returning Null as the Java driver does + The "connect*" methods have been cleaned up; they now return Either[Throwable, ] to allow for more programatic early handling of connection failures w/o try-catch hell + Several unecessary legacy methods were removed.
* Major cleanups and bugfixes to the DSL, it's heavily and fully tested now and much faster/cleaner - Added support for $and bareword operator - SCALA-30, SCALA-59- $or is not properly accepting nested values esp. from other DSL constructors + Introduced proper type class filter base to fix $or, will implement across other operators next. - SCALA-59 - Fix Bareword Query Operators to better target accepted values; should only accept KV Tuple Pairs or DBObjects returned from Core Operators + Complete test suites for $and and $nor although they need to be updated to more appropriate contextual examples rather than just "compiles properly" + New code logic, fixed $or, $and and $nor for proper nested list operations + New :: list cons operator on MongoDBObject to create MongoDBLists on th fly (esp. for DSL) -Typesafety kungfu from @jteigen + enforce at compile time that type parameters used for casting are not Nothing + disable parallel test execution in core since LazyDecodingSpec was failing for no reason when executed together with other tests + enforce $pushAll & $pullAll arguments can be converted to Iterable at compile time + switched to a type class (AsQueryParam) for queryparams to avoid code duplication
DBObject, from factory, builder and put methods.
- Refactor collections (MongoDBList and MongoDBObject) * Use CanBuildFrom properly to compose more appropriate Collection objects * As part of above, you should get seq-like objects back from MongoDBList builders & factories instead of the previous BasicDBList; this is part of attempting to "Hide" DBList and let people work with List/Seq * SCALA-69: Immediately upon saving any None's will be converted to null inside the DBObject for proper fetching later. * Add toString, hashCode and equals methods to DBObject * New, refactored tests for DBObject and DBList - Typesafety kungfu from @jteigen + enforce at *compile time* that type parameters used for casting ( as, getAs, getAsOrElse ) are not Nothing