8.5 KiB
8.5 KiB
Changelog
2.5.3 / 2020-04-02
- Restore default export on module entry point. Fixes #130
2.5.2 / 2020-03-17
- Revert to using
dist/mingo.js
as main entry point for package. Fixes #125 - Fix build failures from updated dependencies
2.5.1 / 2020-03-16
- Create minified files for previous version
- Refactored to support tree shaking
2.5.0 / 2020-03-08
- Optionally add
Symbol.iterator
support if available in runtime environment. Closes #124 - Allow matching with nested fields in $lookup. Fixes #123
- Add $round operator and support 'place' argument for
$trunc
. Fixes #121 - Support new array fields. Fixes #119
- Handle embedded document exclusions
2.4.0 / 2019-10-25
- Do not enforce single value for
$facet
aggregation pipeline operations. Fixes #110
2.3.6 / 2019-10-23
- Add $set as $addFields alias. Fixes #113
- Fix $group operator idempotency issue. #82 (#114)
- Use renovateapp for dependency version management
2.3.5 / 2019-05-04
- Correctly project and merge nested objects with missing keys.
2.3.4 / 2019-05-02
- Properly flatten projected nested objects. Fixes #105
2.3.3 / 2019-03-20
- Improve sort performance
2.3.2 / 2019-03-18
- Fix sorting non-string values when collation is enabled.
2.3.1 / 2019-03-13
- Correctly handle subqueries for
$elemMatch
. Fixes #103
2.3.0 / 2019-03-12
- Add support for collation on
Cursor
objects. Fixes #100
2.2.12 / 2019-03-09
- Avoid resolving primitive type operands.
2.2.11 / 2019-02-18
- Work around iOS 9 Safari compatibility problem (#98)
- Fixing typing for aggregator.run, make query optional. (#102)
2.2.10 / 2019-01-04
- Minor cleanup and refactoring
- Correct changelog date
2.2.9 / 2019-01-03
- Switch
inArray
andnotInArray
to useArray.prototype.includes
for performance. Fixes #95
2.2.8 / 2018-12-01
- Project all matched elements of nested array correctly. Fixes #93
2.2.7 / 2018-11-30
- Match missing fields correctly with
$exists
2.2.6 / 2018-11-22
- Update
mergeObjects
to handle more use cases.
2.2.5 / 2018-11-21
- Fix merge objects to project subdocuments correctly. Fixes #91
2.2.4 / 2018-09-09
- Add
$$REMOVE
support to conditionally exclude fields
2.2.3 / 2018-08-21
- Match undefined fields with
$in: [null]
queries (#85)
2.2.2 / 2018-04-17
- Support
$unwind
for arrays nested in objects. Fixes #80
2.2.1 / 2018-04-14
- Added
$expr
operator. Fixes #79
2.2.0 / 2018-01-25
- More Performance improvements for lazy evaluation
- Added
$mergeObjects
operator - Change
Lazy
to factory - Remove
Lazy
static methods exceptisIterator
2.1.1 / 2017-12-18
- Use iterator input for Query
- Don't sort cursor modifiers
2.1.0 / 2017-12-17
- Added new
Lazy
iterator to re-implementCursor
and pipeline operators - Added
Aggregator.stream
to obtain iterator for stream pipeline results - Removed
Cursor
methodsfirst()
andlast()
2.0.5 / 2017-12-11
- Add typescript declaration. Fixes #75
2.0.4 / 2017-10-19
- Handle date values in
$add
operator. Fixes #73
2.0.3 / 2017-09-25
- Fix
map
so it does not breakcloneDeep
- Improve hash function
2.0.2 / 2017-09-14
- Remove array size constraint on
$concatArrays
. #64 - Filter out empty values from collection. #65
- Fix false positive tests and
$substrBytes
. #66 $regex
should matched nested one level deep. #70
2.0.1 / 2017-09-07
- Minimize cloning in pipeline operators
- Return new object for
$lookup
without mutating original. Fixes #59 and #60 - Make
clone
return shallow clone - Provide
cloneDeep
for deep cloning
2.0.0 / 2017-08-12
- Removed custom polyfills
- Added
$strLenBytes
,$strLenCP
,$substrCP
,$substrBytes
- Fix
$indexOfBytes
- Fix
$stdDevSamp
- Fix
$in
for aggregation operations - Removed max and min cursor methods.
- Restrict custom query operator type
OP_QUERY
to return boolean only - Rename
OP_AGGREGATE
toOP_EXPRESSION
- Update
$unwind
to MongoDB 3.2 features
1.3.3 / 2017-08-02
- Fix
computeValue
not overriding group operator keys after resolving expression - Added
$in
,$objectToArray
, and$arrayToObject
array aggregation operators
1.3.2 / 2017-07-28
- Restore
setup
function. https://github.com/kofrasa/mingo/issues/56
1.3.1 / 2017-07-24
- Replaced core-js because it bloats compiled library by 10K i.e. ~24%
- Fix #55
1.3.0 / 2017-07-23
- Support ES6 modules
- Fix matching null and missing values. https://github.com/kofrasa/mingo/issues/54
- Improve comparing user-defined types
v1.2.0 / 2017-07-17
- Fix
$where
operator not executed last. https://github.com/kofrasa/mingo/pull/50 - Fix matching nested arrays. https://github.com/kofrasa/mingo/issues/51
- Added
$facet
and$bucket
operators - Added
$bucketAuto
operator without granularity support - Added string keys for
$type
operator - Added Cursor support for ES2015 Iterator Protocol
- Sort null/undefined values to front of sorted result
- Revert to operator names with format
Mingo.OP_<name>
v1.1.2 / 2017-03-30
- Optimize
$lookup
implementation - Avoid reversing original input to
$reverseArray
v1.1.1 / 2017-03-12
- Fix incorrect method call for ObjectProto
- Limit exposed util methods to type checking
v1.1.0 / 2017-03-11
- Renamed
Mingo.OP_<name>
functions toMingo.KEY_<name>
- Added pipeline stage operator (
$lookup
)
v1.0.1 / 2017-03-01
- Updated polyfills to fix failing build on older node versions
v1.0.0 / 2017-02-28
- Added array aggregation operators
(
$arrayElemAt
,$concatArrays
,$filter
,$indexOfArray
,$isArray
,$range
,$reverseArray
,$reduce
,$slice
,$zip
) - Added string aggregation operators (
$indexOfBytes
,$split
) - Added arithmetic aggregation operators (
$ceil
,$exp
,$floor
,$ln
,$log
,$log10
,$pow
,$sqrt
,$trunc
) - Added .editorconfig
- Pass utility functions to custom operator implementation
- Rename function to retrieve collection id to
idKey
in custom operators - Moved support for query projection streaming to a new package mingo-stream
v0.9.1 / 2017-02-08
- Fix resolving system variables with subpaths. See issue#41
v0.9.0 / 2017-02-06
- Added support for system variables (
$$ROOT
,$$CURRENT
) - Implemented more pipeline operators (
$redact
,$addFields
,$sample
,$sortByCount
,$count
,$replaceRoot
) - Added
$switch
conditional operator - Fixed
$ifNull
conditional operator - Allow use of
$in
and$nin
as aggregation comparison operators
v0.8.1 / 2016-12-08
- Fix querying deeply nested nested arrays and object equality matching. See issue#36
v0.8.0 / 2016-09-26
- Make this library zero-dependent
v0.7.0 / 2016-09-10
- Fix nested projections for objects and arrays. See issue#25
v0.6.5 / 2016-07-04
- Fix incorrect de-duping of Date types in $sort aggregate operator. See issue#23
v0.6.4 / 2016-05-19
- Support matching against user-defined types. See issue#22
v0.6.3 / 2015-12-27
- Fixed numeric aggregation over undefined values. See issues#21
v0.6.2 / 2015-11-17
- Fixed erroneous cloning of objects. See issue#20
v0.6.1 / 2015-09-20
- Fixed matching nested array fields without specifying index. See issue#19
- Added
VERSION
global field
v0.6.0 / 2015-05-28
- Added
$dateToString
aggregation operator
v0.5.0 / 2015-04-29
- Added support for extending operators via
Mingo.addOperators
- Added
bower.json
- Fixed grouping documents by an object key
- Fixed exclusive select projection not returning correct fields