netlify-cli 15.0.3 → 15.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "netlify-cli",
3
- "version": "15.0.3",
3
+ "version": "15.1.0",
4
4
  "lockfileVersion": 2,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "netlify-cli",
9
- "version": "15.0.3",
9
+ "version": "15.1.0",
10
10
  "hasInstallScript": true,
11
11
  "license": "MIT",
12
12
  "dependencies": {
@@ -20,6 +20,7 @@
20
20
  "@netlify/local-functions-proxy": "1.1.1",
21
21
  "@netlify/zip-it-and-ship-it": "9.5.0",
22
22
  "@octokit/rest": "19.0.8",
23
+ "@skn0tt/lambda-local": "^2.0.3",
23
24
  "ansi-escapes": "6.2.0",
24
25
  "ansi-styles": "6.2.1",
25
26
  "ansi-to-html": "0.7.2",
@@ -68,11 +69,11 @@
68
69
  "inquirer": "6.5.2",
69
70
  "inquirer-autocomplete-prompt": "1.4.0",
70
71
  "is-docker": "3.0.0",
72
+ "is-stream": "^3.0.0",
71
73
  "is-wsl": "2.2.0",
72
74
  "isexe": "2.0.0",
73
75
  "jsonwebtoken": "9.0.0",
74
76
  "jwt-decode": "3.1.2",
75
- "lambda-local": "2.0.3",
76
77
  "listr": "0.14.3",
77
78
  "locate-path": "7.2.0",
78
79
  "lodash": "4.17.21",
@@ -959,17 +960,6 @@
959
960
  "url": "https://github.com/sponsors/sindresorhus"
960
961
  }
961
962
  },
962
- "node_modules/@netlify/build/node_modules/is-stream": {
963
- "version": "3.0.0",
964
- "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz",
965
- "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==",
966
- "engines": {
967
- "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
968
- },
969
- "funding": {
970
- "url": "https://github.com/sponsors/sindresorhus"
971
- }
972
- },
973
963
  "node_modules/@netlify/build/node_modules/lowercase-keys": {
974
964
  "version": "3.0.0",
975
965
  "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-3.0.0.tgz",
@@ -1423,17 +1413,6 @@
1423
1413
  "url": "https://github.com/sponsors/sindresorhus"
1424
1414
  }
1425
1415
  },
1426
- "node_modules/@netlify/config/node_modules/is-stream": {
1427
- "version": "3.0.0",
1428
- "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz",
1429
- "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==",
1430
- "engines": {
1431
- "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
1432
- },
1433
- "funding": {
1434
- "url": "https://github.com/sponsors/sindresorhus"
1435
- }
1436
- },
1437
1416
  "node_modules/@netlify/config/node_modules/map-obj": {
1438
1417
  "version": "5.0.2",
1439
1418
  "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-5.0.2.tgz",
@@ -1662,17 +1641,6 @@
1662
1641
  "url": "https://github.com/sponsors/sindresorhus"
1663
1642
  }
1664
1643
  },
1665
- "node_modules/@netlify/edge-bundler/node_modules/is-stream": {
1666
- "version": "3.0.0",
1667
- "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz",
1668
- "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==",
1669
- "engines": {
1670
- "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
1671
- },
1672
- "funding": {
1673
- "url": "https://github.com/sponsors/sindresorhus"
1674
- }
1675
- },
1676
1644
  "node_modules/@netlify/edge-bundler/node_modules/json-schema-traverse": {
1677
1645
  "version": "1.0.0",
1678
1646
  "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz",
@@ -2294,17 +2262,6 @@
2294
2262
  "node": ">=12.20.0"
2295
2263
  }
2296
2264
  },
