DATAMONGO-937 - Add support for creating text index.

We now support creating text index based on information gathered on domain types.

Using @TextIndexed marks properties to be considered for the full text index. Use the weight attribute to influence document scoring during search operations.

Please note that using @TextIndexed on entity properties forces all properties of any sub document to be considered as part of the text index. Any set weight will in that case be propagated to the siblings taking the most recent weight information into account, which means that a the weight attribute can be overridden for properties in sub documents.

The setting the index default language can be done via @Document(language) while @Language can be used to define the language_override field.

As text search is disabled by default for mongodb 2.4 we use a jUnit ClassRule to restrict integration tests potentially creating text index (as the entities for testing are found in the classpath) to only be executed in when a 2.6+ mongodb server is present.

For usage hints please see section 6.3.4 (Text Indexes) of reference manual.

Original pull request: #198.
DATAMONGO-850 - Add support for full text search via $text

Using TextQuery and TextCriteria allows creation of queries using $text $search.

{ $meta : “textScore” } can be included using TextQuery.includeScore. As the fieldname used for textScore must not be fixed to “score” one can use the overload taking the fieldname to override the default.

Original pull request: #198.
DATAMONGO-976 - Add support for reading $meta projection on textScore into document.

We introduced @TextScore that can be used to mark a property to take { $meta : “textScore” }. In contrast to @Transient the value will be considered when reading documents.
The value can and will only get picked up if the score field is retrieved from the store.

Original pull request: #198.
DATAMONGO-982 - Added build profiles to build against next MongoDB driver versions.

Added build profile for MongoDB Java driver versions 2.12.3-SNAPSHOT and 3.0.0-SNAPSHOT. Added another property to be able to build manifests correctly as the snapshot versions aren't valid OSGi versions.

Adapted MongoExceptionTranslator to convert the new Exceptions being thrown for server timeouts and the deprecated values we currently handle.
DATAMONGO-972 - Querydsl integration now handles references correctly.

SpringDataMongodbSerializer now overrides the necessary methods to create the appropriate DBRef objects when serializing data via Querydsl.

We currently disable the test case as it the fix taking effect requires Querydsl 3.4.1 which unfortunately breaks Java 6 compatibility. We include the fix nonetheless to allow users on Java 7 to potentially use the latest Querydsl.

Original pull request: #203.
Related tickets: querydsl/querydsl#803.
DATAMONGO-980 - Use meta annotations from commons for @Score.

We now use Spring Data Commons' @ReadOnlyProperty to meta-annotate @Score to mark it as read-only property.

Original pull request: #201.
Related tickets: DATACMNS-534.
DATAMONGO-983 - Remove links to forum.spring.io.

Replace forum links with those to stackoverflow.

Original Pull Request: #205
DATAMONGO-969 - Fixed nested id handling in SpringDataMongodbSerializer.

SpringDataMongodbSerializer now defensively triggers mapping of the DBObject created by the default serializer. This asserts that ids buried in nested structures like { "_id" : { "$in" : ["x", "y"] } } are converted correctly.

Original pull request: #202.
DATAMONGO-975 - Add support for extracting date/time components from a field projection.

We added some extract-methods to ProjectionOperationBuilder to be able to extract date / time components from projected fields.

Original pull request: #204.
DATAMONGO-944 - Add support for $currentDate to Update.

Added currentDate and currentTimestamp to Update.

Original pull request: #200.
DATAMONGO-981 - Updated changelog.
DATAMONGO-981 - Prepare 1.6.0.M1 (Evans M1).
DATAMONGO-981 - Release version 1.6.0.M1.
DATAMONGO-981 - Prepare next development iteration.
DATAMONGO-981 - After release cleanups.
DATAMONGO-991 - Adapted to deprecation removals in Spring Data Commons.

Related ticket: DATACMNS-469.
DATAMONGO-989 - MatchOperation should accept CriteriaDefinition.

We replaced the constructor that accepted a Criteria with one that accepts a CriteriaDefinition to not force clients to extends Criteria. 
Original pull request: #206.
DATAMONGO-987 - Avoid creation of lazy-loading proxies for null-values.

We now avoid creating a lazy-loading proxy if we detect that the property-value in the backing DbObject for a @Lazy(true) annotated field is null.

Original pull request: #207.
DATAMONGO-987 - Some polishing in MappingMongoConverter.

Let getValueInternal(…) use the provided SpELExpressionEvaluator instead of relying on the MongoDbPropertyValueProvider to create a new one. Removed the obsolete constructor in MongoDbPropertyValueProvider.
DATAMONGO-420 - Improve support of quote handling for custom query parameters.

Introduced ParameterBindingParser which exposes parameter references in query strings as ParameterBindings. This allows us to detect whether a parameter reference in a query string is already quoted avoiding wrongly double-quoting the parameter value.

Original pull request: #185.