Skip to content

Commit 6d2d1da

Browse files
committed
switch to modular lodash
1 parent f20d9cf commit 6d2d1da

File tree

4 files changed

+20
-19
lines changed

4 files changed

+20
-19
lines changed

lib/clean.js

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
const BbPromise = require('bluebird');
22
const fse = require('fs-extra');
33
const path = require('path');
4-
const _ = require('lodash');
54

65
BbPromise.promisifyAll(fse);
76

@@ -17,7 +16,7 @@ function cleanup() {
1716
artifacts.push('unzip_requirements.py');
1817
}
1918

20-
return BbPromise.all(_.map(artifacts, (artifact) => fse.removeAsync(
19+
return BbPromise.all(artifacts.map((artifact) => fse.removeAsync(
2120
path.join(this.servicePath, artifact))));
2221
};
2322

lib/link.js

+12-13
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,11 @@
11
const fse = require('fs-extra');
22
const path = require('path');
3-
const _ = require('lodash');
3+
const get = require('lodash.get');
4+
const set = require('lodash.set');
5+
const values = require('lodash.values');
46
const rimraf = require('rimraf');
57

8+
69
/**
710
* link all the files in .serverless/requirements to the service directory root
811
* @return {undefined}
@@ -11,8 +14,8 @@ function linkRequirements() {
1114
const requirementsDir = path.join(this.servicePath, '.serverless/requirements');
1215
if (fse.existsSync('__pycache__'))
1316
rimraf.sync('__pycache__');
14-
if (!_.get(this.serverless.service, 'package.include'))
15-
_.set(this.serverless.service, ['package', 'include'], []);
17+
if (!get(this.serverless.service, 'package.include'))
18+
set(this.serverless.service, ['package', 'include'], []);
1619
if (!this.options.zip && fse.existsSync(requirementsDir)) {
1720
this.serverless.cli.log('Linking required Python packages...');
1821
const noDeploy = new Set(this.options.noDeploy || []);
@@ -21,18 +24,14 @@ function linkRequirements() {
2124
return;
2225
if (this.serverless.service.package.individually) {
2326
// don't include python deps in non-python functions
24-
_.each(
25-
_.filter(
26-
this.serverless.service.functions,
27-
(f) => { return (f.runtime || this.serverless.service.provider.runtime).match(/^python.*/) }
28-
),
29-
(f) => {
30-
if (!_.get(f, 'package.include'))
31-
_.set(f, ['package', 'include'], []);
27+
values(this.serverless.service.functions)
28+
.filter((f) => (f.runtime || this.serverless.service.provider.runtime).match(/^python.*/))
29+
.forEach((f) => {
30+
if (!get(f, 'package.include'))
31+
set(f, ['package', 'include'], []);
3232
f.package.include.push(file)
3333
f.package.include.push(`${file}/**`)
34-
}
35-
);
34+
});
3635
} else {
3736
this.serverless.service.package.include.push(file);
3837
this.serverless.service.package.include.push(`${file}/**`);

lib/zip.js

+4-3
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
const fse = require('fs-extra');
22
const path = require('path');
3-
const _ = require('lodash');
3+
const get = require('lodash.get');
4+
const set = require('lodash.set');
45
const {zipDirectory} = require('./zipService');
56
const BbPromise = require('bluebird');
67

@@ -14,8 +15,8 @@ function addVendorHelper() {
1415
if (this.options.zip) {
1516
this.serverless.cli.log('Adding Python requirements helper...');
1617

17-
if (!_.get(this.serverless.service, 'package.include'))
18-
_.set(this.serverless.service, ['package', 'include'], []);
18+
if (!get(this.serverless.service, 'package.include'))
19+
set(this.serverless.service, ['package', 'include'], []);
1920

2021
this.serverless.service.package.include.push('unzip_requirements.py');
2122

package.json

+3-1
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,9 @@
5252
"glob-all": "^3.1.0",
5353
"graceful-fs": "^4.1.11",
5454
"is-wsl": "^1.1.0",
55-
"lodash": "^4.13.1",
55+
"lodash.get": "^4.4.2",
56+
"lodash.set": "^4.3.2",
57+
"lodash.values": "^4.3.0",
5658
"rimraf": "^2.6.2"
5759
}
5860
}

0 commit comments

Comments
 (0)