samedi 3 juin 2023

Upgrading EmberJS project to Node 16 with yarn results in node-sass conflicts. How to fix it?

I'm trying upgrade to Node 16 enviroment on my emberJS project using yarn.

package.json:

{

  "devDependencies": {
    "@babel/core": "^7.22.1",
    "@babel/plugin-proposal-object-rest-spread": "^7.17.3",
    "@babel/plugin-transform-block-scoping": "^7.21.0",
    "@ember/jquery": "^2.0.0",
    "@ember/optional-features": "^2.0.0",
    "@ember/render-modifiers": "^2.0.5",
    "@glimmer/component": "^1.1.2",
    "@glimmer/tracking": "^1.1.2",
    "@open-event/theme": "^0.2.2",
    "@sentry/browser": "^6.19.7",
    "@sentry/integrations": "^6.19.7",
    "@sentry/tracing": "^6.19.7",
    "@types/ember": "^4.0.0",
    "@types/ember-data": "^3.16.15",
    "@types/ember-data__model": "^3.16.1",
    "@types/ember-qunit": "^3.4.15",
    "@types/ember__test-helpers": "^2.6.1",
    "@types/lodash-es": "^4.17.6",
    "@types/moment": "^2.13.0",
    "@types/qunit": "^2.19.5",
    "@types/rsvp": "^4.0.4",
    "@types/url-parse": "^1.4.8",
    "@typescript-eslint/eslint-plugin": "^5.23.0",
    "@typescript-eslint/parser": "^5.59.8",
    "async": "^3.2.3",
    "babel-eslint": "^10.1.0",
    "broccoli-asset-rev": "^3.0.0",
    "broccoli-persistent-filter": "^3.1.3",
    "croppie": "^2.6.5",
    "css-loader": "^5.2.7",
    "dompurify": "^3.0.3",
    "ember-ajax": "5.1.2",
    "ember-auto-import": "^1.12.2",
    "ember-classic-decorator": "^3.0.0",
    "ember-cli": "~4.12.1",
    "ember-cli-accounting": "^2.1.0",
    "ember-cli-app-version": "^5.0.0",
    "ember-cli-autoprefixer": "2.0.0",
    "ember-cli-babel": "^7.26.11",
    "ember-cli-cjs-transform": "^2.0.0",
    "ember-cli-clipboard": "^0.16.0",
    "ember-cli-code-coverage": "^2.0.0",
    "ember-cli-dependency-checker": "^3.3.1",
    "ember-cli-deploy": "^1.0.0",
    "ember-cli-deploy-build": "^2.0.0",
    "ember-cli-deploy-git": "^1.3.4",
    "ember-cli-deploy-html-manifest": "0.0.6",
    "ember-cli-deploy-revision-data": "^2.0.0",
    "ember-cli-deprecation-workflow": "^2.1.0",
    "ember-cli-document-title-northm": "^1.0.3",
    "ember-cli-dotenv": "^3.1.0",
    "ember-cli-fastboot": "^4.1.1",
    "ember-cli-flash": "^2.2.0",
    "ember-cli-head": "^2.0.0",
    "ember-cli-html-minifier": "^1.1.0",
    "ember-cli-htmlbars": "^6.0.1",
    "ember-cli-ifa": "^0.10.0",
    "ember-cli-inject-live-reload": "^2.1.0",
    "ember-cli-moment-shim": "^3.7.1",
    "ember-cli-nouislider": "^1.2.1",
    "ember-cli-pace": "devotox/ember-cli-pace#master",
    "ember-cli-qunit": "^4.4.0",
    "ember-cli-sass": "^11.0.1",
    "ember-cli-scss-lint": "^2.4.1",
    "ember-cli-shims": "^1.2.0",
    "ember-cli-string-helpers": "^6.1.0",
    "ember-cli-stripe": "^3.0.0",
    "ember-cli-typescript": "^5.2.1",
    "ember-cli-typescript-blueprints": "^3.0.0",
    "ember-cli-uglify": "^3.0.0",
    "ember-composable-helpers": "^5.0.0",
    "ember-config-service": "^1.0.0",
    "ember-cookies": "^0.5.2",
    "ember-data": "3.14.1",
    "ember-data-has-many-query": "^0.3.1",
    "ember-data-storefront": "^0.18.1",
    "ember-decorators": "^6.1.1",
    "ember-drag-drop": "^0.8.2",
    "ember-exam": "^6.1.0",
    "ember-export-application-global": "^2.0.1",
    "ember-fetch": "8.1.1",
    "ember-fullcalendar": "^1.8.0",
    "ember-h-captcha": "^2.5.1",
    "ember-href-to": "5.0.0",
    "ember-infinity": "^2.3.0",
    "ember-l10n": "^4.3.1",
    "ember-leaflet": "^5.0.1",
    "ember-link-action": "2.0.4",
    "ember-load-initializers": "^2.1.2",
    "ember-math-helpers": "^3.0.0",
    "ember-maybe-import-regenerator": "^1.0.0",
    "ember-metrics": "^1.5.0",
    "ember-moment": "^8.0.2",
    "ember-notify": "^6.0.3",
    "ember-power-select": "^5.0.4",
    "ember-print-this": "^2.0.0",
    "ember-qunit": "^4.6.0",
    "ember-resolver": "^8.0.3",
    "ember-route-action-helper": "^2.0.8",
    "ember-router-scroll": "^3.3.7",
    "ember-simple-auth": "^4.2.2",
    "ember-simple-auth-token": "^5.3.0",
    "ember-source": "3.20.3",
    "ember-table": "^2.2.3",
    "ember-template-lint": "^2.21.0",
    "ember-truth-helpers": "^3.1.1",
    "ember-uuid": "^2.1.0",
    "eslint": "^7.32.0",
    "eslint-plugin-ember": "^10.6.1",
    "eslint-plugin-ember-suave": "^2.0.1",
    "eslint-plugin-node": "^11.1.0",
    "fastboot-app-server": "^4.1.1",
    "google-material-color": "^1.3.1",
    "http-status": "^1.6.2",
    "leaflet": "^1.8.0",
    "loader.js": "^4.7.0",
    "lodash-es": "^4.17.21",
    "mini-css-extract-plugin": "^2.7.6",
    "moment-timezone": "^0.5.31",
    "npm-run-all": "^4.1.5",
    "object-to-formdata": "^4.5.1",
    "paypal-checkout": "^4.0.338",
    "pre-commit": "^1.2.2",
    "query-string": "^7.1.1",
    "qunit-dom": "^2.0.0",
    "sass": "^1.62.1",
    "semantic-ui-calendar": "^0.0.8",
    "semantic-ui-ember": "3.0.5",
    "string_decoder": "^1.3.0",
    "style-loader": "^2.0.0",
    "tinyColorPicker": "https://github.com/PitPik/tinyColorPicker#1.1.1",
    "torii": "^0.10.1",
    "typescript": "^5.0.4",
    "url-parse": "^1.5.10",
    "webpack-bundle-analyzer": "^4.5.0",
    "wysihtml": "^0.5.5",
    "xgettext-template": "^4.1.2"
  },
  "engines": {
    "node": ">= 12.x <17",
    "yarn": ">= 1.2.0"
  },
  "private": true,
  "dependencies": {
    "@stripe/stripe-js": "^1.53.0",
    "ua-parser-js": "^1.0.35"
  },
  "ember": {
    "edition": "octane"
  },
  "ember-addon": {
    "paths": [
      "lib/cache-updater",
      "lib/start-title"
    ]
  },
  "fastbootDependencies": [
    "crypto",
    "node-fetch",
    "ua-parser-js"
  ]
}

I run the below command to switch to node 16

nvm use 16

Then run the below command to upgrade all dependencies to node 16

yarn upgrade

Result as below:

1 error generated.
make: *** [Release/obj.target/binding/src/binding.o] Error 1
gyp ERR! build error 
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack     at ChildProcess.onExit ([PROJECT_PATH]/node_modules/node-gyp/lib/build.js:262:23)
gyp ERR! stack     at ChildProcess.emit (node:events:513:28)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (node:internal/child_process:293:12)
gyp ERR! System Darwin 21.6.0
gyp ERR! command "[USERS_PATH]/.nvm/versions/node/v16.20.0/bin/node" "[PROJECT_PATH]/node_modules/node-gyp/bin/node-gyp.js" "rebuild" "--verbose" "--libsass_ext=" "--libsass_cflags=" "--libsass_ldflags=" "--libsass_library="
gyp ERR! cwd [PROJECT_PATH]/node_modules/node-sass
gyp ERR! node -v v16.20.0

Tried to remove node-sass then upgrade, but the problem stays the same.




Aucun commentaire:

Enregistrer un commentaire