Browse Source

Format JSON and YAML using Prettier (#17823)

* Format JSON and YAML using Prettier

* Add prettier to devDep
closed-social-glitch-2
Yamagishi Kazutoshi 2 years ago
committed by GitHub
parent
commit
584d8b977b
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
17 changed files with 203 additions and 129 deletions
  1. +5
    -5
      .codeclimate.yml
  2. +10
    -10
      .devcontainer/devcontainer.json
  3. +2
    -3
      .devcontainer/docker-compose.yml
  4. +2
    -2
      .github/dependabot.yml
  5. +2
    -2
      .github/workflows/build-image.yml
  6. +20
    -20
      .github/workflows/check-i18n.yml
  7. +78
    -0
      .prettierignore
  8. +3
    -0
      .prettierrc.js
  9. +11
    -11
      .rubocop.yml
  10. +1
    -4
      app.json
  11. +12
    -20
      boxfile.yml
  12. +0
    -1
      config/database.yml
  13. +2
    -2
      config/i18n-tasks.yml
  14. +45
    -44
      docker-compose.yml
  15. +4
    -1
      package.json
  16. +1
    -4
      scalingo.json
  17. +5
    -0
      yarn.lock

+ 5
- 5
.codeclimate.yml View File

@ -1,4 +1,4 @@
version: "2";
version: '2';
checks: checks:
argument-count: argument-count:
enabled: false enabled: false
@ -34,8 +34,8 @@ plugins:
sass-lint: sass-lint:
enabled: true enabled: true
exclude_patterns: exclude_patterns:
- spec/
- vendor/asset/
- spec/
- vendor/asset/
- app/javascript/mastodon/locales/**/*.json
- config/locales/**/*.yml
- app/javascript/mastodon/locales/**/*.json
- config/locales/**/*.yml

+ 10
- 10
.devcontainer/devcontainer.json View File

@ -5,22 +5,22 @@
"workspaceFolder": "/workspaces/mastodon", "workspaceFolder": "/workspaces/mastodon",
// Set *default* container specific settings.json values on container create. // Set *default* container specific settings.json values on container create.
"settings": {},
"settings": {},
// Add the IDs of extensions you want installed when the container is created. // Add the IDs of extensions you want installed when the container is created.
"extensions": [
"extensions": [
"EditorConfig.EditorConfig", "EditorConfig.EditorConfig",
"dbaeumer.vscode-eslint", "dbaeumer.vscode-eslint",
"rebornix.Ruby"
],
"rebornix.Ruby"
],
// Use 'forwardPorts' to make a list of ports inside the container available locally. // Use 'forwardPorts' to make a list of ports inside the container available locally.
// This can be used to network with other containers or the host.
"forwardPorts": [3000, 4000],
// This can be used to network with other containers or the host.
"forwardPorts": [3000, 4000],
// Use 'postCreateCommand' to run commands after the container is created.
"postCreateCommand": "bundle install --path vendor/bundle && yarn install && ./bin/rails db:setup",
// Use 'postCreateCommand' to run commands after the container is created.
"postCreateCommand": "bundle install --path vendor/bundle && yarn install && ./bin/rails db:setup",
// Comment out to connect as root instead. More info: https://aka.ms/vscode-remote/containers/non-root.
"remoteUser": "vscode"
// Comment out to connect as root instead. More info: https://aka.ms/vscode-remote/containers/non-root.
"remoteUser": "vscode"
} }

+ 2
- 3
.devcontainer/docker-compose.yml View File

@ -9,9 +9,9 @@ services:
# Update 'VARIANT' to pick a version of Ruby: 3, 3.1, 3.0, 2, 2.7, 2.6 # Update 'VARIANT' to pick a version of Ruby: 3, 3.1, 3.0, 2, 2.7, 2.6
# Append -bullseye or -buster to pin to an OS version. # Append -bullseye or -buster to pin to an OS version.
# Use -bullseye variants on local arm64/Apple Silicon. # Use -bullseye variants on local arm64/Apple Silicon.
VARIANT: "3.0-bullseye";
VARIANT: '3.0-bullseye';
# Optional Node.js version to install # Optional Node.js version to install
NODE_VERSION: "14";
NODE_VERSION: '14';
volumes: volumes:
- ..:/workspaces/mastodon:cached - ..:/workspaces/mastodon:cached
environment: environment:
@ -34,7 +34,6 @@ services:
- internal_network - internal_network
user: vscode user: vscode
db: db:
image: postgres:14-alpine image: postgres:14-alpine
restart: unless-stopped restart: unless-stopped

+ 2
- 2
.github/dependabot.yml View File

