Skip to content

Commit 6d6680c

Browse files
Merge pull request #8 from solocommand/mongodb-deprecations
Resolve mongodb deprecations
2 parents a755b3a + ef5b4b0 commit 6d6680c

File tree

7 files changed

+102
-60
lines changed

7 files changed

+102
-60
lines changed

.travis.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
language: node_js
2+
node_js:
3+
- "node"
4+
- "lts/*"

src/pagination.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ class Pagination {
6262
* @return {Promise}
6363
*/
6464
getTotalCount() {
65-
const run = () => this.Model.count(this.criteria);
65+
const run = () => this.Model.countDocuments(this.criteria);
6666
if (!this.promises.count) {
6767
this.promises.count = run();
6868
}
@@ -123,7 +123,7 @@ class Pagination {
123123
.sort(this.sort.value)
124124
.collation(this.sort.collation)
125125
.comment(this.createComment('hasNextPage'))
126-
.count();
126+
.countDocuments();
127127
return Boolean(count);
128128
};
129129
if (!this.promises.nextPage) {

test/mongoose/index.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ mongoose.Promise = bluebird;
66

77
const connection = mongoose.createConnection(MONGO_DSN, {
88
promiseLibrary: bluebird,
9+
useNewUrlParser: true,
910
});
1011

1112
module.exports = connection;

test/pagination.spec.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -30,11 +30,11 @@ describe('pagination', function() {
3030
models = await createModels();
3131
});
3232
after(async function() {
33-
await Model.remove();
33+
await Model.deleteMany({});
3434
});
3535

3636
beforeEach(function() {
37-
sandbox.spy(Model, 'count');
37+
sandbox.spy(Model, 'countDocuments');
3838
sandbox.spy(Model, 'find');
3939
sandbox.spy(Model, 'findOne');
4040
sandbox.spy(Pagination.prototype, 'getEdges');
@@ -103,7 +103,7 @@ describe('pagination', function() {
103103
const r1 = await paginated.getTotalCount();
104104
const r2 = await paginated.getTotalCount();
105105
expect(r1).to.equal(r2);
106-
sinon.assert.calledOnce(Model.count);
106+
sinon.assert.calledOnce(Model.countDocuments);
107107
});
108108
});
109109

test/resolvers.spec.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ describe('resolvers', function() {
1010
model = await (new Model({ name: 'foo', deleted: false })).save();
1111
});
1212
after(async function() {
13-
await Model.remove();
13+
await Model.deleteMany({});
1414
});
1515
describe('.connection', function() {
1616
const { connection } = resolvers;

test/search-pagination.spec.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ describe('search-pagination', function() {
5757
await client.indices.refresh({ index });
5858
});
5959
after(async function() {
60-
await Model.remove();
60+
await Model.deleteMany({});
6161
await client.indices.delete({ index });
6262
});
6363

yarn.lock

Lines changed: 90 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -145,11 +145,12 @@ assign-symbols@^1.0.0:
145145
version "1.0.0"
146146
resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367"
147147

148-
149-
version "2.1.4"
150-
resolved "https://registry.yarnpkg.com/async/-/async-2.1.4.tgz#2d2160c7788032e4dd6cbe2502f1f9a2c8f6cde4"
148+
149+
version "2.6.1"
150+
resolved "https://registry.yarnpkg.com/async/-/async-2.6.1.tgz#b245a23ca71930044ec53fa46aa00a3e87c6a610"
151+
integrity sha512-fNEiL2+AZt6AlAw/29Cr0UDe4sRAHCpEHh54WMz+Bb7QfNcFw4h3loofyJpLeQs4Yx7yuqu/2dLgM5hKOs6HlQ==
151152
dependencies:
152-
lodash "^4.14.0"
153+
lodash "^4.17.10"
153154

154155
async@^1.4.0:
155156
version "1.5.2"
@@ -250,11 +251,7 @@ base@^0.11.1:
250251
mixin-deep "^1.2.0"
251252
pascalcase "^0.1.1"
252253

253-
254-
version "3.5.0"
255-
resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.0.tgz#791420d7f551eea2897453a8a77653f96606d67c"
256-
257-
bluebird@^3.5.1:
254+
[email protected], bluebird@^3.5.1:
258255
version "3.5.1"
259256
resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.1.tgz#d9551f9de98f1fcda1e683d17ee91a0602ee2eb9"
260257

@@ -292,9 +289,10 @@ [email protected]:
292289
version "1.3.1"
293290
resolved "https://registry.yarnpkg.com/browser-stdout/-/browser-stdout-1.3.1.tgz#baa559ee14ced73452229bad7326467c61fabd60"
294291

295-
bson@~1.0.4:
296-
version "1.0.6"
297-
resolved "https://registry.yarnpkg.com/bson/-/bson-1.0.6.tgz#444db59ddd4c24f0cb063aabdc5c8c7b0ceca912"
292+
bson@^1.1.0, bson@~1.1.0:
293+
version "1.1.0"
294+
resolved "https://registry.yarnpkg.com/bson/-/bson-1.1.0.tgz#bee57d1fb6a87713471af4e32bcae36de814b5b0"
295+
integrity sha512-9Aeai9TacfNtWXOYarkFJRW2CWo+dRon+fuLZYJmvLV3+MiUp0bEI6IAZfXEIg7/Pl/7IWlLaDnhzTsD81etQA==
298296

299297
buffer-from@^1.0.0:
300298
version "1.0.0"
@@ -522,18 +520,18 @@ debug-log@^1.0.1:
522520
version "1.0.1"
523521
resolved "https://registry.yarnpkg.com/debug-log/-/debug-log-1.0.1.tgz#2307632d4c04382b8df8a32f70b895046d52745f"
524522

525-
[email protected], debug@^2.2.0, debug@^2.3.3, debug@^2.6.8, debug@^2.6.9:
526-
version "2.6.9"
527-
resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f"
528-
dependencies:
529-
ms "2.0.0"
530-
531523
[email protected], debug@^3.1.0:
532524
version "3.1.0"
533525
resolved "https://registry.yarnpkg.com/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261"
534526
dependencies:
535527
ms "2.0.0"
536528

529+
debug@^2.2.0, debug@^2.3.3, debug@^2.6.8, debug@^2.6.9:
530+
version "2.6.9"
531+
resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f"
532+
dependencies:
533+
ms "2.0.0"
534+
537535
decamelize@^1.0.0, decamelize@^1.1.1:
538536
version "1.2.0"
539537
resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290"
@@ -1421,9 +1419,10 @@ just-extend@^1.1.27:
14211419
version "1.1.27"
14221420
resolved "https://registry.yarnpkg.com/just-extend/-/just-extend-1.1.27.tgz#ec6e79410ff914e472652abfa0e603c03d60e905"
14231421

1424-
1425-
version "2.0.7"
1426-
resolved "https://registry.yarnpkg.com/kareem/-/kareem-2.0.7.tgz#8d260366a4df4236ceccec318fcf10c17c5beb22"
1422+
1423+
version "2.3.0"
1424+
resolved "https://registry.yarnpkg.com/kareem/-/kareem-2.3.0.tgz#ef33c42e9024dce511eeaf440cd684f3af1fc769"
1425+
integrity sha512-6hHxsp9e6zQU8nXsP+02HGWXwTkOEw6IROhF2ZA28cYbUk4eJ6QbtZvdqZOdD9YPKghG3apk5eOCvs+tLl3lRg==
14271426

14281427
kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0:
14291428
version "3.2.2"
@@ -1492,7 +1491,7 @@ [email protected], lodash.get@^4.4.2:
14921491
version "4.4.2"
14931492
resolved "https://registry.yarnpkg.com/lodash.get/-/lodash.get-4.4.2.tgz#2d177f652fa31e939b4438d5341499dfa3825e99"
14941493

1495-
lodash@^4.14.0, lodash@^4.17.10, lodash@^4.17.4, lodash@^4.3.0:
1494+
lodash@^4.17.10, lodash@^4.17.4, lodash@^4.3.0:
14961495
version "4.17.10"
14971496
resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.10.tgz#1b7793cf7259ea38fb3661d4d38b3260af8ae4e7"
14981497

@@ -1543,6 +1542,11 @@ mem@^1.1.0:
15431542
dependencies:
15441543
mimic-fn "^1.0.0"
15451544

1545+
memory-pager@^1.0.2:
1546+
version "1.3.1"
1547+
resolved "https://registry.yarnpkg.com/memory-pager/-/memory-pager-1.3.1.tgz#1153d2f5e157a407a436bf54ccf4139037515866"
1548+
integrity sha512-pUf/sGkym2WqFZYTVmdASnSbNfpGc9rwxEHOePx4lT/fD+NHGL1U16Uy4o6PMiVcDv4mp6MI/vaF0c/Kd1QEUQ==
1549+
15461550
merge-source-map@^1.0.2:
15471551
version "1.1.0"
15481552
resolved "https://registry.yarnpkg.com/merge-source-map/-/merge-source-map-1.1.0.tgz#2fdde7e6020939f70906a68f2d7ae685e4c8c646"
@@ -1632,55 +1636,69 @@ mocha@^5.1.1:
16321636
mkdirp "0.5.1"
16331637
supports-color "4.4.0"
16341638

1635-
1636-
version "3.0.7"
1637-
resolved "https://registry.yarnpkg.com/mongodb-core/-/mongodb-core-3.0.7.tgz#a9941f14883a75768d554cef5fd67756a9cc0f25"
1639+
1640+
version "3.1.9"
1641+
resolved "https://registry.yarnpkg.com/mongodb-core/-/mongodb-core-3.1.9.tgz#c31ee407bf932b0149eaed775c17ee09974e4ca3"
1642+
integrity sha512-MJpciDABXMchrZphh3vMcqu8hkNf/Mi+Gk6btOimVg1XMxLXh87j6FAvRm+KmwD1A9fpu3qRQYcbQe4egj23og==
16381643
dependencies:
1639-
bson "~1.0.4"
1644+
bson "^1.1.0"
16401645
require_optional "^1.0.1"
1646+
safe-buffer "^5.1.2"
1647+
optionalDependencies:
1648+
saslprep "^1.0.0"
16411649

1642-
1643-
version "3.0.7"
1644-
resolved "https://registry.yarnpkg.com/mongodb/-/mongodb-3.0.7.tgz#cfcbaee992d78dabca67177f8f9db9cf13ac3a44"
1650+
1651+
version "3.1.10"
1652+
resolved "https://registry.yarnpkg.com/mongodb/-/mongodb-3.1.10.tgz#45ad9b74ea376f4122d0881b75e5489b9e504ed7"
1653+
integrity sha512-Uml42GeFxhTGQVml1XQ4cD0o/rp7J2ROy0fdYUcVitoE7vFqEhKH4TYVqRDpQr/bXtCJVxJdNQC1ntRxNREkPQ==
16451654
dependencies:
1646-
mongodb-core "3.0.7"
1655+
mongodb-core "3.1.9"
1656+
safe-buffer "^5.1.2"
16471657

16481658
16491659
version "1.0.2"
16501660
resolved "https://registry.yarnpkg.com/mongoose-legacy-pluralize/-/mongoose-legacy-pluralize-1.0.2.tgz#3ba9f91fa507b5186d399fb40854bff18fb563e4"
1661+
integrity sha512-Yo/7qQU4/EyIS8YDFSeenIvXxZN+ld7YdV9LqFVQJzTLye8unujAWPZ4NWKfFA+RNjh+wvTWKY9Z3E5XM6ZZiQ==
16511662

16521663
mongoose@^5.0.17:
1653-
version "5.0.17"
1654-
resolved "https://registry.yarnpkg.com/mongoose/-/mongoose-5.0.17.tgz#7c70e663b8ac567460902dca636ebb59f36a540a"
1664+
version "5.3.15"
1665+
resolved "https://registry.yarnpkg.com/mongoose/-/mongoose-5.3.15.tgz#11a803a4ae640b0cce29a2579282ac9dd005c47a"
1666+
integrity sha512-51PchMQn2kFZYPSe0vfr8RcJxm6g7RokfcVl2xVORogtT5GUKu6RgnRXsUV7v9vZ+b3Wh//ph53kuIyhtXi56g==
16551667
dependencies:
1656-
async "2.1.4"
1657-
bson "~1.0.4"
1658-
kareem "2.0.7"
1668+
async "2.6.1"
1669+
bson "~1.1.0"
1670+
kareem "2.3.0"
16591671
lodash.get "4.4.2"
1660-
mongodb "3.0.7"
1672+
mongodb "3.1.10"
1673+
mongodb-core "3.1.9"
16611674
mongoose-legacy-pluralize "1.0.2"
1662-
mpath "0.4.1"
1663-
mquery "3.0.0"
1675+
mpath "0.5.1"
1676+
mquery "3.2.0"
16641677
ms "2.0.0"
16651678
regexp-clone "0.0.1"
1679+
safe-buffer "5.1.2"
16661680
sliced "1.0.1"
16671681

1668-
1669-
version "0.4.1"
1670-
resolved "https://registry.yarnpkg.com/mpath/-/mpath-0.4.1.tgz#ed10388430380bf7bbb5be1391e5d6969cb08e89"
1682+
1683+
version "0.5.1"
1684+
resolved "https://registry.yarnpkg.com/mpath/-/mpath-0.5.1.tgz#17131501f1ff9e6e4fbc8ffa875aa7065b5775ab"
1685+
integrity sha512-H8OVQ+QEz82sch4wbODFOz+3YQ61FYz/z3eJ5pIdbMEaUzDqA268Wd+Vt4Paw9TJfvDgVKaayC0gBzMIw2jhsg==
16711686

1672-
1673-
version "3.0.0"
1674-
resolved "https://registry.yarnpkg.com/mquery/-/mquery-3.0.0.tgz#e5f387dbabc0b9b69859e550e810faabe0ceabb0"
1687+
1688+
version "3.2.0"
1689+
resolved "https://registry.yarnpkg.com/mquery/-/mquery-3.2.0.tgz#e276472abd5109686a15eb2a8e0761db813c81cc"
1690+
integrity sha512-qPJcdK/yqcbQiKoemAt62Y0BAc0fTEKo1IThodBD+O5meQRJT/2HSe5QpBNwaa4CjskoGrYWsEyjkqgiE0qjhg==
16751691
dependencies:
1676-
bluebird "3.5.0"
1677-
debug "2.6.9"
1692+
bluebird "3.5.1"
1693+
debug "3.1.0"
16781694
regexp-clone "0.0.1"
1679-
sliced "0.0.5"
1695+
safe-buffer "5.1.2"
1696+
sliced "1.0.1"
16801697

16811698
16821699
version "2.0.0"
16831700
resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8"
1701+
integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=
16841702

16851703
ms@^2.0.0:
16861704
version "2.1.1"
@@ -2061,6 +2079,7 @@ regex-not@^1.0.0, regex-not@^1.0.2:
20612079
20622080
version "0.0.1"
20632081
resolved "https://registry.yarnpkg.com/regexp-clone/-/regexp-clone-0.0.1.tgz#a7c2e09891fdbf38fbb10d376fb73003e68ac589"
2082+
integrity sha1-p8LgmJH9vzj7sQ03b7cwA+aKxYk=
20642083

20652084
regexpp@^1.0.1:
20662085
version "1.1.0"
@@ -2102,6 +2121,7 @@ require-uncached@^1.0.3:
21022121
require_optional@^1.0.1:
21032122
version "1.0.1"
21042123
resolved "https://registry.yarnpkg.com/require_optional/-/require_optional-1.0.1.tgz#4cf35a4247f64ca3df8c2ef208cc494b1ca8fc2e"
2124+
integrity sha512-qhM/y57enGWHAe3v/NcwML6a3/vfESLe/sGM2dII+gEO0BpKRUkWZow/tyloNqJyN6kXSl3RyyM8Ll5D/sJP8g==
21052125
dependencies:
21062126
resolve-from "^2.0.0"
21072127
semver "^5.1.0"
@@ -2113,6 +2133,7 @@ resolve-from@^1.0.0:
21132133
resolve-from@^2.0.0:
21142134
version "2.0.0"
21152135
resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-2.0.0.tgz#9480ab20e94ffa1d9e80a804c7ea147611966b57"
2136+
integrity sha1-lICrIOlP+h2egKgEx+oUdhGWa1c=
21162137

21172138
resolve-url@^0.2.1:
21182139
version "0.2.1"
@@ -2163,7 +2184,7 @@ rx-lite@*, rx-lite@^4.0.8:
21632184
version "4.0.8"
21642185
resolved "https://registry.yarnpkg.com/rx-lite/-/rx-lite-4.0.8.tgz#0b1e11af8bc44836f04a6407e92da42467b79444"
21652186

2166-
safe-buffer@~5.1.0, safe-buffer@~5.1.1:
2187+
safe-buffer@5.1.2, safe-buffer@^5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1:
21672188
version "5.1.2"
21682189
resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d"
21692190

@@ -2181,10 +2202,22 @@ [email protected]:
21812202
version "1.3.0"
21822203
resolved "https://registry.yarnpkg.com/samsam/-/samsam-1.3.0.tgz#8d1d9350e25622da30de3e44ba692b5221ab7c50"
21832204

2184-
"semver@2 || 3 || 4 || 5", semver@^5.1.0, semver@^5.3.0:
2205+
saslprep@^1.0.0:
2206+
version "1.0.2"
2207+
resolved "https://registry.yarnpkg.com/saslprep/-/saslprep-1.0.2.tgz#da5ab936e6ea0bbae911ffec77534be370c9f52d"
2208+
integrity sha512-4cDsYuAjXssUSjxHKRe4DTZC0agDwsCqcMqtJAQPzC74nJ7LfAJflAtC1Zed5hMzEQKj82d3tuzqdGNRsLJ4Gw==
2209+
dependencies:
2210+
sparse-bitfield "^3.0.3"
2211+
2212+
"semver@2 || 3 || 4 || 5", semver@^5.3.0:
21852213
version "5.5.0"
21862214
resolved "https://registry.yarnpkg.com/semver/-/semver-5.5.0.tgz#dc4bbc7a6ca9d916dee5d43516f0092b58f7b8ab"
21872215

2216+
semver@^5.1.0:
2217+
version "5.6.0"
2218+
resolved "https://registry.yarnpkg.com/semver/-/semver-5.6.0.tgz#7e74256fbaa49c75aa7c7a205cc22799cac80004"
2219+
integrity sha512-RS9R6R35NYgQn++fkDWaOmqGoj4Ek9gGs+DPxNUZKuwE183xjJroKvyo1IzVFeXvUrvmALy6FWD5xrdJT25gMg==
2220+
21882221
set-blocking@^2.0.0:
21892222
version "2.0.0"
21902223
resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7"
@@ -2239,13 +2272,10 @@ [email protected]:
22392272
dependencies:
22402273
is-fullwidth-code-point "^2.0.0"
22412274

2242-
2243-
version "0.0.5"
2244-
resolved "https://registry.yarnpkg.com/sliced/-/sliced-0.0.5.tgz#5edc044ca4eb6f7816d50ba2fc63e25d8fe4707f"
2245-
22462275
22472276
version "1.0.1"
22482277
resolved "https://registry.yarnpkg.com/sliced/-/sliced-1.0.1.tgz#0b3a662b5d04c3177b1926bea82b03f837a2ef41"
2278+
integrity sha1-CzpmK10Ewxd7GSa+qCsD+Dei70E=
22492279

22502280
slide@^1.1.5:
22512281
version "1.1.6"
@@ -2306,6 +2336,13 @@ source-map@^0.6.1:
23062336
version "0.6.1"
23072337
resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263"
23082338

2339+
sparse-bitfield@^3.0.3:
2340+
version "3.0.3"
2341+
resolved "https://registry.yarnpkg.com/sparse-bitfield/-/sparse-bitfield-3.0.3.tgz#ff4ae6e68656056ba4b3e792ab3334d38273ca11"
2342+
integrity sha1-/0rm5oZWBWuks+eSqzM004JzyhE=
2343+
dependencies:
2344+
memory-pager "^1.0.2"
2345+
23092346
spawn-wrap@^1.4.2:
23102347
version "1.4.2"
23112348
resolved "https://registry.yarnpkg.com/spawn-wrap/-/spawn-wrap-1.4.2.tgz#cff58e73a8224617b6561abdc32586ea0c82248c"

0 commit comments

Comments
 (0)