This repository has been archived by the owner on Nov 11, 2020. It is now read-only.
-
-
Notifications
You must be signed in to change notification settings - Fork 189
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #296 from alcaeus/changelog-1.5.0
Add changelog for 1.5.0
- Loading branch information
Showing
5 changed files
with
211 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
CHANGELOG for 1.5.x | ||
=================== | ||
|
||
This changelog references the relevant changes (bug and security fixes) done | ||
in 1.5.x patch versions. | ||
|
||
1.5.0 (2017-06-30) | ||
------------------ | ||
|
||
* [#286](https://github.com/doctrine/mongodb/pull/286): Fixed `$sample` stage | ||
* [#288](https://github.com/doctrine/mongodb/pull/288): Add `$addFields` operator to AggregationBuilder | ||
* [#291](https://github.com/doctrine/mongodb/pull/291): Allow installing PHPUnit 6 on PHP 7 | ||
* [#292](https://github.com/doctrine/mongodb/pull/292): Add support for aggregation pipeline stages added in MongoDB 3.4 | ||
* [#293](https://github.com/doctrine/mongodb/pull/293): Add aggregation operators added in MongoDB 3.4 | ||
* [#294](https://github.com/doctrine/mongodb/pull/294): Fix coding style |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,79 @@ | ||
UPGRADE from 1.0 to 1.1 | ||
======================= | ||
|
||
Pull requests completed for the 1.1.0 release: | ||
|
||
* [#92](https://github.com/doctrine/mongodb/pull/92): Add get/setReadPreference() methods on core classes | ||
* [#97](https://github.com/doctrine/mongodb/pull/97): Implement `Collection::aggregate()` helper | ||
* [#103](https://github.com/doctrine/mongodb/pull/103): Support array argument in `Builder::select()` and `exclude()` | ||
* [#105](https://github.com/doctrine/mongodb/pull/105): Internal cursor improvements for hint, sort, read preferences, and recreation | ||
* `Cursor::hint()` and `sort()` should overwrite previous values | ||
* Integrate `setReadPreference()` with `recreate()` and make it chainable | ||
* [#106](https://github.com/doctrine/mongodb/pull/106): Events refactoring and support for modifying data in EventArgs | ||
* Support MongoDB::createCollection() options array (driver 1.4+) | ||
* Introduce MutableEventArgs object for post-event listeners | ||
* [#107](https://github.com/doctrine/mongodb/pull/107): Adding $nor query operator for Builder and Expr | ||
* [#118](https://github.com/doctrine/mongodb/pull/118): Documentation cleanup | ||
* [#109](https://github.com/doctrine/mongodb/pull/109): Support GeoJSON and 2dsphere queries | ||
* Rename `Query::TYPE_GEO_LOCATION` to `TYPE_GEO_NEAR` | ||
* Query builder and expression methods for 2dsphere geo-spatial operators | ||
* Integration with [GeoJSON](https://github.com/jmikola/geojson) library | ||
* [#121](https://github.com/doctrine/mongodb/pull/121): Reorder methods alphabetically | ||
* [#123](https://github.com/doctrine/mongodb/pull/123): ArrayIterator improvements | ||
* Allow `offsetSet()` to append values | ||
* Fix `valid()` return value if an array element is `false` | ||
* [#124](https://github.com/doctrine/mongodb/pull/124): Deprecated passing scalar $query argument to `Collection::update()` | ||
* [#122](https://github.com/doctrine/mongodb/pull/122): Command method refactoring | ||
* Command methods now throw ResultException on error | ||
* `group()` now returns an ArrayIterator instead of the raw command response | ||
* Ensure all `mapReduce()` options are prepared as MongoCode objects (where applicable) | ||
* Handle external database output strategy for `mapReduce()` | ||
* [#126](https://github.com/doctrine/mongodb/pull/126): DBRef database/collection method improvements | ||
* `createDBRef()` should not use array type hinting (arg can be a document or an ID) | ||
* `createDBRef()` should not dispatch events, nor should it be logged | ||
* Add event dispatching to `Database::getDBRef()` (Collection already had this) | ||
* [#127](https://github.com/doctrine/mongodb/pull/127): Improve events/logging for Database methods | ||
* Fixed post-event dispatching for `getGridFS()` and `createCollection()` | ||
* Added tests for Database event dispatching | ||
* Fixed logging for `createCollection()` and make LoggableDatabase's API consistent with the base class | ||
* [#128](https://github.com/doctrine/mongodb/pull/128): Query builder improvements | ||
* Do not filter out falsey values in Query/Builder `debug()` methods | ||
* Support values and expressions for $pull in query builder | ||
* Remove recursive merging in `Expr::addManyToSet()` | ||
* Implement `Expr::each()` and allow it to be used with `addToSet()` | ||
* Deprecate `Expr::addManyToSet()` in favor of `addToSet()` and `each()` | ||
* Support $each/$slice/$sort operators with `push()` | ||
* `Expr::push()` should ensure $each operator appears first | ||
* `Expr::where()` should not alter the current field in the builder | ||
* `Builder::mapReduceOptions()` and `out()` methods should require mapReduce command | ||
* Support GeoJSON in `Builder::geoNear()` and set spherical default | ||
* `Builder::map()` should init full query array, default to inline mapReduce output | ||
* Rename `Query::DISTINCT_FIELD` to `DISTINCT` | ||
* Throw exception for invalid query types in Query constructor | ||
* Query should allow a single cursor hint to be specified | ||
* Query should apply "limit" option for mapReduce commands | ||
* Add array type-hint to `Builder::all()` and `Expr::all()` | ||
* `Query::getIterator()` should not execute if an exception is guaranteed | ||
* Deprecate `Query::iterate()` alias in favor of `getIterator()` | ||
* [#130](https://github.com/doctrine/mongodb/pull/130): Add $rename update operator for Builder and Expr | ||
* [#131](https://github.com/doctrine/mongodb/pull/131): Remove $cmd args/properties and deprecate `mongoCmd` option | ||
* [#132](https://github.com/doctrine/mongodb/pull/132): Make full command result accessible in ArrayIterator | ||
* [#140](https://github.com/doctrine/mongodb/pull/140): Add `initialize()` calls in Connection methods to avoid use of null objects | ||
* [#139](https://github.com/doctrine/mongodb/pull/139): `Builder::sort()` should default to ascending order | ||
* [#143](https://github.com/doctrine/mongodb/pull/143): Query builder read prefs and wrap driver classes directly | ||
* Wrap driver classes directly and remove Connection reinit logic | ||
* Convert inconsistent return values for `getReadPreference()` from pre-1.3.3 drivers | ||
* Don't throw InvalidArgumentException in `Cursor::setReadPreference()` | ||
* Support read preferences in Query Builder | ||
* [#147](https://github.com/doctrine/mongodb/pull/147): `Expr::mod()` should take explicit divisor/remainder args | ||
|
||
Additional commits included in 1.1.0: | ||
|
||
* [d51a44d](https://github.com/doctrine/mongodb/commit/d51a44d): Support $elemMatch in query projections (closes [#101](https://github.com/doctrine/mongodb/pull/101)) | ||
* [e92f0f2](https://github.com/doctrine/mongodb/commit/e92f0f2): Remove unused $options argument in `Expr::equals()` | ||
* [773423a](https://github.com/doctrine/mongodb/commit/773423a): Use driver's return value in `Collection::batchInsert()` (closes [#93](https://github.com/doctrine/mongodb/pull/93)) | ||
* [114a0ae](https://github.com/doctrine/mongodb/commit/114a0ae): Fix cursor creation when MapReduce's db output option is used | ||
* [8bc1466](https://github.com/doctrine/mongodb/commit/8bc1466): Ensure `Cursor::limit()` argument is casted to an integer | ||
* [6afee47](https://github.com/doctrine/mongodb/commit/6afee47): Deprecate `Connection::getStatus()` (to be removed in 1.2) | ||
* [05258d4](https://github.com/doctrine/mongodb/commit/05258d4): Deprecate Database force/prev/resetError() methods (to be removed in 1.2) | ||
* [25a8025](https://github.com/doctrine/mongodb/commit/25a8025): Restore `Query::TYPE_GEO_LOCATION` constant for BC, but deprecate it |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,39 @@ | ||
UPGRADE from 1.1 to 1.2 | ||
======================= | ||
|
||
Pull requests completed for the 1.2.0 release: | ||
|
||
* [#171](https://github.com/doctrine/mongodb/pull/171): Implement `$minDistance` query operator and geoNear option | ||
* Adds `minDistance()` method to query builder | ||
* [#183](https://github.com/doctrine/mongodb/pull/183): Rewrite `Collection::update()` "multi" option to "multiple" | ||
* [#184](https://github.com/doctrine/mongodb/pull/184): Query builder support for $text operator in MongoDB 2.6 | ||
* Adds `language()`, `text()`, `selectMeta()`, and `sortMeta()` methods to query builder | ||
* [#186](https://github.com/doctrine/mongodb/pull/186): Fixed `Connection::convertWriteTimeout()` docs | ||
* [#192](https://github.com/doctrine/mongodb/pull/192): Support `$meta` expressions in `Cursor::sort()` | ||
* This is typically used for sorting by text search scores | ||
* [#197](https://github.com/doctrine/mongodb/pull/197): Support aggregation command cursors and client options | ||
* Introduces a CommandCursor class, which decorates a MongoCommandCursor | ||
* Command cursors require driver 1.5+ | ||
* Socket timeouts for command cursors require driver 1.6+ | ||
* [#201](https://github.com/doctrine/mongodb/pull/201): Fix issue when an operator follows `equals()` | ||
* [#203](https://github.com/doctrine/mongodb/pull/203): Ensure Query projection option is renamed for findAndModify | ||
* [#205](https://github.com/doctrine/mongodb/pull/205): Don't pass empty arrays to array_combine() | ||
* [#209](https://github.com/doctrine/mongodb/pull/209): Add a common cursor interface | ||
* The Cursor and EagerCursor classes implement this interface | ||
* [#212](https://github.com/doctrine/mongodb/pull/212): Query builder support for new update operators in MongoDB 2.6 | ||
* Adds `bitAnd()`, `bitOr()`, `bitXor()`, `currentDate()`, `max()`, `min()`, and `mul()` methods to query builder | ||
* [#213](https://github.com/doctrine/mongodb/pull/213): Add aggregation builder | ||
* The builder may be created with `Collection::createAggregationBuilder()` | ||
* Top-level builder methods correspond to pipeline operators | ||
* [#214](https://github.com/doctrine/mongodb/pull/214): Removes parameter type hint from `Builder::geoWithin()` | ||
* Now accepts an array or `GeoJson\Geometry\Geometry` instance | ||
* [#215](https://github.com/doctrine/mongodb/pull/215): Add test environment preferring lowest package dependencies | ||
* [#222](https://github.com/doctrine/mongodb/pull/222): Add support for `MongoCollection::parallelCollectionScan()` | ||
* [#223](https://github.com/doctrine/mongodb/pull/223): Support `$useKeys` option when EagerCursor converts to an array | ||
* [#224](https://github.com/doctrine/mongodb/pull/224): Support client and socket timeout options in `Collection::count()` | ||
* `Collection::count()` now supports an options array as its second argument (`$limit` integer is still supported) | ||
* Socket timeout (i.e. `socketTimeoutMS`) may be specified alongside command options | ||
* [#225](https://github.com/doctrine/mongodb/pull/225): Include all cursor methods in cursor interface | ||
* Expands the common CursorInterface to support all methods in Cursor and EagerCursor | ||
* Allows ODM to be more agnostic when decorating a Cursor or EagerCursor | ||
* [#226](https://github.com/doctrine/mongodb/pull/226): Implement getter for cursor `useIdentifierKeys` option |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,26 @@ | ||
UPGRADE from 1.2 to 1.3 | ||
======================= | ||
|
||
Pull requests completed for the 1.3.0 release: | ||
|
||
* [#227](https://github.com/doctrine/mongodb/pull/227): Specify time limit operation on a mongodb cursor | ||
* Adds `maxTimeMS()` method to query builder and cursor | ||
* [#233](https://github.com/doctrine/mongodb/pull/233): Allow Event Listeners the ability to modify context information in the event | ||
* Allows changes to the options for the following events: preAggregate, preBatchInsert, preDistinct, preFind, preFindAndRemove, preFindAndUpdate, preFindOne, preGetDBRef, preGroup, preInsert, preMapReduce, preNear, preRemove, postRemove, preSave, preUpdate, postUpdate | ||
* [#234](https://github.com/doctrine/mongodb/pull/234): Add support for `$comment` operator | ||
* Adds `comment()` method to query builder | ||
* [#235](https://github.com/doctrine/mongodb/pull/235): Add support for `$setOnInsert` operator | ||
* Adds `setOnInsert()` method to query builder | ||
* [#238](https://github.com/doctrine/mongodb/pull/238): Bump PHP and mongo version requirements | ||
* [#240](https://github.com/doctrine/mongodb/pull/240): Add new MongoDB 3.2 features to aggregation builder | ||
* Adds `sample()`, `indexStats()` and `lookup()` methods to aggregation builder | ||
* Adds `avg()`, `max()`, `min()`, `stdDevPop()`, `stdDevSamp()`, `sum()` methods to project stage | ||
* Adds `minDistance()` method to geoNear stage | ||
* Adds `includeArrayIndex()` and `preserveNullAndEmptyArrays()` methods to unwind stage | ||
* [#241](https://github.com/doctrine/mongodb/pull/241): Add query operators introduced with MongoDB 3.2 | ||
* Adds `bitsAllClear()`, `bitsAllSet()`, `bitsAnyClear()`, `bitsAnySet()`, `caseSensitive()`, `diacriticSensitive()` methods to query builder | ||
* [#251](https://github.com/doctrine/mongodb/pull/251): Corrected fluent interface docblocks | ||
* [#255](https://github.com/doctrine/mongodb/pull/255): Add expr method to aggregation expression object | ||
* Adds `expr()` method to the aggregation Expr class | ||
* [#256](https://github.com/doctrine/mongodb/pull/256): Allow using operators in group stages | ||
* Adds all methods from the `Operator` class to the group stage |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,52 @@ | ||
Upgrade from 1.4 to 1.5 | ||
======================= | ||
|
||
Aggregation builder | ||
------------------- | ||
|
||
* Add support for aggregation pipeline stages added in MongoDB 3.4: | ||
* `$addFields` | ||
* `$bucket` | ||
* `$bucketAuto` | ||
* `$collStats` | ||
* `$count` | ||
* `$facet` | ||
* `$graphLookup` | ||
* `$replaceRoot` | ||
* `$sortByCount` | ||
* Add support for aggregation expression operators added in MongoDB 3.4: | ||
* `$in` | ||
* `$indexOfArray` | ||
* `$range` | ||
* `$reverseArray` | ||
* `$reduce` | ||
* `$zip` | ||
* `$indexOfBytes` | ||
* `$indexOfCP` | ||
* `$split` | ||
* `$strLenBytes` | ||
* `$strLenCP` | ||
* `$substrBytes` | ||
* `$substrCP` | ||
* `$switch` | ||
* `$isoDayOfWeek` | ||
* `$isoWeek` | ||
* `$isoWeekYear` | ||
* `$type` | ||
* The `$project` stage now supports field exclusion via the new `excludeFields` | ||
method. | ||
|
||
Deprecations | ||
------------ | ||
* The `excludeIdField` method in the `$project` aggregation pipeline stage has | ||
been deprecated in favor of the new `excludeFields` method. | ||
* The protected methods relating to the `$switch` aggregation expression | ||
operator in `Doctrine\MongoDB\Aggregation\Expr`are deprecated. They will be | ||
renamed as follows when the aggregation builder is moved to Doctrine MongoDB | ||
ODM: | ||
* `caseInternal` => `case` | ||
* `defaultInternal` => `default` | ||
* `switchInternal` => `switch` | ||
* `thenInternal` => `then` | ||
* The magic `__call` method in `Doctrine\MongoDB\Aggregation\Expr` will also be | ||
removed. |