@ -6,7 +6,7 @@
version: 2 version: 2
updates: updates:
- package-ecosystem: npm - package-ecosystem: npm
directory: "/";
directory: '/';
schedule: schedule:
interval: weekly interval: weekly
open-pull-requests-limit: 99 open-pull-requests-limit: 99
@ -14,7 +14,7 @@ updates:
- dependency-type: direct - dependency-type: direct
- package-ecosystem: bundler - package-ecosystem: bundler
directory: "/";
directory: '/';
schedule: schedule:
interval: weekly interval: weekly
open-pull-requests-limit: 99 open-pull-requests-limit: 99

+ 2
- 2
.github/workflows/build-image.yml View File

@ -3,9 +3,9 @@ on:
workflow_dispatch: workflow_dispatch:
push: push:
branches: branches:
- "main";
- 'main';
tags: tags:
- "*";
- '*';
pull_request: pull_request:
paths: paths:
- .github/workflows/build-image.yml - .github/workflows/build-image.yml

+ 20
- 20
.github/workflows/check-i18n.yml View File

@ -2,9 +2,9 @@ name: Check i18n
on: on:
push: push:
branches: [ main ]
branches: [main]
pull_request: pull_request:
branches: [ main ]
branches: [main]
env: env:
RAILS_ENV: test RAILS_ENV: test
@ -14,21 +14,21 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@v2
- name: Install system dependencies
run: |
sudo apt-get update
sudo apt-get install -y libicu-dev libidn11-dev
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: '3.0'
bundler-cache: true
- name: Check locale file normalization
run: bundle exec i18n-tasks check-normalized
- name: Check for unused strings
run: bundle exec i18n-tasks unused -l en
- name: Check for wrong string interpolations
run: bundle exec i18n-tasks check-consistent-interpolations
- name: Check that all required locale files exist
run: bundle exec rake repo:check_locales_files
- uses: actions/checkout@v2
- name: Install system dependencies
run: |
sudo apt-get update
sudo apt-get install -y libicu-dev libidn11-dev
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: '3.0'
bundler-cache: true
- name: Check locale file normalization
run: bundle exec i18n-tasks check-normalized
- name: Check for unused strings
run: bundle exec i18n-tasks unused -l en
- name: Check for wrong string interpolations
run: bundle exec i18n-tasks check-consistent-interpolations
- name: Check that all required locale files exist
run: bundle exec rake repo:check_locales_files

+ 78
- 0
.prettierignore View File

@ -0,0 +1,78 @@
# See https://help.github.com/articles/ignoring-files for more about ignoring files.
#
# If you find yourself ignoring temporary files generated by your text editor
# or operating system, you probably want to add a global ignore instead:
# git config --global core.excludesfile '~/.gitignore_global'
# Ignore bundler config and downloaded libraries.
/.bundle
/vendor/bundle
# Ignore the default SQLite database.
/db/*.sqlite3
/db/*.sqlite3-journal
# Ignore all logfiles and tempfiles.
.eslintcache
/log/*
!/log/.keep
/tmp
/coverage
/public/system
/public/assets
/public/packs
/public/packs-test
.env
.env.production
.env.development
/node_modules/
/build/
# Ignore Vagrant files
.vagrant/
# Ignore Capistrano customizations
/config/deploy/*
# Ignore IDE files
.vscode/
.idea/
# Ignore postgres + redis + elasticsearch volume optionally created by docker-compose
/postgres
/postgres14
/redis
/elasticsearch
# ignore Helm dependency charts
/chart/charts/*.tgz
# Ignore Apple files
.DS_Store
# Ignore vim files
*~
*.swp
# Ignore npm debug log
npm-debug.log
# Ignore yarn log files
yarn-error.log
yarn-debug.log
# Ignore vagrant log files
*-cloudimg-console.log
# Ignore Docker option files
docker-compose.override.yml
# Ignore Helm files
/chart
# Ignore emoji map file
/app/javascript/mastodon/features/emoji/emoji_map.json
# Ignore locale files
/app/javascript/mastodon/locales
/config/locales

+ 3
- 0
.prettierrc.js View File

@ -0,0 +1,3 @@
module.exports = {
singleQuote: true
}

+ 11
- 11
.rubocop.yml View File

@ -5,17 +5,17 @@ AllCops:
TargetRubyVersion: 2.5 TargetRubyVersion: 2.5
NewCops: disable NewCops: disable
Exclude: Exclude:
- 'spec/**/*'
- 'db/**/*'
- 'app/views/**/*'
- 'config/**/*'
- 'bin/*'
- 'Rakefile'
- 'node_modules/**/*'
- 'Vagrantfile'
- 'vendor/**/*'
- 'lib/json_ld/*'
- 'lib/templates/**/*'
- 'spec/**/*'
- 'db/**/*'
- 'app/views/**/*'
- 'config/**/*'
- 'bin/*'
- 'Rakefile'
- 'node_modules/**/*'
- 'Vagrantfile'
- 'vendor/**/*'
- 'lib/json_ld/*'
- 'lib/templates/**/*'
Bundler/OrderedGems: Bundler/OrderedGems:
Enabled: false Enabled: false