2297
- "node_modules/@netlify/git-utils/node_modules/is-stream": {
2298
- "version": "3.0.0",
2299
- "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz",
2300
- "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==",
2301
- "engines": {
2302
- "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
2303
- },
2304
- "funding": {
2305
- "url": "https://github.com/sponsors/sindresorhus"
2306
- }
2307
- },
2308
2265
  "node_modules/@netlify/git-utils/node_modules/map-obj": {
2309
2266
  "version": "5.0.2",
2310
2267
  "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-5.0.2.tgz",
@@ -2616,17 +2573,6 @@
2616
2573
  "node": ">=12.20.0"
2617
2574
  }
2618
2575
  },
2619
- "node_modules/@netlify/run-utils/node_modules/is-stream": {
2620
- "version": "3.0.0",
2621
- "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz",
2622
- "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==",
2623
- "engines": {
2624
- "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
2625
- },
2626
- "funding": {
2627
- "url": "https://github.com/sponsors/sindresorhus"
2628
- }
2629
- },
2630
2576
  "node_modules/@netlify/run-utils/node_modules/npm-run-path": {
2631
2577
  "version": "5.1.0",
2632
2578
  "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.1.0.tgz",
@@ -2806,17 +2752,6 @@
2806
2752
  "url": "https://github.com/sponsors/sindresorhus"
2807
2753
  }
2808
2754
  },
2809
- "node_modules/@netlify/zip-it-and-ship-it/node_modules/is-stream": {
2810
- "version": "3.0.0",
2811
- "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz",
2812
- "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==",
2813
- "engines": {
2814
- "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
2815
- },
2816
- "funding": {
2817
- "url": "https://github.com/sponsors/sindresorhus"
2818
- }
2819
- },
2820
2755
  "node_modules/@netlify/zip-it-and-ship-it/node_modules/minimatch": {
2821
2756
  "version": "9.0.0",
2822
2757
  "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.0.tgz",
@@ -3210,6 +3145,30 @@
3210
3145
  "url": "https://github.com/sponsors/sindresorhus"
3211
3146
  }
3212
3147
  },
3148
+ "node_modules/@skn0tt/lambda-local": {
3149
+ "version": "2.0.3",
3150
+ "resolved": "https://registry.npmjs.org/@skn0tt/lambda-local/-/lambda-local-2.0.3.tgz",
3151
+ "integrity": "sha512-7WZuCWSHeWC9Fh2FTT7lAT6yL5vDZUPxCZ51gIDdCc631CXmEJL/r7t2WMubP2CPuuRA+EnDSJrzKckwY4cz8g==",
3152
+ "dependencies": {
3153
+ "commander": "^9.4.0",
3154
+ "dotenv": "^16.0.2",
3155
+ "winston": "^3.8.2"
3156
+ },
3157
+ "bin": {
3158
+ "lambda-local": "build/cli.js"
3159
+ },
3160
+ "engines": {
3161
+ "node": ">=6"
3162
+ }
3163
+ },
3164
+ "node_modules/@skn0tt/lambda-local/node_modules/commander": {
3165
+ "version": "9.5.0",
3166
+ "resolved": "https://registry.npmjs.org/commander/-/commander-9.5.0.tgz",
3167
+ "integrity": "sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==",
3168
+ "engines": {
3169
+ "node": "^12.20.0 || >=14"
3170
+ }
3171
+ },
3213
3172
  "node_modules/@szmarczak/http-timer": {
3214
3173
  "version": "4.0.6",
3215
3174
  "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-4.0.6.tgz",
@@ -6292,6 +6251,17 @@
6292
6251
  "url": "https://github.com/sindresorhus/execa?sponsor=1"
6293
6252
  }
6294
6253
  },
6254
+ "node_modules/execa/node_modules/is-stream": {
6255
+ "version": "2.0.1",
6256
+ "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz",
6257
+ "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==",
6258
+ "engines": {
6259
+ "node": ">=8"
6260
+ },
6261
+ "funding": {
6262
+ "url": "https://github.com/sponsors/sindresorhus"
6263
+ }
6264
+ },
6295
6265
  "node_modules/exit-on-epipe": {
6296
6266
  "version": "1.0.1",
6297
6267
  "resolved": "https://registry.npmjs.org/exit-on-epipe/-/exit-on-epipe-1.0.1.tgz",
@@ -7783,6 +7753,17 @@
7783
7753
  "url": "https://github.com/sponsors/sindresorhus"
7784
7754
  }
