From 5584fb1e3b7a29d7ee5d7e43520191081dd10a16 Mon Sep 17 00:00:00 2001 From: Jarek Radosz Date: Fri, 30 Jun 2023 13:01:45 +0200 Subject: [PATCH] DEV: Clean up package.json files (#22349) Motivation: aligning us with JS/Ember practices (runtime deps in `dependencies`, build/dev-time deps in `devDependencies`) 1. Move deps to devDeps where applicable (rule of thumb: it's a devDep unless it's required at runtime by the rails app or it's imported in the addon's code) 2. Remove unused dependencies and add missing ones (in addons) 3. Remove empty `repository` fields 4. Move `engines` and `ember` fields to the bottom --- app/assets/javascripts/admin/package.json | 5 +- .../javascripts/bootstrap-json/package.json | 12 +-- .../javascripts/discourse-common/package.json | 1 - .../javascripts/discourse-hbr/package.json | 1 - .../discourse-plugins/package.json | 9 +- .../discourse-widget-hbs/package.json | 1 - app/assets/javascripts/discourse/package.json | 94 +++++++++---------- .../package.json | 3 +- app/assets/javascripts/package.json | 1 - .../javascripts/pretty-text/package.json | 2 +- .../javascripts/select-kit/package.json | 1 - .../javascripts/truth-helpers/package.json | 1 - app/assets/javascripts/wizard/package.json | 4 +- package.json | 23 ++--- 14 files changed, 70 insertions(+), 88 deletions(-) diff --git a/app/assets/javascripts/admin/package.json b/app/assets/javascripts/admin/package.json index e24bc8ee879..904e67f5925 100644 --- a/app/assets/javascripts/admin/package.json +++ b/app/assets/javascripts/admin/package.json @@ -7,7 +7,6 @@ "keywords": [ "ember-addon" ], - "repository": "", "scripts": { "build": "ember build", "lint:hbs": "ember-template-lint .", @@ -15,10 +14,10 @@ "start": "ember serve" }, "dependencies": { + "discourse-common": "1.0.0", "ember-auto-import": "^2.6.3", "ember-cli-babel": "^7.26.11", - "ember-cli-htmlbars": "^6.2.0", - "xss": "^1.0.14" + "ember-cli-htmlbars": "^6.2.0" }, "devDependencies": { "@babel/core": "^7.22.5", diff --git a/app/assets/javascripts/bootstrap-json/package.json b/app/assets/javascripts/bootstrap-json/package.json index e57ea9e5828..e27a34dc1b3 100644 --- a/app/assets/javascripts/bootstrap-json/package.json +++ b/app/assets/javascripts/bootstrap-json/package.json @@ -14,17 +14,17 @@ "proxy-server-middleware" ] }, - "engines": { - "node": "16.* || >= 18", - "npm": "please-use-yarn", - "yarn": ">= 1.21.1" - }, - "dependencies": { + "devDependencies": { "clean-base-url": "^1.0.0", "discourse-plugins": "1.0.0", "express": "^4.18.2", "html-entities": "^2.4.0", "jsdom": "^22.1.0", "node-fetch": "^3.3.1" + }, + "engines": { + "node": "16.* || >= 18", + "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 37713299c75..2a208c7bca1 100644 --- a/app/assets/javascripts/discourse-common/package.json +++ b/app/assets/javascripts/discourse-common/package.json @@ -7,7 +7,6 @@ "keywords": [ "ember-addon" ], - "repository": "", "scripts": { "build": "ember build", "lint:hbs": "ember-template-lint .", diff --git a/app/assets/javascripts/discourse-hbr/package.json b/app/assets/javascripts/discourse-hbr/package.json index 1aa90d71615..d30b1d57f01 100644 --- a/app/assets/javascripts/discourse-hbr/package.json +++ b/app/assets/javascripts/discourse-hbr/package.json @@ -7,7 +7,6 @@ "keywords": [ "ember-addon" ], - "repository": "", "scripts": { "build": "ember build", "lint:hbs": "ember-template-lint .", diff --git a/app/assets/javascripts/discourse-plugins/package.json b/app/assets/javascripts/discourse-plugins/package.json index e3264cb34d0..c99e0ebbf70 100644 --- a/app/assets/javascripts/discourse-plugins/package.json +++ b/app/assets/javascripts/discourse-plugins/package.json @@ -7,17 +7,16 @@ "keywords": [ "ember-addon" ], - "repository": "", "dependencies": { "discourse-widget-hbs": "1.0.0", "ember-auto-import": "^2.6.3", - "ember-cli": "~5.0.0", "ember-cli-babel": "^7.26.11", - "ember-cli-htmlbars": "^6.2.0", - "webpack": "^5.88.1" + "ember-cli-htmlbars": "^6.2.0" }, "devDependencies": { - "@babel/core": "^7.22.5" + "@babel/core": "^7.22.5", + "ember-cli": "~5.0.0", + "webpack": "^5.88.1" }, "engines": { "node": "16.* || >= 18", diff --git a/app/assets/javascripts/discourse-widget-hbs/package.json b/app/assets/javascripts/discourse-widget-hbs/package.json index 348685a247f..be21906aaba 100644 --- a/app/assets/javascripts/discourse-widget-hbs/package.json +++ b/app/assets/javascripts/discourse-widget-hbs/package.json @@ -7,7 +7,6 @@ "keywords": [ "ember-addon" ], - "repository": "", "scripts": { "build": "ember build", "lint:hbs": "ember-template-lint .", diff --git a/app/assets/javascripts/discourse/package.json b/app/assets/javascripts/discourse/package.json index 5de10761acb..4d46ac2822d 100644 --- a/app/assets/javascripts/discourse/package.json +++ b/app/assets/javascripts/discourse/package.json @@ -3,7 +3,6 @@ "version": "0.0.0", "private": true, "description": "A platform for community discussion. Free, open, simple.", - "repository": "", "license": "GPL-2.0-only", "author": "Discourse", "directories": { @@ -17,76 +16,49 @@ "postinstall": "yarn --silent --cwd .. patch-package" }, "dependencies": { + "@glimmer/syntax": "^0.84.3", + "discourse-hbr": "1.0.0", + "discourse-widget-hbs": "1.0.0", + "ember-source": "~3.28.12", + "handlebars": "^4.7.7", + "markdown-it": "^13.0.1", + "pretty-text": "1.0.0" + }, + "devDependencies": { + "@babel/core": "^7.22.5", + "@babel/standalone": "^7.22.5", "@discourse/backburner.js": "^2.7.1-0", "@discourse/itsatrap": "^2.0.10", "@ember-compat/tracked-built-ins": "^0.9.1", "@ember/jquery": "^2.0.0", "@ember/legacy-built-in-components": "^0.4.2", + "@ember/optional-features": "^2.0.0", "@ember/render-modifiers": "^2.1.0", "@ember/string": "^3.1.1", "@ember/test-helpers": "^2.9.4", "@glimmer/component": "^1.1.2", - "@glimmer/syntax": "^0.84.3", "@glimmer/tracking": "^1.1.2", "@popperjs/core": "^2.11.8", - "a11y-dialog": "7.5.2", - "admin": "1.0.0", - "bootstrap": "3.4.1", - "bootstrap-json": "1.0.0", - "deepmerge": "^4.3.1", - "dialog-holder": "1.0.0", - "discourse-common": "1.0.0", - "discourse-hbr": "1.0.0", - "discourse-plugins": "1.0.0", - "discourse-widget-hbs": "1.0.0", - "ember-buffered-proxy": "^2.1.1", - "ember-cached-decorator-polyfill": "^1.0.1", - "ember-decorators": "^6.1.1", - "ember-exam": "^8.0.0", - "ember-load-initializers": "^2.1.1", - "ember-modifier": "^4.1.0", - "ember-on-resize-modifier": "^1.1.0", - "ember-production-deprecations": "1.0.0", - "ember-source": "~3.28.12", - "ember-test-selectors": "^6.0.0", - "handlebars": "^4.7.7", - "html-entities": "^2.4.0", - "js-yaml": "^4.1.0", - "jsdom": "^22.1.0", - "markdown-it": "^13.0.1", - "message-bus-client": "^4.3.7", - "messageformat": "0.1.5", - "pretty-text": "1.0.0", - "select-kit": "1.0.0", - "tippy.js": "^6.3.7", - "util": "^0.12.5", - "virtual-dom": "^2.1.1", - "wizard": "1.0.0", - "xss": "^1.0.14" - }, - "engines": { - "node": "16.* || >= 18", - "npm": "please-use-yarn", - "yarn": ">= 1.21.1" - }, - "ember": { - "edition": "default" - }, - "devDependencies": { - "@babel/core": "^7.22.5", - "@babel/standalone": "^7.22.5", - "@ember/optional-features": "^2.0.0", "@uppy/aws-s3": "3.2.0", "@uppy/aws-s3-multipart": "3.1.3", "@uppy/core": "3.0.4", "@uppy/drop-target": "2.0.1", "@uppy/utils": "5.4.0", "@uppy/xhr-upload": "3.1.1", + "a11y-dialog": "7.5.2", + "admin": "1.0.0", "babel-import-util": "^1.3.0", "babel-plugin-ember-template-compilation": "^2.0.0", + "bootstrap": "3.4.1", + "bootstrap-json": "1.0.0", "broccoli-asset-rev": "^3.0.0", + "deepmerge": "^4.3.1", + "dialog-holder": "1.0.0", + "discourse-common": "1.0.0", + "discourse-plugins": "1.0.0", "ember-auto-import": "^2.6.3", "ember-auto-import-chunks-json-generator": "^1.1.0", + "ember-buffered-proxy": "^2.1.1", "ember-cached-decorator-polyfill": "^1.0.1", "ember-cli": "~5.0.0", "ember-cli-app-version": "^6.0.1", @@ -97,26 +69,50 @@ "ember-cli-progress-ci": "1.0.0", "ember-cli-sri": "^2.1.1", "ember-cli-terser": "^4.0.2", + "ember-decorators": "^6.1.1", "ember-exam": "^8.0.0", "ember-functions-as-helper-polyfill": "^2.1.1", + "ember-load-initializers": "^2.1.1", + "ember-modifier": "^4.1.0", + "ember-on-resize-modifier": "^1.1.0", + "ember-production-deprecations": "1.0.0", "ember-qunit": "^6.2.0", + "ember-test-selectors": "^6.0.0", "eslint": "^8.43.0", "eslint-plugin-qunit": "^8.0.0", + "html-entities": "^2.4.0", "imports-loader": "^4.0.1", + "js-yaml": "^4.1.0", + "jsdom": "^22.1.0", "loader.js": "^4.7.0", + "message-bus-client": "^4.3.7", + "messageformat": "0.1.5", "pretender": "^3.4.7", "qunit": "^2.19.4", "qunit-dom": "^2.0.0", "sass": "^1.63.6", + "select-kit": "1.0.0", "sinon": "^15.2.0", "source-map": "^0.7.4", "terser": "^5.18.2", + "tippy.js": "^6.3.7", + "util": "^0.12.5", + "virtual-dom": "^2.1.1", "webpack": "^5.88.1", + "wizard": "1.0.0", "workbox-cacheable-response": "^7.0.0", "workbox-core": "^7.0.0", "workbox-expiration": "^7.0.0", "workbox-routing": "^7.0.0", "workbox-strategies": "^7.0.0", "workbox-sw": "^7.0.0" + }, + "engines": { + "node": "16.* || >= 18", + "npm": "please-use-yarn", + "yarn": ">= 1.21.1" + }, + "ember": { + "edition": "default" } } diff --git a/app/assets/javascripts/ember-production-deprecations/package.json b/app/assets/javascripts/ember-production-deprecations/package.json index 14e78165962..7482baa6f5e 100644 --- a/app/assets/javascripts/ember-production-deprecations/package.json +++ b/app/assets/javascripts/ember-production-deprecations/package.json @@ -10,6 +10,5 @@ "ember-addon": { "after": "ember-cli-babel", "before": "ember-cli-deprecation-workflow" - }, - "dependencies": {} + } } diff --git a/app/assets/javascripts/package.json b/app/assets/javascripts/package.json index 161abbf9897..0a5daab0f84 100644 --- a/app/assets/javascripts/package.json +++ b/app/assets/javascripts/package.json @@ -24,7 +24,6 @@ "**/babel-plugin-ember-template-compilation": "2.0.0", "**/unset-value": "2.0.1" }, - "dependencies": {}, "devDependencies": { "patch-package": "^7.0.0", "postinstall-postinstall": "^2.1.0" diff --git a/app/assets/javascripts/pretty-text/package.json b/app/assets/javascripts/pretty-text/package.json index 4a3ff9ca356..979d5aeabc9 100644 --- a/app/assets/javascripts/pretty-text/package.json +++ b/app/assets/javascripts/pretty-text/package.json @@ -7,7 +7,6 @@ "keywords": [ "ember-addon" ], - "repository": "", "scripts": { "build": "ember build", "lint:hbs": "ember-template-lint .", @@ -15,6 +14,7 @@ "start": "ember serve" }, "dependencies": { + "discourse-common": "1.0.0", "ember-auto-import": "^2.6.3", "ember-cli-babel": "^7.26.11", "ember-cli-htmlbars": "^6.2.0", diff --git a/app/assets/javascripts/select-kit/package.json b/app/assets/javascripts/select-kit/package.json index f030ffc206b..199544c5091 100644 --- a/app/assets/javascripts/select-kit/package.json +++ b/app/assets/javascripts/select-kit/package.json @@ -7,7 +7,6 @@ "keywords": [ "ember-addon" ], - "repository": "", "scripts": { "build": "ember build", "lint:hbs": "ember-template-lint .", diff --git a/app/assets/javascripts/truth-helpers/package.json b/app/assets/javascripts/truth-helpers/package.json index 372cf362f01..c9340e7ce2e 100644 --- a/app/assets/javascripts/truth-helpers/package.json +++ b/app/assets/javascripts/truth-helpers/package.json @@ -7,7 +7,6 @@ "keywords": [ "ember-addon" ], - "repository": "", "scripts": { "build": "ember build", "lint:hbs": "ember-template-lint .", diff --git a/app/assets/javascripts/wizard/package.json b/app/assets/javascripts/wizard/package.json index 1b397ca5d49..3a0c3267730 100644 --- a/app/assets/javascripts/wizard/package.json +++ b/app/assets/javascripts/wizard/package.json @@ -7,7 +7,6 @@ "keywords": [ "ember-addon" ], - "repository": "", "scripts": { "build": "ember build", "lint:hbs": "ember-template-lint .", @@ -17,8 +16,7 @@ "dependencies": { "ember-auto-import": "^2.6.3", "ember-cli-babel": "^7.26.11", - "ember-cli-htmlbars": "^6.2.0", - "xss": "^1.0.14" + "ember-cli-htmlbars": "^6.2.0" }, "devDependencies": { "@babel/core": "^7.22.5", diff --git a/package.json b/package.json index 9b2cfe69086..57c14fbdbc9 100644 --- a/package.json +++ b/package.json @@ -1,30 +1,22 @@ { "name": "discourse", "version": "1.0.0", - "main": "index.js", - "repository": "git@github.com:discourse/discourse.git", + "repository": "https://github.com/discourse/discourse", "author": "Discourse", "license": "GPL-2.0-only", - "dependencies": { + "devDependencies": { "@discourse/moment-timezone-names-translations": "^1.0.0", "@fortawesome/fontawesome-free": "5.15.4", "@highlightjs/cdn-assets": "11.8.0", "@json-editor/json-editor": "2.10.0", + "@mixer/parallel-prettier": "^2.0.3", "ace-builds": "1.4.13", "chart.js": "3.5.1", "chartjs-plugin-datalabels": "2.2.0", - "concurrently": "^8.0.1", - "diffhtml": "1.0.0-beta.20", - "magnific-popup": "1.1.0", - "moment": "2.29.4", - "moment-timezone": "0.5.43", - "pikaday": "1.8.2", - "squoosh": "discourse/squoosh#dc9649d" - }, - "devDependencies": { - "@mixer/parallel-prettier": "^2.0.3", "chrome-launcher": "^0.15.1", "chrome-remote-interface": "^0.31.3", + "concurrently": "^8.0.1", + "diffhtml": "1.0.0-beta.20", "ember-template-lint": "5.10.3", "eslint": "^8.37.0", "eslint-config-discourse": "^3.5.0", @@ -35,7 +27,12 @@ "lint-to-the-future": "^2.0.0", "lint-to-the-future-ember-template": "^1.1.1", "lint-to-the-future-eslint": "^2.0.1", + "magnific-popup": "1.1.0", + "moment": "2.29.4", + "moment-timezone": "0.5.43", + "pikaday": "1.8.2", "puppeteer-core": "^13.7.0", + "squoosh": "discourse/squoosh#dc9649d", "tidy-jsdoc": "^1.4.1" }, "scripts": {