@@ -283,6 +283,11 @@ nvm_install_latest_npm() {
283
283
if [ $NVM_IS_13_OR_ABOVE -eq 1 ] && nvm_version_greater_than_or_equal_to " ${NODE_VERSION} " 14.15.0; then
284
284
NVM_IS_14_LTS_OR_ABOVE=1
285
285
fi
286
+ local NVM_IS_14_17_OR_ABOVE
287
+ NVM_IS_14_17_OR_ABOVE=0
288
+ if [ $NVM_IS_14_LTS_OR_ABOVE -eq 1 ] && nvm_version_greater_than_or_equal_to " ${NODE_VERSION} " 14.17.0; then
289
+ NVM_IS_14_17_OR_ABOVE=1
290
+ fi
286
291
local NVM_IS_15_OR_ABOVE
287
292
NVM_IS_15_OR_ABOVE=0
288
293
if [ $NVM_IS_14_LTS_OR_ABOVE -eq 1 ] && nvm_version_greater_than_or_equal_to " ${NODE_VERSION} " 15.0.0; then
@@ -293,6 +298,21 @@ nvm_install_latest_npm() {
293
298
if [ $NVM_IS_15_OR_ABOVE -eq 1 ] && nvm_version_greater_than_or_equal_to " ${NODE_VERSION} " 16.0.0; then
294
299
NVM_IS_16_OR_ABOVE=1
295
300
fi
301
+ local NVM_IS_16_LTS_OR_ABOVE
302
+ NVM_IS_16_LTS_OR_ABOVE=0
303
+ if [ $NVM_IS_16_OR_ABOVE -eq 1 ] && nvm_version_greater_than_or_equal_to " ${NODE_VERSION} " 16.13.0; then
304
+ NVM_IS_16_LTS_OR_ABOVE=1
305
+ fi
306
+ local NVM_IS_17_OR_ABOVE
307
+ NVM_IS_17_OR_ABOVE=0
308
+ if [ $NVM_IS_16_LTS_OR_ABOVE -eq 1 ] && nvm_version_greater_than_or_equal_to " ${NODE_VERSION} " 17.0.0; then
309
+ NVM_IS_17_OR_ABOVE=1
310
+ fi
311
+ local NVM_IS_18_OR_ABOVE
312
+ NVM_IS_18_OR_ABOVE=0
313
+ if [ $NVM_IS_17_OR_ABOVE -eq 1 ] && nvm_version_greater_than_or_equal_to " ${NODE_VERSION} " 18.0.0; then
314
+ NVM_IS_18_OR_ABOVE=1
315
+ fi
296
316
297
317
if [ $NVM_IS_4_4_OR_BELOW -eq 1 ] || {
298
318
[ $NVM_IS_5_OR_ABOVE -eq 1 ] && nvm_version_greater 5.10.0 " ${NODE_VERSION} " ; \
@@ -321,6 +341,14 @@ nvm_install_latest_npm() {
321
341
; then
322
342
nvm_echo ' * `npm` `v7.x` is the last version that works on `node` `v13`, `v15`, below `v12.13`, or `v14.0` - `v14.15`'
323
343
$NVM_NPM_CMD install -g npm@7
344
+ elif \
345
+ { [ $NVM_IS_12_LTS_OR_ABOVE -eq 1 ] && [ $NVM_IS_13_OR_ABOVE -eq 0 ]; } \
346
+ || { [ $NVM_IS_14_LTS_OR_ABOVE -eq 1 ] && [ $NVM_IS_14_17_OR_ABOVE -eq 0 ]; } \
347
+ || { [ $NVM_IS_16_OR_ABOVE -eq 1 ] && [ $NVM_IS_16_LTS_OR_ABOVE -eq 0 ]; } \
348
+ || { [ $NVM_IS_17_OR_ABOVE -eq 1 ] && [ $NVM_IS_18_OR_ABOVE -eq 0 ]; } \
349
+ ; then
350
+ nvm_echo ' * `npm` `v8.x` is the last version that works on `node` `v12`, `v14.13` - `v14.16`, or `v16.0` - `v16.12`'
351
+ $NVM_NPM_CMD install -g npm@8
324
352
else
325
353
nvm_echo ' * Installing latest `npm`; if this does not work on your node version, please report a bug!'
326
354
$NVM_NPM_CMD install -g npm
0 commit comments