7785
7755
  },
7756
+ "node_modules/hasha/node_modules/is-stream": {
7757
+ "version": "2.0.1",
7758
+ "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz",
7759
+ "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==",
7760
+ "engines": {
7761
+ "node": ">=8"
7762
+ },
7763
+ "funding": {
7764
+ "url": "https://github.com/sponsors/sindresorhus"
7765
+ }
7766
+ },
7786
7767
  "node_modules/hasha/node_modules/type-fest": {
7787
7768
  "version": "0.8.1",
7788
7769
  "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz",
@@ -8523,11 +8504,11 @@
8523
8504
  }
8524
8505
  },
8525
8506
  "node_modules/is-stream": {
8526
- "version": "2.0.1",
8527
- "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz",
8528
- "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==",
8507
+ "version": "3.0.0",
8508
+ "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz",
8509
+ "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==",
8529
8510
  "engines": {
8530
- "node": ">=8"
8511
+ "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
8531
8512
  },
8532
8513
  "funding": {
8533
8514
  "url": "https://github.com/sponsors/sindresorhus"
@@ -8844,30 +8825,6 @@
8844
8825
  "resolved": "https://registry.npmjs.org/kuler/-/kuler-2.0.0.tgz",
8845
8826
  "integrity": "sha512-Xq9nH7KlWZmXAtodXDDRE7vs6DU1gTU8zYDHDiWLSip45Egwq3plLHzPn27NgvzL2r1LMPC1vdqh98sQxtqj4A=="
8846
8827
  },
8847
- "node_modules/lambda-local": {
8848
- "version": "2.0.3",
8849
- "resolved": "https://registry.npmjs.org/lambda-local/-/lambda-local-2.0.3.tgz",
8850
- "integrity": "sha512-Vs55gujwdjhPL2VpXEXAWWwxiOYdnVPDsMgwOr9BqC0O1EoSXs1S8TKBmD/ySEnPVRiQfFlABcQgcykF1mkE8Q==",
8851
- "dependencies": {
8852
- "commander": "^9.4.0",
8853
- "dotenv": "^16.0.2",
8854
- "winston": "^3.8.2"
8855
- },
8856
- "bin": {
8857
- "lambda-local": "build/cli.js"
8858
- },
8859
- "engines": {
8860
- "node": ">=6"
8861
- }
8862
- },
8863
- "node_modules/lambda-local/node_modules/commander": {
8864
- "version": "9.5.0",
8865
- "resolved": "https://registry.npmjs.org/commander/-/commander-9.5.0.tgz",
8866
- "integrity": "sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==",
8867
- "engines": {
8868
- "node": "^12.20.0 || >=14"
8869
- }
8870
- },
8871
8828
  "node_modules/latest-version": {
8872
8829
  "version": "7.0.0",
8873
8830
  "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-7.0.0.tgz",
@@ -13081,17 +13038,6 @@
13081
13038
  "url": "https://github.com/sponsors/sindresorhus"
13082
13039
  }
13083
13040
  },
13084
- "node_modules/tempy/node_modules/is-stream": {
13085
- "version": "3.0.0",
13086
- "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz",
13087
- "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==",
13088
- "engines": {
13089
- "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
13090
- },
13091
- "funding": {
13092
- "url": "https://github.com/sponsors/sindresorhus"
13093
- }
13094
- },
13095
13041
  "node_modules/tempy/node_modules/type-fest": {
13096
13042
  "version": "2.19.0",
13097
13043
  "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz",
@@ -14077,6 +14023,17 @@
14077
14023
  "node": ">= 6.4.0"
14078
14024
  }
14079
14025
  },
