DEV: Update supported node versions (#15073)

DEV: Update supported node versions (#15073)

13 and 15 are no longer supported by node, and issues with discourse dependencies prevent us from using 17. (for now)

diff --git a/app/assets/javascripts/admin/package.json b/app/assets/javascripts/admin/package.json
index 199c83d..2d26ca5 100644
--- a/app/assets/javascripts/admin/package.json
+++ b/app/assets/javascripts/admin/package.json
@@ -46,7 +46,7 @@
     "loader.js": "^4.7.0"
   },
   "engines": {
-    "node": ">= 12.*",
+    "node": "12.* || 14.* || 16.*",
     "npm": "please-use-yarn",
     "yarn": ">= 1.21.1"
   },
diff --git a/app/assets/javascripts/discourse-common/package.json b/app/assets/javascripts/discourse-common/package.json
index 61de386..f804413 100644
--- a/app/assets/javascripts/discourse-common/package.json
+++ b/app/assets/javascripts/discourse-common/package.json
@@ -46,7 +46,7 @@
     "loader.js": "^4.7.0"
   },
   "engines": {
-    "node": ">= 12.*",
+    "node": "12.* || 14.* || 16.*",
     "npm": "please-use-yarn",
     "yarn": ">= 1.21.1"
   },
diff --git a/app/assets/javascripts/discourse-hbr/package.json b/app/assets/javascripts/discourse-hbr/package.json
index f443450..41517f4 100644
--- a/app/assets/javascripts/discourse-hbr/package.json
+++ b/app/assets/javascripts/discourse-hbr/package.json
@@ -46,7 +46,7 @@
     "loader.js": "^4.7.0"
   },
   "engines": {
-    "node": ">= 12.*",
+    "node": "12.* || 14.* || 16.*",
     "npm": "please-use-yarn",
     "yarn": ">= 1.21.1"
   },
diff --git a/app/assets/javascripts/discourse-widget-hbs/package.json b/app/assets/javascripts/discourse-widget-hbs/package.json
index 4787f26..fae0916 100644
--- a/app/assets/javascripts/discourse-widget-hbs/package.json
+++ b/app/assets/javascripts/discourse-widget-hbs/package.json
@@ -46,7 +46,7 @@
     "loader.js": "^4.7.0"
   },
   "engines": {
-    "node": ">= 12.*",
+    "node": "12.* || 14.* || 16.*",
     "npm": "please-use-yarn",
     "yarn": ">= 1.21.1"
   },
diff --git a/app/assets/javascripts/discourse/lib/bootstrap-json/package.json b/app/assets/javascripts/discourse/lib/bootstrap-json/package.json
index 50d5b34..5c86ee7 100644
--- a/app/assets/javascripts/discourse/lib/bootstrap-json/package.json
+++ b/app/assets/javascripts/discourse/lib/bootstrap-json/package.json
@@ -11,7 +11,7 @@
     ]
   },
   "engines": {
-    "node": ">= 12.*",
+    "node": "12.* || 14.* || 16.*",
     "npm": "please-use-yarn",
     "yarn": ">= 1.21.1"
   }
diff --git a/app/assets/javascripts/discourse/package.json b/app/assets/javascripts/discourse/package.json
index 9bfd195..550b159 100644
--- a/app/assets/javascripts/discourse/package.json
+++ b/app/assets/javascripts/discourse/package.json
@@ -66,7 +66,7 @@
     "virtual-dom": "^2.1.1"
   },
   "engines": {
-    "node": ">= 12.*",
+    "node": "12.* || 14.* || 16.*",
     "npm": "please-use-yarn",
     "yarn": ">= 1.21.1"
   },
diff --git a/app/assets/javascripts/pretty-text/package.json b/app/assets/javascripts/pretty-text/package.json
index f2823ac..1ec1e8c 100644
--- a/app/assets/javascripts/pretty-text/package.json
+++ b/app/assets/javascripts/pretty-text/package.json
@@ -45,7 +45,7 @@
     "loader.js": "^4.7.0"
   },
   "engines": {
-    "node": ">= 12.*",
+    "node": "12.* || 14.* || 16.*",
     "npm": "please-use-yarn",
     "yarn": ">= 1.21.1"
   },
diff --git a/app/assets/javascripts/select-kit/package.json b/app/assets/javascripts/select-kit/package.json
index 67f0723..3dd5bf0 100644
--- a/app/assets/javascripts/select-kit/package.json
+++ b/app/assets/javascripts/select-kit/package.json
@@ -44,7 +44,7 @@
     "loader.js": "^4.7.0"
   },
   "engines": {
-    "node": ">= 12.*",
+    "node": "12.* || 14.* || 16.*",
     "npm": "please-use-yarn",
     "yarn": ">= 1.21.1"
   },
diff --git a/app/assets/javascripts/truth-helpers/package.json b/app/assets/javascripts/truth-helpers/package.json
index 68668bf..36d5010 100644
--- a/app/assets/javascripts/truth-helpers/package.json
+++ b/app/assets/javascripts/truth-helpers/package.json
@@ -44,7 +44,7 @@
     "loader.js": "^4.7.0"
   },
   "engines": {
-    "node": ">= 12.*",
+    "node": "12.* || 14.* || 16.*",
     "npm": "please-use-yarn",
     "yarn": ">= 1.21.1"
   },
diff --git a/bin/ember-cli b/bin/ember-cli
index a646b63..7138766 100755
--- a/bin/ember-cli
+++ b/bin/ember-cli
@@ -46,7 +46,7 @@ if !args.include?("test") && !args.include?("--proxy")
   args << PROXY
 end
 
-system "yarn -s install --cwd #{yarn_dir}"
+exit 1 if !system "yarn -s install --cwd #{yarn_dir}"
 
 if ARGV.include?("-u") || ARGV.include?("--unicorn")
   unicorn_env = { "DISCOURSE_PORT" => ENV["DISCOURSE_PORT"] || "4200" }
@@ -72,7 +72,6 @@ if ARGV.include?("-u") || ARGV.include?("--unicorn")
   end
 
   Process.wait(unicorn_pid)
-
 else
   exec "yarn", *args.to_a.flatten
 end
diff --git a/package.json b/package.json
index 316c1f6..ac6869d 100644
--- a/package.json
+++ b/package.json
@@ -66,7 +66,7 @@
     "postinstall": "yarn --cwd app/assets/javascripts/discourse"
   },
   "engines": {
-    "node": ">= 12.*",
+    "node": "12.* || 14.* || 16.*",
     "npm": "please-use-yarn",
     "yarn": ">= 1.21.1"
   }

GitHub sha: c75224e3d98caaabf86fab10e5cb70780a05796e

This commit appears in #15073 which was approved by eviltrout. It was merged by CvX.