mirror of
https://github.com/smogon/pokemon-showdown.git
synced 2026-04-26 02:39:38 -05:00
In the past, we used non-type-aware linting in our pre-push hook, as well as in `npm test`. This was for performance reasons. In practice, though, we use an eslint cache, which makes even type-aware incremental linting instantaneous. My rule is that you should be able to make a small change and lint in under 10 seconds, and `npm test` should take under 30 seconds, and linting with no changes (for the pre-push hook) should be under 2 seconds. This is still true for type-aware linting, so there's no actual need for fast linting. We've also switched to using `--max-warnings 0` to convert warnings to errors. This seems to allow them to use the same cache file. A big improvement here is that `npm test` should now be enough for testing. I think everyone ran `npm run full-test` for a while because `npm test` didn't have type-aware lint errors, but now that it does, you'll be able to use it again and have your tests run a lot faster.
83 lines
2.2 KiB
JSON
83 lines
2.2 KiB
JSON
{
|
|
"name": "pokemon-showdown",
|
|
"preferGlobal": true,
|
|
"description": "The server for the Pokémon Showdown battle simulator",
|
|
"version": "0.11.2",
|
|
"dependencies": {
|
|
"probe-image-size": "^5.0.0",
|
|
"sockjs": "0.3.20",
|
|
"sucrase": "^3.15.0"
|
|
},
|
|
"optionalDependencies": {
|
|
"cloud-env": "^0.2.3",
|
|
"node-static": "^0.7.11",
|
|
"nodemailer": "^6.4.6",
|
|
"permessage-deflate": "^0.1.7",
|
|
"sql-template-strings": "^2.2.2",
|
|
"sqlite": "^3.0.6"
|
|
},
|
|
"secretDependencies": {
|
|
"node-oom-heapdump": "^1.2.0"
|
|
},
|
|
"engines": {
|
|
"node": ">=12.0.0"
|
|
},
|
|
"scripts": {
|
|
"start": "node pokemon-showdown start",
|
|
"build": "node build",
|
|
"tsc": "tsc",
|
|
"fast-lint": "eslint . --config .eslintrc-no-types.json --cache --cache-location .eslintcache-no-types --ext .js,.ts",
|
|
"lint": "eslint . --cache --ext .js,.ts",
|
|
"full-lint": "eslint . --cache --ext .js,.ts --max-warnings 0",
|
|
"pretest": "npm run lint && npm run build",
|
|
"test": "mocha",
|
|
"posttest": "npm run tsc",
|
|
"full-test": "npm run full-lint && npm run build && npm run tsc && mocha --forbid-only -g \".*\""
|
|
},
|
|
"husky": {
|
|
"hooks": {
|
|
"pre-push": "npm run lint"
|
|
}
|
|
},
|
|
"bin": "./pokemon-showdown",
|
|
"homepage": "http://pokemonshowdown.com",
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "https://github.com/smogon/pokemon-showdown.git"
|
|
},
|
|
"author": {
|
|
"name": "Guangcong Luo",
|
|
"email": "guangcongluo@gmail.com",
|
|
"url": "http://guangcongluo.com"
|
|
},
|
|
"contributors": [
|
|
{
|
|
"name": "Cathy J. Fitzpatrick",
|
|
"email": "cathy@cathyjf.com",
|
|
"url": "https://cathyjf.com"
|
|
},
|
|
{
|
|
"name": "Bill Meltsner",
|
|
"email": "bill@meltsner.com",
|
|
"url": "http://www.meltsner.com"
|
|
}
|
|
],
|
|
"private": true,
|
|
"license": "MIT",
|
|
"devDependencies": {
|
|
"@types/cloud-env": "^0.2.1",
|
|
"@types/node": "^14.11.10",
|
|
"@types/node-static": "^0.7.5",
|
|
"@types/nodemailer": "^6.4.0",
|
|
"@types/sockjs": "^0.3.32",
|
|
"@typescript-eslint/eslint-plugin": "^4.4.1",
|
|
"@typescript-eslint/parser": "^4.4.1",
|
|
"eslint": "^7.11.0",
|
|
"eslint-plugin-import": "^2.22.1",
|
|
"husky": "^4.3.0",
|
|
"mocha": "^8.2.0",
|
|
"smogon": "^1.1.3",
|
|
"typescript": "^4.0.3"
|
|
}
|
|
}
|