14026
+ "node_modules/winston/node_modules/is-stream": {
14027
+ "version": "2.0.1",
14028
+ "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz",
14029
+ "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==",
14030
+ "engines": {
14031
+ "node": ">=8"
14032
+ },
14033
+ "funding": {
14034
+ "url": "https://github.com/sponsors/sindresorhus"
14035
+ }
14036
+ },
14080
14037
  "node_modules/word-wrap": {
14081
14038
  "version": "1.2.3",
14082
14039
  "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz",
@@ -14876,11 +14833,6 @@
14876
14833
  "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-5.0.0.tgz",
14877
14834
  "integrity": "sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg=="
14878
14835
  },
14879
- "is-stream": {
14880
- "version": "3.0.0",
14881
- "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz",
14882
- "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA=="
14883
- },
14884
14836
  "lowercase-keys": {
14885
14837
  "version": "3.0.0",
14886
14838
  "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-3.0.0.tgz",
@@ -15206,11 +15158,6 @@
15206
15158
  "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-5.0.0.tgz",
15207
15159
  "integrity": "sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg=="
15208
15160
  },
15209
- "is-stream": {
15210
- "version": "3.0.0",
15211
- "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz",
15212
- "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA=="
15213
- },
15214
15161
  "map-obj": {
15215
15162
  "version": "5.0.2",
15216
15163
  "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-5.0.2.tgz",
@@ -15351,11 +15298,6 @@
15351
15298
  "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-4.0.0.tgz",
15352
15299
  "integrity": "sha512-lJJV/5dYS+RcL8uQdBDW9c9uWFLLBNRyFhnAKXw5tVqLlKZ4RMGZKv+YQ/IA3OhD+RpbJa1LLFM1FQPGyIXvOA=="
15353
15300
  },
15354
- "is-stream": {
15355
- "version": "3.0.0",
15356
- "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz",
15357
- "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA=="
15358
- },
15359
15301
  "json-schema-traverse": {
15360
15302
  "version": "1.0.0",
15361
15303
  "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz",
@@ -15692,11 +15634,6 @@
15692
15634
  "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-3.0.1.tgz",
15693
15635
  "integrity": "sha512-rQLskxnM/5OCldHo+wNXbpVgDn5A17CUoKX+7Sokwaknlq7CdSnphy0W39GU8dw59XiCXmFXDg4fRuckQRKewQ=="
15694
15636
  },
15695
- "is-stream": {
15696
- "version": "3.0.0",
15697
- "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz",
15698
- "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA=="
15699
- },
15700
15637
  "map-obj": {
15701
15638
  "version": "5.0.2",
15702
15639
  "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-5.0.2.tgz",
@@ -15860,11 +15797,6 @@
15860
15797
  "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-3.0.1.tgz",
15861
15798
  "integrity": "sha512-rQLskxnM/5OCldHo+wNXbpVgDn5A17CUoKX+7Sokwaknlq7CdSnphy0W39GU8dw59XiCXmFXDg4fRuckQRKewQ=="
15862
15799
  },
15863
- "is-stream": {
15864
- "version": "3.0.0",
15865
- "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz",
15866
- "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA=="
15867
- },
15868
15800
  "npm-run-path": {
15869
15801
  "version": "5.1.0",
15870
15802
  "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.1.0.tgz",
@@ -15991,11 +15923,6 @@
15991
15923
  "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-4.0.0.tgz",
15992
15924
  "integrity": "sha512-lJJV/5dYS+RcL8uQdBDW9c9uWFLLBNRyFhnAKXw5tVqLlKZ4RMGZKv+YQ/IA3OhD+RpbJa1LLFM1FQPGyIXvOA=="
15993
15925
  },
15994
- "is-stream": {
15995
- "version": "3.0.0",
15996
- "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz",
15997
- "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA=="
15998
- },
15999
15926
  "minimatch": {
16000
15927
  "version": "9.0.0",
16001
15928
  "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.0.tgz",
@@ -16280,6 +16207,23 @@
16280
16207
  }
16281
16208
  }
16282
16209
  },