+ 1
- 4
app.json View File

@ -95,8 +95,5 @@
"scripts": { "scripts": {
"postdeploy": "bundle exec rails db:migrate && bundle exec rails db:seed" "postdeploy": "bundle exec rails db:migrate && bundle exec rails db:seed"
}, },
"addons": [
"heroku-postgresql",
"heroku-redis"
]
"addons": ["heroku-postgresql", "heroku-redis"]
} }

+ 12
- 20
boxfile.yml View File

@ -43,20 +43,19 @@ run.config:
fs_watch: true fs_watch: true
deploy.config: deploy.config:
extra_steps: extra_steps:
- NODE_ENV=production bundle exec rake assets:precompile - NODE_ENV=production bundle exec rake assets:precompile
transform: transform:
- "envsubst < /app/.env.nanobox > /app/.env.production";
- 'envsubst < /app/.env.nanobox > /app/.env.production';
- |- - |-
if [ -z "$LOCAL_DOMAIN" ]
then
. /app/.env.production
export LOCAL_DOMAIN
fi
erb /app/nanobox/nginx-web.conf.erb > /app/nanobox/nginx-web.conf
erb /app/nanobox/nginx-stream.conf.erb > /app/nanobox/nginx-stream.conf
if [ -z "$LOCAL_DOMAIN" ]
then
. /app/.env.production
export LOCAL_DOMAIN
fi
erb /app/nanobox/nginx-web.conf.erb > /app/nanobox/nginx-web.conf
erb /app/nanobox/nginx-stream.conf.erb > /app/nanobox/nginx-stream.conf
- touch /app/log/production.log - touch /app/log/production.log
before_live: before_live:
web.web: web.web:
@ -65,11 +64,10 @@ deploy.config:
after_live: after_live:
worker.sidekiq: worker.sidekiq:
- |- - |-
if [[ "${ES_ENABLED}" != "false" ]]
then
bin/tootctl search deploy
fi
if [[ "${ES_ENABLED}" != "false" ]]
then
bin/tootctl search deploy
fi
web.web: web.web:
start: start:
@ -89,7 +87,6 @@ web.web:
data.storage: data.storage:
- public/system - public/system
web.stream: web.stream:
start: start:
nginx: nginx -c /app/nanobox/nginx-stream.conf nginx: nginx -c /app/nanobox/nginx-stream.conf
@ -103,7 +100,6 @@ web.stream:
writable_dirs: writable_dirs:
- tmp - tmp
worker.sidekiq: worker.sidekiq:
start: start:
default: bundle exec sidekiq -c 5 -q default -L /app/log/sidekiq.log default: bundle exec sidekiq -c 5 -q default -L /app/log/sidekiq.log
@ -123,7 +119,6 @@ worker.sidekiq:
data.storage: data.storage:
- public/system - public/system
data.db: data.db:
image: nanobox/postgresql:9.6 image: nanobox/postgresql:9.6
@ -145,7 +140,6 @@ data.db:
curl -k -H "X-AUTH-TOKEN: ${WAREHOUSE_DATA_HOARDER_TOKEN}" https://${WAREHOUSE_DATA_HOARDER_HOST}:7410/blobs/${file} -X DELETE curl -k -H "X-AUTH-TOKEN: ${WAREHOUSE_DATA_HOARDER_TOKEN}" https://${WAREHOUSE_DATA_HOARDER_HOST}:7410/blobs/${file} -X DELETE
done done
data.elastic: data.elastic:
image: nanobox/elasticsearch:5 image: nanobox/elasticsearch:5
@ -171,7 +165,6 @@ data.elastic:
curl -k -H "X-AUTH-TOKEN: ${WAREHOUSE_DATA_HOARDER_TOKEN}" https://${WAREHOUSE_DATA_HOARDER_HOST}:7410/blobs/${file} -X DELETE curl -k -H "X-AUTH-TOKEN: ${WAREHOUSE_DATA_HOARDER_TOKEN}" https://${WAREHOUSE_DATA_HOARDER_HOST}:7410/blobs/${file} -X DELETE
done done
data.redis: data.redis:
image: nanobox/redis:4.0 image: nanobox/redis:4.0
@ -191,7 +184,6 @@ data.redis:
curl -k -H "X-AUTH-TOKEN: ${WAREHOUSE_DATA_HOARDER_TOKEN}" https://${WAREHOUSE_DATA_HOARDER_HOST}:7410/blobs/${file} -X DELETE curl -k -H "X-AUTH-TOKEN: ${WAREHOUSE_DATA_HOARDER_TOKEN}" https://${WAREHOUSE_DATA_HOARDER_HOST}:7410/blobs/${file} -X DELETE
done done
data.storage: data.storage:
image: nanobox/unfs:0.9 image: nanobox/unfs:0.9

