Skip to content

Commit

Permalink
fix(dependencies): document must have an _id before saving issue
Browse files Browse the repository at this point in the history
@see Automattic/mongoose#5073

`pre-save` hooks not triggered if set after initialising model for mongoose >= 4.8.0, so all models whose Assigner was initialised using MongooseIdAssigner constructor will fail, but those with MongooseIdAssigner.plugin is ok.
  • Loading branch information
mernxl committed May 11, 2019
1 parent e257f8a commit 2fec767
Show file tree
Hide file tree
Showing 2 changed files with 139 additions and 63 deletions.
6 changes: 3 additions & 3 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@
"event-to-promise": "^0.8.0"
},
"peerDependencies": {
"mongoose": ">=4.3.6 || >=5.0.0"
"mongoose": ">=4.3.6 || <4.8.0"
},
"optionalDependencies": {
"uuid": ">=3.0.1"
Expand All @@ -65,14 +65,14 @@
"@types/event-to-promise": "^0.7.0",
"@types/jest": "^23.3.0",
"@types/mongodb-memory-server": "^1.8.0",
"@types/mongoose": "^5.2.1",
"@types/mongoose": "^4.7.45",
"@types/uuid": "^3.4.3",
"babel-core": "^6.26.3",
"babel-jest": "^23.4.2",
"flow-bin": "^0.77.0",
"jest": "^23.4.1",
"mongodb-memory-server": "^1.9.0",
"mongoose": "^5.2.5",
"mongoose": "4.7.9",
"prettier": "^1.13.7",
"rimraf": "^2.6.2",
"semantic-release": "^15.8.1",
Expand Down
196 changes: 136 additions & 60 deletions yarn.lock
Original file line number Diff line number Diff line change
Expand Up @@ -145,11 +145,11 @@
"@types/events" "*"
"@types/node" "*"

"@types/mongoose@^5.2.1":
version "5.2.5"
resolved "https://registry.yarnpkg.com/@types/mongoose/-/mongoose-5.2.5.tgz#3a8467549744c105515299acc6f590e5403fb277"
"@types/mongoose@^4.7.45":
version "4.7.45"
resolved "https://registry.yarnpkg.com/@types/mongoose/-/mongoose-4.7.45.tgz#a21dd93c9858230fb4d95d5620997e89f40548c0"
integrity sha512-IAFsl0kzMbiWBN19w8O5MChcSTziKnQ5r367Wo5q3F8uD8Tx4RNcgGmGAbnekcuPA3OsAndzAk0bndW0fXENqg==
dependencies:
"@types/events" "*"
"@types/mongodb" "*"
"@types/node" "*"

Expand Down Expand Up @@ -392,22 +392,29 @@ async-limiter@~1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/async-limiter/-/async-limiter-1.0.0.tgz#78faed8c3d074ab81f22b4e985d79e8738f720f8"

async@2.1.4:
version "2.1.4"
resolved "https://registry.yarnpkg.com/async/-/async-2.1.4.tgz#2d2160c7788032e4dd6cbe2502f1f9a2c8f6cde4"
integrity sha1-LSFgx3iAMuTdbL4lAvH5osj2zeQ=
dependencies:
lodash "^4.14.0"

async@2.4.0:
version "2.4.0"
resolved "https://registry.yarnpkg.com/async/-/async-2.4.0.tgz#4990200f18ea5b837c2cc4f8c031a6985c385611"
dependencies:
lodash "^4.14.0"

async@2.6.1, async@^2.1.4:
async@^1.4.0:
version "1.5.2"
resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a"

async@^2.1.4:
version "2.6.1"
resolved "https://registry.yarnpkg.com/async/-/async-2.6.1.tgz#b245a23ca71930044ec53fa46aa00a3e87c6a610"
dependencies:
lodash "^4.17.10"

async@^1.4.0:
version "1.5.2"
resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a"

asynckit@^0.4.0:
version "0.4.0"
resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79"
Expand Down Expand Up @@ -622,7 +629,12 @@ block-stream@*:
dependencies:
inherits "~2.0.0"

bluebird@3.5.1, bluebird@^3.5.0, bluebird@^3.5.1, bluebird@~3.5.1:
bluebird@2.10.2:
version "2.10.2"
resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-2.10.2.tgz#024a5517295308857f14f91f1106fc3b555f446b"
integrity sha1-AkpVFylTCIV/FPkfEQb8O1VfRGs=

bluebird@^3.5.0, bluebird@^3.5.1, bluebird@~3.5.1:
version "3.5.1"
resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.1.tgz#d9551f9de98f1fcda1e683d17ee91a0602ee2eb9"

Expand Down Expand Up @@ -688,9 +700,10 @@ bser@^2.0.0:
dependencies:
node-int64 "^0.4.0"

bson@~1.0.4, bson@~1.0.5:
bson@~1.0.4:
version "1.0.9"
resolved "https://registry.yarnpkg.com/bson/-/bson-1.0.9.tgz#12319f8323b1254739b7c6bef8d3e89ae05a2f57"
integrity sha512-IQX9/h7WdMBIW/q/++tGd+emQr0XMdeZ6icnT/74Xk9fnabWn+gZgpE+9V+gujL3hhJOoNrnDVY7tWdzc7NUTg==

btoa-lite@^1.0.0:
version "1.0.0"
Expand Down Expand Up @@ -719,6 +732,11 @@ buffer-from@^1.0.0:
version "1.1.1"
resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.1.tgz#32713bc028f75c02fdb710d7c7bcec1f2c6070ef"

buffer-shims@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/buffer-shims/-/buffer-shims-1.0.0.tgz#9978ce317388c649ad8793028c3477ef044a8b51"
integrity sha1-mXjOMXOIxkmth5MCjDR37wRKi1E=

buffer@^3.0.1:
version "3.6.0"
resolved "https://registry.yarnpkg.com/buffer/-/buffer-3.6.0.tgz#a72c936f77b96bf52f5f7e7b467180628551defb"
Expand Down Expand Up @@ -1200,6 +1218,13 @@ dateformat@^3.0.0:
version "3.0.3"
resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-3.0.3.tgz#a6e37499a4d9a9cf85ef5872044d62901c9889ae"

debug@2.2.0:
version "2.2.0"
resolved "https://registry.yarnpkg.com/debug/-/debug-2.2.0.tgz#f87057e995b1a1f6ae6a4960664137bc56f039da"
integrity sha1-+HBX6ZWxofauaklgZkE3vFbwOdo=
dependencies:
ms "0.7.1"

debug@3.1.0, debug@^3.1.0:
version "3.1.0"
resolved "https://registry.yarnpkg.com/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261"
Expand Down Expand Up @@ -1480,6 +1505,11 @@ es-to-primitive@^1.1.1:
is-date-object "^1.0.1"
is-symbol "^1.0.1"

es6-promise@3.2.1:
version "3.2.1"
resolved "https://registry.yarnpkg.com/es6-promise/-/es6-promise-3.2.1.tgz#ec56233868032909207170c39448e24449dd1fc4"
integrity sha1-7FYjOGgDKQkgcXDDlEjiREndH8Q=

es6-promise@^4.0.3:
version "4.2.4"
resolved "https://registry.yarnpkg.com/es6-promise/-/es6-promise-4.2.4.tgz#dc4221c2b16518760bd8c39a52d8f356fc00ed29"
Expand Down Expand Up @@ -2157,6 +2187,11 @@ hook-std@^1.1.0:
version "1.1.0"
resolved "https://registry.yarnpkg.com/hook-std/-/hook-std-1.1.0.tgz#7f76b74b6f96d3cd4106afb50a66bdb0af2d2a2d"

hooks-fixed@1.2.0:
version "1.2.0"
resolved "https://registry.yarnpkg.com/hooks-fixed/-/hooks-fixed-1.2.0.tgz#0d2772d4d7d685ff9244724a9f0b5b2559aac96b"
integrity sha1-DSdy1NfWhf+SRHJKnwtbJVmqyWs=

hosted-git-info@^2.1.4, hosted-git-info@^2.6.0, hosted-git-info@^2.7.1:
version "2.7.1"
resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.7.1.tgz#97f236977bd6e125408930ff6de3eec6281ec047"
Expand Down Expand Up @@ -3052,9 +3087,10 @@ jsprim@^1.2.2:
json-schema "0.2.3"
verror "1.10.0"

kareem@2.2.1:
version "2.2.1"
resolved "https://registry.yarnpkg.com/kareem/-/kareem-2.2.1.tgz#9950809415aa3cde62ab43b4f7b919d99816e015"
kareem@1.2.0:
version "1.2.0"
resolved "https://registry.yarnpkg.com/kareem/-/kareem-1.2.0.tgz#59851e833feb1ce6cf60000e0c23acf75c8a3547"
integrity sha1-WYUegz/rHObPYAAODCOs91yKNUc=

kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0:
version "3.2.2"
Expand Down Expand Up @@ -3231,10 +3267,6 @@ lodash.escaperegexp@^4.1.2:
version "4.1.2"
resolved "https://registry.yarnpkg.com/lodash.escaperegexp/-/lodash.escaperegexp-4.1.2.tgz#64762c48618082518ac3df4ccf5d5886dae20347"

lodash.get@4.4.2:
version "4.4.2"
resolved "https://registry.yarnpkg.com/lodash.get/-/lodash.get-4.4.2.tgz#2d177f652fa31e939b4438d5341499dfa3825e99"

lodash.isplainobject@^4.0.6:
version "4.0.6"
resolved "https://registry.yarnpkg.com/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz#7c526a52d89b45c45cc690b88163be0497f550cb"
Expand Down Expand Up @@ -3556,14 +3588,13 @@ modify-values@^1.0.0:
version "1.0.1"
resolved "https://registry.yarnpkg.com/modify-values/-/modify-values-1.0.1.tgz#b3939fa605546474e3e3e3c63d64bd43b4ee6022"

mongodb-core@3.1.0:
version "3.1.0"
resolved "https://registry.yarnpkg.com/mongodb-core/-/mongodb-core-3.1.0.tgz#af91f36fd560ed785f4e61e694432df4d3698aad"
mongodb-core@2.1.7:
version "2.1.7"
resolved "https://registry.yarnpkg.com/mongodb-core/-/mongodb-core-2.1.7.tgz#6a27909b98142ef2508d924c274969008954fa29"
integrity sha1-aieQm5gULvJQjZJMJ0lpAIlU+ik=
dependencies:
bson "~1.0.4"
require_optional "^1.0.1"
optionalDependencies:
saslprep "^1.0.0"
require_optional "~1.0.0"

mongodb-memory-server@^1.9.0:
version "1.9.3"
Expand All @@ -3581,30 +3612,30 @@ mongodb-memory-server@^1.9.0:
tmp "^0.0.33"
uuid "^3.2.1"

mongodb@3.1.1:
version "3.1.1"
resolved "https://registry.yarnpkg.com/mongodb/-/mongodb-3.1.1.tgz#c018c4b277614e8b1e08426d5bcbe1a7e5cdbd74"
mongodb@2.2.22:
version "2.2.22"
resolved "https://registry.yarnpkg.com/mongodb/-/mongodb-2.2.22.tgz#d67c588fc08f922db19754b1d2e03e2d7d1319fb"
integrity sha1-1nxYj8CPki2xl1Sx0uA+LX0TGfs=
dependencies:
mongodb-core "3.1.0"
es6-promise "3.2.1"
mongodb-core "2.1.7"
readable-stream "2.1.5"

mongoose-legacy-pluralize@1.0.2:
version "1.0.2"
resolved "https://registry.yarnpkg.com/mongoose-legacy-pluralize/-/mongoose-legacy-pluralize-1.0.2.tgz#3ba9f91fa507b5186d399fb40854bff18fb563e4"

mongoose@^5.2.5:
version "5.2.7"
resolved "https://registry.yarnpkg.com/mongoose/-/mongoose-5.2.7.tgz#679a682cc744f7fbcc14f23df77e9d8d5dfd043d"
dependencies:
async "2.6.1"
bson "~1.0.5"
kareem "2.2.1"
lodash.get "4.4.2"
mongodb "3.1.1"
mongodb-core "3.1.0"
mongoose-legacy-pluralize "1.0.2"
mpath "0.4.1"
mquery "3.1.2"
ms "2.0.0"
mongoose@4.7.9:
version "4.7.9"
resolved "https://registry.yarnpkg.com/mongoose/-/mongoose-4.7.9.tgz#7a860161d649789699b1363fb5d47ed957748200"
integrity sha1-eoYBYdZJeJaZsTY/tdR+2Vd0ggA=
dependencies:
async "2.1.4"
bson "~1.0.4"
hooks-fixed "1.2.0"
kareem "1.2.0"
mongodb "2.2.22"
mpath "0.2.1"
mpromise "0.5.5"
mquery "2.0.0"
ms "0.7.2"
muri "1.2.0"
regexp-clone "0.0.1"
sliced "1.0.1"

Expand All @@ -3619,18 +3650,35 @@ move-concurrently@^1.0.1:
rimraf "^2.5.4"
run-queue "^1.0.3"

mpath@0.4.1:
version "0.4.1"
resolved "https://registry.yarnpkg.com/mpath/-/mpath-0.4.1.tgz#ed10388430380bf7bbb5be1391e5d6969cb08e89"
mpath@0.2.1:
version "0.2.1"
resolved "https://registry.yarnpkg.com/mpath/-/mpath-0.2.1.tgz#3a4e829359801de96309c27a6b2e102e89f9e96e"
integrity sha1-Ok6Ck1mAHeljCcJ6ay4QLon56W4=

mquery@3.1.2:
version "3.1.2"
resolved "https://registry.yarnpkg.com/mquery/-/mquery-3.1.2.tgz#46c2ea6d7a08c9b9e0716022fb2990708ddba9ff"
mpromise@0.5.5:
version "0.5.5"
resolved "https://registry.yarnpkg.com/mpromise/-/mpromise-0.5.5.tgz#f5b24259d763acc2257b0a0c8c6d866fd51732e6"
integrity sha1-9bJCWddjrMIlewoMjG2Gb9UXMuY=

mquery@2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/mquery/-/mquery-2.0.0.tgz#b5abc850b90dffc3e10ae49b4b6e7a479752df22"
integrity sha1-tavIULkN/8PhCuSbS256R5dS3yI=
dependencies:
bluebird "3.5.1"
debug "3.1.0"
bluebird "2.10.2"
debug "2.2.0"
regexp-clone "0.0.1"
sliced "1.0.1"
sliced "0.0.5"

ms@0.7.1:
version "0.7.1"
resolved "https://registry.yarnpkg.com/ms/-/ms-0.7.1.tgz#9cd13c03adbff25b65effde7ce864ee952017098"
integrity sha1-nNE8A62/8ltl7/3nzoZO6VIBcJg=

ms@0.7.2:
version "0.7.2"
resolved "https://registry.yarnpkg.com/ms/-/ms-0.7.2.tgz#ae25cf2512b3885a1d95d7f037868d8431124765"
integrity sha1-riXPJRKziFodldfwN4aNhDESR2U=

ms@2.0.0:
version "2.0.0"
Expand All @@ -3640,6 +3688,11 @@ ms@^2.0.0:
version "2.1.1"
resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.1.tgz#30a5864eb3ebb0a66f2ebe6d727af06a09d86e0a"

muri@1.2.0:
version "1.2.0"
resolved "https://registry.yarnpkg.com/muri/-/muri-1.2.0.tgz#b86383c902920b09ebe62af0e75c94de5f33cd3d"
integrity sha1-uGODyQKSCwnr5irw51yU3l8zzT0=

mute-stream@~0.0.4:
version "0.0.7"
resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab"
Expand Down Expand Up @@ -4389,6 +4442,11 @@ private@^0.1.8:
version "0.1.8"
resolved "https://registry.yarnpkg.com/private/-/private-0.1.8.tgz#2381edb3689f7a53d653190060fcf822d2f368ff"

process-nextick-args@~1.0.6:
version "1.0.7"
resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-1.0.7.tgz#150e20b756590ad3f91093f25a4f2ad8bff30ba3"
integrity sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=

process-nextick-args@~2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.0.tgz#a37d732f4271b4ab1ad070d35508e8290788ffaa"
Expand Down Expand Up @@ -4620,6 +4678,19 @@ read@1, read@~1.0.1, read@~1.0.7:
string_decoder "~1.1.1"
util-deprecate "~1.0.1"

readable-stream@2.1.5:
version "2.1.5"
resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.1.5.tgz#66fa8b720e1438b364681f2ad1a63c618448c9d0"
integrity sha1-ZvqLcg4UOLNkaB8q0aY8YYRIydA=
dependencies:
buffer-shims "^1.0.0"
core-util-is "~1.0.0"
inherits "~2.0.1"
isarray "~1.0.0"
process-nextick-args "~1.0.6"
string_decoder "~0.10.x"
util-deprecate "~1.0.1"

readable-stream@~1.1.10:
version "1.1.14"
resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.1.14.tgz#7cf4c54ef648e3813084c636dd2079e166c081d9"
Expand Down Expand Up @@ -4677,6 +4748,7 @@ regex-not@^1.0.0, regex-not@^1.0.2:
regexp-clone@0.0.1:
version "0.0.1"
resolved "https://registry.yarnpkg.com/regexp-clone/-/regexp-clone-0.0.1.tgz#a7c2e09891fdbf38fbb10d376fb73003e68ac589"
integrity sha1-p8LgmJH9vzj7sQ03b7cwA+aKxYk=

registry-auth-token@^3.0.1, registry-auth-token@^3.3.1:
version "3.3.2"
Expand Down Expand Up @@ -4756,9 +4828,10 @@ require-main-filename@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-1.0.1.tgz#97f717b69d48784f5f526a6c5aa8ffdda055a4d1"

require_optional@^1.0.1:
require_optional@~1.0.0:
version "1.0.1"
resolved "https://registry.yarnpkg.com/require_optional/-/require_optional-1.0.1.tgz#4cf35a4247f64ca3df8c2ef208cc494b1ca8fc2e"
integrity sha512-qhM/y57enGWHAe3v/NcwML6a3/vfESLe/sGM2dII+gEO0BpKRUkWZow/tyloNqJyN6kXSl3RyyM8Ll5D/sJP8g==
dependencies:
resolve-from "^2.0.0"
semver "^5.1.0"
Expand All @@ -4772,6 +4845,7 @@ resolve-cwd@^2.0.0:
resolve-from@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-2.0.0.tgz#9480ab20e94ffa1d9e80a804c7ea147611966b57"
integrity sha1-lICrIOlP+h2egKgEx+oUdhGWa1c=

resolve-from@^3.0.0:
version "3.0.0"
Expand Down Expand Up @@ -4858,10 +4932,6 @@ sane@^2.0.0:
optionalDependencies:
fsevents "^1.2.3"

saslprep@^1.0.0:
version "1.0.1"
resolved "https://registry.yarnpkg.com/saslprep/-/saslprep-1.0.1.tgz#b644e0ba25b156b652f3cb90df7542f896049ba6"

sax@^1.2.4:
version "1.2.4"
resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9"
Expand Down Expand Up @@ -4985,9 +5055,15 @@ slash@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz#c41f2f6c39fc16d1cd17ad4b5d896114ae470d55"

sliced@0.0.5:
version "0.0.5"
resolved "https://registry.yarnpkg.com/sliced/-/sliced-0.0.5.tgz#5edc044ca4eb6f7816d50ba2fc63e25d8fe4707f"
integrity sha1-XtwETKTrb3gW1Qui/GPiXY/kcH8=

sliced@1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/sliced/-/sliced-1.0.1.tgz#0b3a662b5d04c3177b1926bea82b03f837a2ef41"
integrity sha1-CzpmK10Ewxd7GSa+qCsD+Dei70E=

slide@^1.1.3, slide@^1.1.6, slide@~1.1.3, slide@~1.1.6:
version "1.1.6"
Expand Down

0 comments on commit 2fec767

Please sign in to comment.