16210
+ "@skn0tt/lambda-local": {
16211
+ "version": "2.0.3",
16212
+ "resolved": "https://registry.npmjs.org/@skn0tt/lambda-local/-/lambda-local-2.0.3.tgz",
16213
+ "integrity": "sha512-7WZuCWSHeWC9Fh2FTT7lAT6yL5vDZUPxCZ51gIDdCc631CXmEJL/r7t2WMubP2CPuuRA+EnDSJrzKckwY4cz8g==",
16214
+ "requires": {
16215
+ "commander": "^9.4.0",
16216
+ "dotenv": "^16.0.2",
16217
+ "winston": "^3.8.2"
16218
+ },
16219
+ "dependencies": {
16220
+ "commander": {
16221
+ "version": "9.5.0",
16222
+ "resolved": "https://registry.npmjs.org/commander/-/commander-9.5.0.tgz",
16223
+ "integrity": "sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ=="
16224
+ }
16225
+ }
16226
+ },
16283
16227
  "@szmarczak/http-timer": {
16284
16228
  "version": "4.0.6",
16285
16229
  "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-4.0.6.tgz",
@@ -18619,6 +18563,13 @@
18619
18563
  "onetime": "^5.1.2",
18620
18564
  "signal-exit": "^3.0.3",
18621
18565
  "strip-final-newline": "^2.0.0"
18566
+ },
18567
+ "dependencies": {
18568
+ "is-stream": {
18569
+ "version": "2.0.1",
18570
+ "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz",
18571
+ "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg=="
18572
+ }
18622
18573
  }
18623
18574
  },
18624
18575
  "exit-on-epipe": {
@@ -19754,6 +19705,11 @@
19754
19705
  "type-fest": "^0.8.0"
19755
19706
  },
19756
19707
  "dependencies": {
19708
+ "is-stream": {
19709
+ "version": "2.0.1",
19710
+ "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz",
19711
+ "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg=="
19712
+ },
19757
19713
  "type-fest": {
19758
19714
  "version": "0.8.1",
19759
19715
  "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz",
@@ -20263,9 +20219,9 @@
20263
20219
  "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q=="
20264
20220
  },
20265
20221
  "is-stream": {
20266
- "version": "2.0.1",
20267
- "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz",
20268
- "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg=="
20222
+ "version": "3.0.0",
20223
+ "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz",
20224
+ "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA=="
20269
20225
  },
20270
20226
  "is-typedarray": {
20271
20227
  "version": "1.0.0",
@@ -20500,23 +20456,6 @@
20500
20456
  "resolved": "https://registry.npmjs.org/kuler/-/kuler-2.0.0.tgz",
20501
20457
  "integrity": "sha512-Xq9nH7KlWZmXAtodXDDRE7vs6DU1gTU8zYDHDiWLSip45Egwq3plLHzPn27NgvzL2r1LMPC1vdqh98sQxtqj4A=="
20502
20458
  },
20503
- "lambda-local": {
20504
- "version": "2.0.3",
20505
- "resolved": "https://registry.npmjs.org/lambda-local/-/lambda-local-2.0.3.tgz",
20506
- "integrity": "sha512-Vs55gujwdjhPL2VpXEXAWWwxiOYdnVPDsMgwOr9BqC0O1EoSXs1S8TKBmD/ySEnPVRiQfFlABcQgcykF1mkE8Q==",
20507
- "requires": {
20508
- "commander": "^9.4.0",
20509
- "dotenv": "^16.0.2",
20510
- "winston": "^3.8.2"
20511
- },
20512
- "dependencies": {
20513
- "commander": {
20514
- "version": "9.5.0",
20515
- "resolved": "https://registry.npmjs.org/commander/-/commander-9.5.0.tgz",
20516
- "integrity": "sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ=="
20517
- }
20518
- }
20519
- },
20520
20459
  "latest-version": {
20521
20460
  "version": "7.0.0",
20522
20461
  "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-7.0.0.tgz",
@@ -23559,11 +23498,6 @@
23559
23498
  }
23560
23499
  }
23561
23500
  },
