UNPKG

10.9 kBJSONView Raw
1{
2 "name": "@bevry/testen",
3 "version": "9.4.0",
4 "license": "Artistic-2.0",
5 "description": "Run your tests locally against multiple node.js versions",
6 "homepage": "https://github.com/bevry/testen",
7 "funding": "https://bevry.me/fund",
8 "repository": {
9 "type": "git",
10 "url": "git+https://github.com/bevry/testen.git"
11 },
12 "bugs": {
13 "url": "https://github.com/bevry/testen/issues"
14 },
15 "keywords": [
16 "cli",
17 "cli-app",
18 "es2022",
19 "multi",
20 "n",
21 "node",
22 "nvm",
23 "tdd",
24 "test",
25 "testing",
26 "travis",
27 "typed",
28 "types",
29 "typescript"
30 ],
31 "badges": {
32 "list": [
33 "githubworkflow",
34 "npmversion",
35 "npmdownloads",
36 "---",
37 "githubsponsors",
38 "thanksdev",
39 "patreon",
40 "liberapay",
41 "buymeacoffee",
42 "opencollective",
43 "crypto",
44 "paypal",
45 "---",
46 "discord",
47 "twitch"
48 ],
49 "config": {
50 "githubWorkflow": "bevry",
51 "githubSponsorsUsername": "balupton",
52 "thanksdevGithubUsername": "bevry",
53 "buymeacoffeeUsername": "balupton",
54 "cryptoURL": "https://bevry.me/crypto",
55 "flattrUsername": "balupton",
56 "liberapayUsername": "bevry",
57 "opencollectiveUsername": "bevry",
58 "patreonUsername": "bevry",
59 "paypalURL": "https://bevry.me/paypal",
60 "wishlistURL": "https://bevry.me/wishlist",
61 "discordServerID": "1147436445783560193",
62 "discordServerInvite": "nQuXddV7VP",
63 "twitchUsername": "balupton",
64 "githubUsername": "bevry",
65 "githubRepository": "testen",
66 "githubSlug": "bevry/testen",
67 "npmPackageName": "@bevry/testen"
68 }
69 },
70 "author": "2016-2017 EGOIST <0x142857@gmail.com> (https://egoist.dev) (https://github.com/egoist), 2018+ Benjamin Lupton <b@lupton.cc> (https://balupton.com) (https://github.com/balupton)",
71 "authors": [
72 "2018+ Benjamin Lupton <b@lupton.cc> (https://balupton.com) (https://github.com/balupton): Accelerating collaborative wisdom.",
73 "2016-2017 EGOIST <0x142857@gmail.com> (https://egoist.dev) (https://github.com/egoist): Indie Hacker"
74 ],
75 "maintainers": [
76 "Benjamin Lupton <b@lupton.cc> (https://balupton.com) (https://github.com/balupton): Accelerating collaborative wisdom."
77 ],
78 "contributors": [
79 "Benjamin Lupton <b@lupton.cc> (https://balupton.com) (https://github.com/balupton)",
80 "EGOIST <0x142857@gmail.com> (https://egoist.dev) (https://github.com/egoist)",
81 "Greenkeeper <support@greenkeeper.io> (https://greenkeeper.io) (https://github.com/greenkeeperio-bot)"
82 ],
83 "sponsors": [
84 "Andrew Nesbitt (https://nesbitt.io) (https://github.com/andrew): Software engineer and researcher",
85 "Balsa <hello@balsa.com> (https://balsa.com) (https://github.com/balsa): We're Balsa, and we're building tools for builders.",
86 "Codecov <hello-codecov@sentry.io> (https://codecov.io) (https://github.com/codecov): Empower developers with tools to improve code quality and testing.",
87 "Poonacha Medappa (https://poonachamedappa.com) (https://github.com/km-Poonacha)",
88 "Rob Morris <rob@prismatik.com.au> (https://github.com/Rob-Morris)",
89 "Sentry (https://sentry.io) (https://github.com/getsentry): Real-time crash reporting for your web apps, mobile apps, and games.",
90 "Syntax <scott@syntax.fm> (https://syntax.fm) (https://github.com/syntaxfm): Syntax Podcast"
91 ],
92 "donors": [
93 "Andrew Nesbitt (https://nesbitt.io) (https://github.com/andrew)",
94 "Armen Mkrtchian (https://mogoni.dev) (https://github.com/Armenm)",
95 "Balsa <hello@balsa.com> (https://balsa.com) (https://github.com/balsa)",
96 "Chad (https://opencollective.com/chad8)",
97 "Codecov <hello-codecov@sentry.io> (https://codecov.io) (https://github.com/codecov)",
98 "dr.dimitru (https://veliovgroup.com) (https://github.com/dr-dimitru)",
99 "Elliott Ditman (https://elliottditman.com) (https://github.com/elliottditman)",
100 "entroniq (https://gitlab.com/entroniq) (https://thanks.dev/d/gl/entroniq)",
101 "GitHub (https://github.com/about) (https://github.com/github)",
102 "Hunter Beast (https://cryptoquick.com) (https://github.com/cryptoquick)",
103 "Jean-Luc Geering (https://github.com/jlgeering) (https://opencollective.com/jlgeering) (https://twitter.com/jlgeering)",
104 "Michael Duane Mooring (https://mdm.cc) (https://github.com/mikeumus) (https://opencollective.com/mikeumus) (https://twitter.com/mikeumus)",
105 "Michael Harry Scepaniak <mhs1.sys@gmail.com> (https://michaelscepaniak.com) (https://github.com/hispanic)",
106 "Mohammed Shah <shah@idk.uno> (https://github.com/smashah) (https://thanks.dev/d/gh/smashah) (https://twitter.com/smashah)",
107 "Mr. Henry <hello@mrhenry.be> (https://mrhenry.be) (https://github.com/mrhenry)",
108 "Nermal <nermalcat69@skiff.com> (https://arjunaditya.vercel.app) (https://github.com/nermalcat69)",
109 "Pleo (https://pleo.io) (https://github.com/pleo-io)",
110 "Poonacha Medappa (https://poonachamedappa.com) (https://github.com/km-Poonacha)",
111 "Rob Morris <rob@prismatik.com.au> (https://github.com/Rob-Morris)",
112 "Robert de Forest <guitar.robot@gmail.com> (https://github.com/rdeforest)",
113 "Sentry (https://sentry.io) (https://github.com/getsentry)",
114 "ServieJS (https://github.com/serviejs) (https://thanks.dev/d/gh/serviejs)",
115 "Skunk Team (https://skunk.team) (https://github.com/skunkteam)",
116 "Syntax <scott@syntax.fm> (https://syntax.fm) (https://github.com/syntaxfm)",
117 "WriterJohnBuck (https://github.com/WriterJohnBuck)"
118 ],
119 "engines": {
120 "node": ">=18"
121 },
122 "editions": [
123 {
124 "description": "TypeScript source code with Import for modules",
125 "directory": "source",
126 "entry": "index.ts",
127 "tags": [
128 "source",
129 "typescript",
130 "import"
131 ],
132 "engines": false
133 },
134 {
135 "description": "TypeScript compiled against ES2022 for Node.js 18 || 20 || 21 with Import for modules",
136 "directory": "edition-es2022-esm",
137 "entry": "index.js",
138 "tags": [
139 "compiled",
140 "javascript",
141 "es2022",
142 "import"
143 ],
144 "engines": {
145 "node": "18 || 20 || 21",
146 "browsers": false
147 }
148 },
149 {
150 "description": "TypeScript compiled Types with Import for modules",
151 "directory": "edition-types",
152 "entry": "index.d.ts",
153 "tags": [
154 "compiled",
155 "types",
156 "import"
157 ],
158 "engines": false
159 }
160 ],
161 "bin": "bin.mjs",
162 "types": "edition-types/index.d.ts",
163 "type": "module",
164 "main": "edition-es2022-esm/index.js",
165 "exports": {
166 "node": {
167 "types": "./edition-types/index.d.ts",
168 "import": "./edition-es2022-esm/index.js"
169 }
170 },
171 "dependencies": {
172 "@bevry/ansi": "^6.9.0",
173 "@bevry/figures": "^7.5.0",
174 "@bevry/fs-readable": "^2.5.0",
175 "@bevry/json": "^2.4.0",
176 "@bevry/nodejs-versions": "^3.5.0",
177 "@bevry/wait": "^2.6.0",
178 "filedirname": "^3.4.0",
179 "logger-clearable": "^4.7.0",
180 "minimist": "^1.2.8",
181 "spinner-title": "^5.3.0",
182 "string-width": "^7.0.0",
183 "text-table": "^0.2.0",
184 "then-exec": "^0.0.1",
185 "version-clean": "^1.8.0",
186 "version-compare": "^3.10.0",
187 "version-range": "^4.13.0"
188 },
189 "devDependencies": {
190 "@types/node": "^20.10.5",
191 "@typescript-eslint/eslint-plugin": "^6.16.0",
192 "@typescript-eslint/parser": "^6.16.0",
193 "assert-helpers": "^11.12.0",
194 "eslint": "^8.56.0",
195 "eslint-config-bevry": "^5.3.0",
196 "eslint-config-prettier": "^9.1.0",
197 "eslint-plugin-prettier": "^5.1.2",
198 "kava": "^7.8.0",
199 "prettier": "^3.1.1",
200 "projectz": "^4.2.0",
201 "typedoc": "^0.25.4",
202 "typescript": "5.3.3",
203 "valid-directory": "^4.8.0"
204 },
205 "scripts": {
206 "our:bin": "node ./bin.mjs",
207 "our:clean": "rm -rf ./docs ./edition* ./es2015 ./es5 ./out ./.next",
208 "our:compile": "npm run our:compile:edition-es2022-esm && npm run our:compile:edition-types",
209 "our:compile:edition-es2022-esm": "tsc --module ESNext --target ES2022 --outDir ./edition-es2022-esm --project tsconfig.json && ( test ! -d edition-es2022-esm/source || ( mv edition-es2022-esm/source edition-temp && rm -rf edition-es2022-esm && mv edition-temp edition-es2022-esm ) ) && printf '%s' '{\"type\": \"module\"}' > edition-es2022-esm/package.json",
210 "our:compile:edition-types": "tsc --emitDeclarationOnly --declaration --declarationMap --declarationDir ./edition-types --project tsconfig.json && ( test ! -d edition-types/source || ( mv edition-types/source edition-temp && rm -rf edition-types && mv edition-temp edition-types ) )",
211 "our:deploy": "printf '%s\n' 'no need for this project'",
212 "our:meta": "npm run our:meta:docs && npm run our:meta:projectz",
213 "our:meta:docs": "npm run our:meta:docs:typedoc",
214 "our:meta:docs:typedoc": "rm -rf ./docs && typedoc --exclude '**/+(*test*|node_modules)' --excludeExternals --out ./docs ./source",
215 "our:meta:projectz": "projectz --offline",
216 "our:release": "npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push",
217 "our:release:check-changelog": "cat ./HISTORY.md | grep \"v$npm_package_version\" || (printf '%s\n' \"add a changelog entry for v$npm_package_version\" && exit -1)",
218 "our:release:check-dirty": "git diff --exit-code",
219 "our:release:prepare": "npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta",
220 "our:release:push": "git push origin && git push origin --tags",
221 "our:release:tag": "export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (printf '%s\n' 'proper changelog entry not found' && exit -1) && git tag \"v$npm_package_version\" -am \"$MESSAGE\"",
222 "our:setup": "npm run our:setup:install",
223 "our:setup:install": "npm install",
224 "our:test": "npm run our:verify && npm test",
225 "our:verify": "npm run our:verify:eslint && npm run our:verify:prettier",
226 "our:verify:eslint": "eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source",
227 "our:verify:prettier": "prettier --write .",
228 "test": "node ./edition-es2022-esm/test.js"
229 },
230 "boundation": {
231 "comment": "maintainedNodeVersions and only target import, as string-width, a Sindre package, depends on dozens of other Sindre packages, and Sindre packages only target ESM and maintained Node.js versions",
232 "targetModules": [
233 "import"
234 ],
235 "maintainedNodeVersions": true,
236 "expandNodeVersions": false
237 },
238 "eslintConfig": {
239 "extends": [
240 "bevry"
241 ]
242 },
243 "prettier": {
244 "semi": false,
245 "singleQuote": true,
246 "trailingComma": "all",
247 "endOfLine": "lf"
248 }
249}