Browse Source

Do not use npm (#6656)

Both of yarn and npm are used in Mastodon, but the combined usage requires
a redundant dependency and may lead to data inconsistency.

Considering that yarn has autoclean feature which npm does not have,
this change replaces all npm usage with yarn.

This change requires documentation update. Most notably, the following
command must be executed before assets precompilation if any system
dependency of node-sass has changed:

yarn install --force --pure-lockfile
pull/4/head
Akihiko Odaki 4 years ago
committed by Eugen Rochko
parent
commit
81cefc1913
3 changed files with 3 additions and 5 deletions
  1. +0
    -1
      Dockerfile
  2. +1
    -1
      docker-compose.yml
  3. +2
    -3
      package.json

+ 0
- 1
Dockerfile View File

@ -38,7 +38,6 @@ RUN apk -U upgrade \
libidn \
libpq \
nodejs \
nodejs-npm \
protobuf \
su-exec \
tini \

+ 1
- 1
docker-compose.yml View File

@ -55,7 +55,7 @@ services:
image: gargron/mastodon
restart: always
env_file: .env.production
command: npm run start
command: yarn start
networks:
- external_network
- internal_network

+ 2
- 3
package.json View File

@ -10,10 +10,9 @@
"build:production": "cross-env RAILS_ENV=production ./bin/webpack",
"manage:translations": "node ./config/webpack/translationRunner.js",
"start": "node ./streaming/index.js",
"test": "npm run test:lint && npm run test:jest",
"test": "yarn run test:lint && yarn run test:jest",
"test:lint": "eslint -c .eslintrc.yml --ext=js app/javascript/ config/webpack/ streaming/",
"test:jest": "cross-env NODE_ENV=test jest --coverage",
"postinstall": "npm rebuild node-sass"
"test:jest": "cross-env NODE_ENV=test jest --coverage"
},
"repository": {
"type": "git",

Loading…
Cancel
Save