23562
- "is-stream": {
23563
- "version": "3.0.0",
23564
- "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz",
23565
- "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA=="
23566
- },
23567
23501
  "type-fest": {
23568
23502
  "version": "2.19.0",
23569
23503
  "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz",
@@ -24304,6 +24238,13 @@
24304
24238
  "stack-trace": "0.0.x",
24305
24239
  "triple-beam": "^1.3.0",
24306
24240
  "winston-transport": "^4.5.0"
24241
+ },
24242
+ "dependencies": {
24243
+ "is-stream": {
24244
+ "version": "2.0.1",
24245
+ "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz",
24246
+ "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg=="
24247
+ }
24307
24248
  }
24308
24249
  },
24309
24250
  "winston-transport": {
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "netlify-cli",
3
3
  "description": "Netlify command line tool",
4
- "version": "15.0.3",
4
+ "version": "15.1.0",
5
5
  "author": "Netlify Inc.",
6
6
  "type": "module",
7
7
  "engines": {
@@ -52,6 +52,7 @@
52
52
  "@netlify/local-functions-proxy": "1.1.1",
53
53
  "@netlify/zip-it-and-ship-it": "9.5.0",
54
54
  "@octokit/rest": "19.0.8",
55
+ "@skn0tt/lambda-local": "^2.0.3",
55
56
  "ansi-escapes": "6.2.0",
56
57
  "ansi-styles": "6.2.1",
57
58
  "ansi-to-html": "0.7.2",
@@ -100,11 +101,11 @@
100
101
  "inquirer": "6.5.2",
101
102
  "inquirer-autocomplete-prompt": "1.4.0",
102
103
  "is-docker": "3.0.0",
104
+ "is-stream": "^3.0.0",
103
105
  "is-wsl": "2.2.0",
104
106
  "isexe": "2.0.0",
105
107
  "jsonwebtoken": "9.0.0",
106
108
  "jwt-decode": "3.1.2",
107
- "lambda-local": "2.0.3",
108
109
  "listr": "0.14.3",
109
110
  "locate-path": "7.2.0",
110
111
  "lodash": "4.17.21",
@@ -1,6 +1,6 @@
1
1
  import { dirname } from 'path'
2
2
 
3
- import lambdaLocal from 'lambda-local'
3
+ import lambdaLocal from '@skn0tt/lambda-local'
4
4
  import winston from 'winston'
5
5
 
6
6
  import detectNetlifyLambdaBuilder from './builders/netlify-lambda.mjs'
@@ -1,6 +1,8 @@
1
1
  // @ts-check
2
2
  import { Buffer } from 'buffer'
3
3
 
4
+ import { isStream } from 'is-stream'
5
+
4
6
  import { chalk, log, NETLIFYDEVERR } from '../../utils/command-helpers.mjs'
5
7
  import renderErrorTemplate from '../render-error-template.mjs'
6
8
 
@@ -47,6 +49,12 @@ export const handleSynchronousFunction = function ({
47
49
  }
48
50
 
49
51
  if (result.body) {
52
+ if (isStream(result.body)) {
53
+ result.body.pipe(response)
54
+
55
+ return
56
+ }
57
+
50
58
  response.write(result.isBase64Encoded ? Buffer.from(result.body, 'base64') : result.body)
51
59
  }
52
60
  response.end()
@@ -97,8 +105,8 @@ const validateLambdaResponse = (lambdaResponse) => {
97
105
  error: `Your function response must have a numerical statusCode. You gave: $ ${lambdaResponse.statusCode}`,
98
106
  }
99
107
  }
100
- if (lambdaResponse.body && typeof lambdaResponse.body !== 'string') {
101
- return { error: `Your function response must have a string body. You gave: ${lambdaResponse.body}` }
108
+ if (lambdaResponse.body && typeof lambdaResponse.body !== 'string' && !isStream(lambdaResponse.body)) {
109
+ return { error: `Your function response must have a string or a stream body. You gave: ${lambdaResponse.body}` }
102
110
  }
103
111
 
104
112
  return {}