+ 0
- 1
config/database.yml View File

@ -32,4 +32,3 @@ production:
host: <%= ENV['DB_HOST'] || 'localhost' %> host: <%= ENV['DB_HOST'] || 'localhost' %>
port: <%= ENV['DB_PORT'] || 5432 %> port: <%= ENV['DB_PORT'] || 5432 %>
prepared_statements: <%= ENV['PREPARED_STATEMENTS'] || 'true' %> prepared_statements: <%= ENV['PREPARED_STATEMENTS'] || 'true' %>

+ 2
- 2
config/i18n-tasks.yml View File

@ -17,8 +17,8 @@ data:
search: search:
paths: paths:
- app/
- config/navigation.rb
- app/
- config/navigation.rb
relative_roots: relative_roots:
- app/controllers - app/controllers

+ 45
- 44
docker-compose.yml View File

@ -1,6 +1,5 @@
version: '3' version: '3'
services: services:
db: db:
restart: always restart: always
image: postgres:14-alpine image: postgres:14-alpine
@ -8,11 +7,11 @@ services:
networks: networks:
- internal_network - internal_network
healthcheck: healthcheck:
test: ["CMD", "pg_isready", "-U", "postgres";]
test: ['CMD', 'pg_isready', '-U', 'postgres';]
volumes: volumes:
- ./postgres14:/var/lib/postgresql/data - ./postgres14:/var/lib/postgresql/data
environment: environment:
- "POSTGRES_HOST_AUTH_METHOD=trust";
- 'POSTGRES_HOST_AUTH_METHOD=trust';
redis: redis:
restart: always restart: always
@ -20,28 +19,28 @@ services:
networks: networks:
- internal_network - internal_network
healthcheck: healthcheck:
test: ["CMD", "redis-cli", "ping";]
test: ['CMD', 'redis-cli', 'ping';]
volumes: volumes:
- ./redis:/data - ./redis:/data
# es:
# restart: always
# image: docker.elastic.co/elasticsearch/elasticsearch-oss:7.10.2
# environment:
# - "ES_JAVA_OPTS=-Xms512m -Xmx512m"
# - "cluster.name=es-mastodon"
# - "discovery.type=single-node"
# - "bootstrap.memory_lock=true"
# networks:
# - internal_network
# healthcheck:
# test: ["CMD-SHELL", "curl --silent --fail localhost:9200/_cluster/health || exit 1"]
# volumes:
# - ./elasticsearch:/usr/share/elasticsearch/data
# ulimits:
# memlock:
# soft: -1
# hard: -1
# es:
# restart: always
# image: docker.elastic.co/elasticsearch/elasticsearch-oss:7.10.2
# environment:
# - "ES_JAVA_OPTS=-Xms512m -Xmx512m"
# - "cluster.name=es-mastodon"
# - "discovery.type=single-node"
# - "bootstrap.memory_lock=true"
# networks:
# - internal_network
# healthcheck:
# test: ["CMD-SHELL", "curl --silent --fail localhost:9200/_cluster/health || exit 1"]
# volumes:
# - ./elasticsearch:/usr/share/elasticsearch/data
# ulimits:
# memlock:
# soft: -1
# hard: -1
web: web:
build: . build: .
@ -53,13 +52,14 @@ services:
- external_network - external_network
- internal_network - internal_network
healthcheck: healthcheck:
test: ["CMD-SHELL", "wget -q --spider --proxy=off localhost:3000/health || exit 1"]
# prettier-ignore
test: ['CMD-SHELL', 'wget -q --spider --proxy=off localhost:3000/health || exit 1']
ports: ports:
- "127.0.0.1:3000:3000";
- '127.0.0.1:3000:3000';
depends_on: depends_on:
- db - db
- redis - redis
# - es
# - es
volumes: volumes:
- ./public/system:/mastodon/public/system - ./public/system:/mastodon/public/system
@ -73,9 +73,10 @@ services:
- external_network - external_network
- internal_network - internal_network
healthcheck: healthcheck:
test: ["CMD-SHELL", "wget -q --spider --proxy=off localhost:4000/api/v1/streaming/health || exit 1"]
# prettier-ignore
test: ['CMD-SHELL', 'wget -q --spider --proxy=off localhost:4000/api/v1/streaming/health || exit 1']
ports: ports:
- "127.0.0.1:4000:4000";
- '127.0.0.1:4000:4000';
depends_on: depends_on:
- db - db
- redis - redis
@ -95,24 +96,24 @@ services:
volumes: volumes:
- ./public/system:/mastodon/public/system - ./public/system:/mastodon/public/system
healthcheck: healthcheck:
test: ["CMD-SHELL";, "ps aux | grep '[s]idekiq\ 6' || false"]
test: ['CMD-SHELL';, "ps aux | grep '[s]idekiq\ 6' || false"]
## Uncomment to enable federation with tor instances along with adding the following ENV variables
## http_proxy=http://privoxy:8118
## ALLOW_ACCESS_TO_HIDDEN_SERVICE=true
# tor:
# image: sirboops/tor
# networks:
# - external_network
# - internal_network
#
# privoxy:
# image: sirboops/privoxy
# volumes:
# - ./priv-config:/opt/config
# networks:
# - external_network
# - internal_network
## Uncomment to enable federation with tor instances along with adding the following ENV variables
## http_proxy=http://privoxy:8118
## ALLOW_ACCESS_TO_HIDDEN_SERVICE=true
# tor:
# image: sirboops/tor
# networks:
# - external_network
# - internal_network
#
# privoxy:
# image: sirboops/privoxy
# volumes:
# - ./priv-config:/opt/config
# networks:
# - external_network
# - internal_network
networks: networks:
external_network: external_network:

+ 4
- 1
package.json View File

@ -14,7 +14,9 @@
"test:lint": "${npm_execpath} run test:lint:js && ${npm_execpath} run test:lint:sass", "test:lint": "${npm_execpath} run test:lint:js && ${npm_execpath} run test:lint:sass",
"test:lint:js": "eslint --ext=js . --cache", "test:lint:js": "eslint --ext=js . --cache",
"test:lint:sass": "sass-lint -v", "test:lint:sass": "sass-lint -v",
"test:jest": "cross-env NODE_ENV=test jest"
"test:jest": "cross-env NODE_ENV=test jest",
"format": "prettier --write '**/*.{json,yml}",
"format-check": "prettier --write '**/*.{json,yml}"
}, },
"repository": { "repository": {
"type": "git", "type": "git",
@ -182,6 +184,7 @@
"eslint-plugin-promise": "~6.0.0", "eslint-plugin-promise": "~6.0.0",
"eslint-plugin-react": "~7.29.3", "eslint-plugin-react": "~7.29.3",
"jest": "^27.5.1", "jest": "^27.5.1",
"prettier": "^2.6.0",
"raf": "^3.4.1", "raf": "^3.4.1",
"react-intl-translations-manager": "^5.0.3", "react-intl-translations-manager": "^5.0.3",
"react-test-renderer": "^16.14.0", "react-test-renderer": "^16.14.0",

+ 1
- 4
scalingo.json View File

@ -92,8 +92,5 @@
"scripts": { "scripts": {
"postdeploy": "bundle exec rails db:migrate && bundle exec rails db:seed" "postdeploy": "bundle exec rails db:migrate && bundle exec rails db:seed"
}, },
"addons": [
"postgresql",
"redis"
]
"addons": ["postgresql", "redis"]
} }

+ 5
- 0
yarn.lock View File

@ -8651,6 +8651,11 @@ prelude-ls@~1.1.2:
resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54"
integrity sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ= integrity sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=
prettier@^2.6.0:
version "2.6.0"
resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.6.0.tgz#12f8f504c4d8ddb76475f441337542fa799207d4"
integrity sha512-m2FgJibYrBGGgQXNzfd0PuDGShJgRavjUoRCw1mZERIWVSXF0iLzLm+aOqTAbLnC3n6JzUhAA8uZnFVghHJ86A==
pretty-format@^25.2.1, pretty-format@^25.5.0: pretty-format@^25.2.1, pretty-format@^25.5.0:
version "25.5.0" version "25.5.0"
resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-25.5.0.tgz#7873c1d774f682c34b8d48b6743a2bf2ac55791a" resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-25.5.0.tgz#7873c1d774f682c34b8d48b6743a2bf2ac55791a"

Loading…
Cancel
Save