mirror of
https://github.com/Unleash/unleash.git
synced 2025-01-11 00:08:30 +01:00
3409b0c5a0
After a Team Retro, one of our squads felt like we needed more data on our test suites. This is the first effort to make our test results easier to grab. It uses the test-reporter action to add a github check to our main build and PR builds with our test results. This at least should make it easier to parse which tests are failing. However, it does not give us trends. So it does not yet make it easier to decide which tests are flaky just from a quick view. --------- Co-authored-by: Gastón Fournier <gaston@getunleash.io>
259 lines
8.3 KiB
JSON
259 lines
8.3 KiB
JSON
{
|
||
"name": "unleash-server",
|
||
"description": "Unleash is an enterprise ready feature toggles service. It provides different strategies for handling feature toggles.",
|
||
"version": "5.1.0-beta.54",
|
||
"keywords": [
|
||
"unleash",
|
||
"feature toggle",
|
||
"feature",
|
||
"toggle"
|
||
],
|
||
"files": [
|
||
"dist",
|
||
"docs",
|
||
"frontend/build",
|
||
"frontend/build/*",
|
||
"frontend/index.js",
|
||
"frontend/package.json"
|
||
],
|
||
"repository": {
|
||
"type": "git",
|
||
"url": "ssh://git@github.com:unleash/unleash.git"
|
||
},
|
||
"bugs": {
|
||
"url": "https://github.com/unleash/unleash/issues"
|
||
},
|
||
"types": "./dist/lib/server-impl.d.ts",
|
||
"engines": {
|
||
"node": ">=18"
|
||
},
|
||
"license": "Apache-2.0",
|
||
"main": "./dist/lib/server-impl.js",
|
||
"scripts": {
|
||
"start": "TZ=UTC node ./dist/server.js",
|
||
"copy-templates": "copyfiles -u 1 src/mailtemplates/**/*.mustache dist/",
|
||
"build:backend": "tsc --pretty --strictNullChecks false",
|
||
"build:frontend": "yarn --cwd ./frontend run build",
|
||
"build": "concurrently \"yarn:copy-templates\" \"yarn:build:frontend\" \"yarn:build:backend\"",
|
||
"dev:backend": "TZ=UTC NODE_ENV=development tsc-watch --strictNullChecks false --onSuccess \"node dist/server-dev.js\"",
|
||
"dev:frontend": "wait-on tcp:4242 && yarn --cwd ./frontend run dev",
|
||
"dev": "concurrently \"yarn:dev:backend\" \"yarn:dev:frontend\"",
|
||
"prepare": "node scripts/husky-install && yarn --cwd ./frontend install && if [ ! -d ./dist ]; then yarn build; fi",
|
||
"prestart:dev": "yarn run clean",
|
||
"start:dev": "TZ=UTC NODE_ENV=development tsc-watch --strictNullChecks false --onSuccess \"node dist/server-dev.js\"",
|
||
"db-migrate": "db-migrate --migrations-dir ./src/migrations",
|
||
"lint": "eslint ./src",
|
||
"local:package": "del-cli --force build && mkdir build && cp -r dist docs CHANGELOG.md LICENSE README.md package.json build",
|
||
"prebuild:watch": "yarn run clean",
|
||
"build:watch": "tsc -w --strictNullChecks false",
|
||
"prebuild": "yarn run clean",
|
||
"test": "NODE_ENV=test PORT=4243 jest",
|
||
"test:unit": "NODE_ENV=test PORT=4243 jest --testPathIgnorePatterns=src/test/e2e --testPathIgnorePatterns=dist",
|
||
"test:docker": "./scripts/docker-postgres.sh",
|
||
"test:report": "NODE_ENV=test PORT=4243 jest --reporters=\"default\" --reporters=\"jest-junit\"",
|
||
"test:docker:cleanup": "docker rm -f unleash-postgres",
|
||
"test:watch": "yarn test --watch",
|
||
"test:coverage": "NODE_ENV=test PORT=4243 jest --coverage --testLocationInResults --outputFile=\"coverage/report.json\" --forceExit --testTimeout=10000",
|
||
"pretest:coverage:jest": "yarn build:frontend",
|
||
"test:coverage:jest": "NODE_ENV=test PORT=4243 jest --silent --ci --json --coverage --testLocationInResults --outputFile=\"report.json\" --forceExit --testTimeout=10000",
|
||
"seed:setup": "ts-node --compilerOptions '{\"strictNullChecks\": false}' src/test/e2e/seed/segment.seed.ts",
|
||
"seed:serve": "UNLEASH_DATABASE_NAME=unleash_test UNLEASH_DATABASE_SCHEMA=seed yarn run start:dev",
|
||
"clean": "del-cli --force dist",
|
||
"preversion": "./scripts/check-release.sh",
|
||
"heroku-postbuild": "cd frontend && yarn && yarn build"
|
||
},
|
||
"jest-junit": {
|
||
"suiteName": "Unleash Unit Tests",
|
||
"outputDirectory": "./reports",
|
||
"outputName": "jest-junit.xml",
|
||
"uniqueOutputName": "false",
|
||
"classNameTemplate": "{classname}-{title}",
|
||
"titleTemplate": "{classname}-{title}",
|
||
"ancestorSeparator": " › ",
|
||
"usePathForSuiteName": "true"
|
||
},
|
||
"jest": {
|
||
"automock": false,
|
||
"maxWorkers": 4,
|
||
"testTimeout": 10000,
|
||
"globalSetup": "./scripts/jest-setup.js",
|
||
"transform": {
|
||
"^.+\\.tsx?$": [
|
||
"@swc/jest"
|
||
]
|
||
},
|
||
"testRegex": "(/__tests__/.*|(\\.|/)(test|spec))\\.(jsx?|tsx?)$",
|
||
"testPathIgnorePatterns": [
|
||
"/dist/",
|
||
"/node_modules/",
|
||
"/frontend/"
|
||
],
|
||
"moduleFileExtensions": [
|
||
"ts",
|
||
"tsx",
|
||
"js",
|
||
"jsx",
|
||
"json"
|
||
],
|
||
"coveragePathIgnorePatterns": [
|
||
"/node_modules/",
|
||
"/dist/",
|
||
"/src/migrations",
|
||
"/src/test"
|
||
]
|
||
},
|
||
"dependencies": {
|
||
"@unleash/express-openapi": "^0.3.0",
|
||
"ajv": "^8.11.0",
|
||
"ajv-formats": "^2.1.1",
|
||
"async": "^3.2.4",
|
||
"bcryptjs": "^2.4.3",
|
||
"compression": "^1.7.4",
|
||
"connect-session-knex": "^3.0.0",
|
||
"cookie-parser": "^1.4.5",
|
||
"cookie-session": "^2.0.0-rc.1",
|
||
"cors": "^2.8.5",
|
||
"date-fns": "^2.25.0",
|
||
"db-migrate": "0.11.13",
|
||
"db-migrate-pg": "1.3.0",
|
||
"db-migrate-shared": "1.2.0",
|
||
"deep-object-diff": "^1.1.9",
|
||
"deepmerge": "^4.2.2",
|
||
"errorhandler": "^1.5.1",
|
||
"express": "^4.18.2",
|
||
"express-rate-limit": "^6.6.0",
|
||
"express-session": "^1.17.1",
|
||
"fast-json-patch": "^3.1.0",
|
||
"gravatar-url": "^3.1.0",
|
||
"hash-sum": "^2.0.0",
|
||
"helmet": "^6.0.0",
|
||
"ip": "^1.1.8",
|
||
"joi": "^17.3.0",
|
||
"js-sha256": "^0.9.0",
|
||
"js-yaml": "^4.1.0",
|
||
"json-schema-to-ts": "2.8.2",
|
||
"json2csv": "^5.0.7",
|
||
"knex": "^2.4.2",
|
||
"lodash.get": "^4.4.2",
|
||
"log4js": "^6.0.0",
|
||
"make-fetch-happen": "^11.0.0",
|
||
"memoizee": "^0.4.15",
|
||
"mime": "^3.0.0",
|
||
"multer": "^1.4.5-lts.1",
|
||
"murmurhash3js": "^3.0.1",
|
||
"mustache": "^4.1.0",
|
||
"nodemailer": "^6.5.0",
|
||
"openapi-types": "^12.0.0",
|
||
"owasp-password-strength-test": "^1.3.0",
|
||
"parse-database-url": "^0.3.0",
|
||
"pg": "^8.7.3",
|
||
"pg-connection-string": "^2.5.0",
|
||
"pkginfo": "^0.4.1",
|
||
"prom-client": "^14.0.0",
|
||
"response-time": "^2.3.2",
|
||
"sanitize-filename": "^1.6.3",
|
||
"semver": "^7.3.5",
|
||
"serve-favicon": "^2.5.0",
|
||
"stoppable": "^1.1.0",
|
||
"ts-toolbelt": "^9.6.0",
|
||
"type-is": "^1.6.18",
|
||
"unleash-client": "3.20.0",
|
||
"uuid": "^9.0.0"
|
||
},
|
||
"devDependencies": {
|
||
"@apidevtools/swagger-parser": "10.1.0",
|
||
"@babel/core": "7.21.8",
|
||
"@swc/core": "1.3.58",
|
||
"@swc/jest": "0.2.26",
|
||
"@types/bcryptjs": "2.4.2",
|
||
"@types/cors": "2.8.13",
|
||
"@types/express": "4.17.17",
|
||
"@types/express-session": "1.17.7",
|
||
"@types/faker": "5.5.9",
|
||
"@types/hash-sum": "^1.0.0",
|
||
"@types/jest": "29.5.1",
|
||
"@types/js-yaml": "4.0.5",
|
||
"@types/make-fetch-happen": "10.0.1",
|
||
"@types/memoizee": "0.4.8",
|
||
"@types/mime": "3.0.1",
|
||
"@types/node": "16.18.31",
|
||
"@types/nodemailer": "6.4.7",
|
||
"@types/owasp-password-strength-test": "1.3.0",
|
||
"@types/pg": "8.6.6",
|
||
"@types/semver": "7.5.0",
|
||
"@types/stoppable": "1.1.1",
|
||
"@types/supertest": "2.0.12",
|
||
"@types/type-is": "1.6.3",
|
||
"@types/uuid": "9.0.1",
|
||
"@typescript-eslint/eslint-plugin": "5.59.6",
|
||
"@typescript-eslint/parser": "5.59.6",
|
||
"concurrently": "^8.0.1",
|
||
"copyfiles": "2.4.1",
|
||
"coveralls": "3.1.1",
|
||
"del-cli": "5.0.0",
|
||
"eslint": "^8.38.0",
|
||
"eslint-config-airbnb-base": "15.0.0",
|
||
"eslint-config-airbnb-typescript": "17.0.0",
|
||
"eslint-config-prettier": "8.8.0",
|
||
"eslint-plugin-import": "2.27.5",
|
||
"eslint-plugin-no-only-tests": "^3.1.0",
|
||
"eslint-plugin-prettier": "4.2.1",
|
||
"eslint-plugin-regexp": "^1.14.0",
|
||
"faker": "5.5.3",
|
||
"fast-check": "3.8.2",
|
||
"fetch-mock": "9.11.0",
|
||
"husky": "8.0.3",
|
||
"jest": "29.5.0",
|
||
"jest-junit": "^16.0.0",
|
||
"lint-staged": "13.2.2",
|
||
"nock": "13.3.1",
|
||
"openapi-enforcer": "1.22.3",
|
||
"prettier": "2.8.1",
|
||
"proxyquire": "2.1.3",
|
||
"source-map-support": "0.5.21",
|
||
"superagent": "8.0.9",
|
||
"supertest": "6.3.3",
|
||
"ts-node": "10.9.1",
|
||
"tsc-watch": "6.0.4",
|
||
"typescript": "4.8.4",
|
||
"wait-on": "^7.0.1"
|
||
},
|
||
"resolutions": {
|
||
"async": "^3.2.4",
|
||
"db-migrate/rc/minimist": "^1.2.5",
|
||
"es5-ext": "0.10.62",
|
||
"knex/liftoff/object.map/**/kind-of": "^6.0.3",
|
||
"knex/liftoff/findup-sync/micromatc/kind-of": "^6.0.3",
|
||
"knex/liftoff/findup-sync/micromatc/nanomatch/kind-of": "^6.0.3",
|
||
"knex/liftoff/findup-sync/micromatch/define-property/**/kind-of": "^6.0.3",
|
||
"node-forge": "^1.0.0",
|
||
"set-value": "^4.0.1",
|
||
"ansi-regex": "^5.0.1",
|
||
"ssh2": "^1.4.0",
|
||
"json-schema": "^0.4.0",
|
||
"minimatch": "^5.0.0"
|
||
},
|
||
"lint-staged": {
|
||
"*.{js,ts}": [
|
||
"eslint --fix"
|
||
],
|
||
"*.{json,yaml,md}": [
|
||
"prettier --write"
|
||
]
|
||
},
|
||
"prettier": {
|
||
"proseWrap": "never",
|
||
"singleQuote": true,
|
||
"tabWidth": 4,
|
||
"trailingComma": "all",
|
||
"overrides": [
|
||
{
|
||
"files": "*.{json,yaml,yml,md}",
|
||
"options": {
|
||
"tabWidth": 2
|
||
}
|
||
}
|
||
]
|
||
}
|
||
}
|