A note on a few test we removed: they are not essential, the implementation still
works fine but MongoDB Java driver is so broken in some areas that it is really
painful to work around all that stuff.
For example, authentication commands fail because the request cannot be
authenticated (!!!). In general, all removed tests involve or related to
authentication failures or edge cases where the database is switched between
tests.
Because authentication with valid credentials works perfectly fine,
it is hard to justify spending another 2 hours working around
issues in the driver that had way too many poor design decisions
from very early days.
This way libraries like Friend, that use namespaced keywords (::identity) and other
Clojure-specific data structures will work well with Monger.
Current store will strip off namespace information from namespaced keywords
because clojure.core/name work that way. For example: (name ::identity).
Reported by Julio Barros.
Make our own version of DBRef that is exactly like the original but has one extra constructor and
implements clojure.lang.IDeref so it is possible to @dereference such refs.
This is only one small step in a proper, Clojuric, easy to use DBRef support. We may tack more Monger-specific
extensions to our DBRef implementation later.
As sang by Jetallica:
Do unto others as they have done unto you
but what in the hell is this world coming to?
Blow the universe into nothingness
nuclear warfare shall lay us to rest
Fight Java with Java
ending is near
fight Java with Java
bursting with fear
map will work over the cursor itself because it is Iterable. This both avoids silly NPEs and
follows the common sense of finder functions: they must return an empty sequence when there
are no results, not nil.
We don't add it to the change log because the majority of apps won't use it and
it is not an important change between RC1 and RC2 (or what may even be 1.0).