1 | {
|
2 | "name": "@bevry/testen",
|
3 | "version": "9.3.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": "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 | "Balsa <hello@balsa.com> (https://balsa.com) (https://github.com/balsa)",
|
95 | "Chad (https://opencollective.com/chad8)",
|
96 | "Codecov <hello-codecov@sentry.io> (https://codecov.io/) (https://github.com/codecov)",
|
97 | "entroniq (https://gitlab.com/entroniq) (https://thanks.dev/d/gl/entroniq)",
|
98 | "Jean-Luc Geering (https://github.com/jlgeering) (https://opencollective.com/jlgeering) (https://twitter.com/jlgeering)",
|
99 | "Michael Duane Mooring (https://bevry.me) (https://github.com/mikeumus) (https://opencollective.com/mikeumus) (https://twitter.com/mikeumus)",
|
100 | "Mohammed Shah <shah@idk.uno> (https://github.com/smashah) (https://thanks.dev/d/gh/smashah) (https://twitter.com/smashah)",
|
101 | "Poonacha Medappa (https://poonachamedappa.com) (https://github.com/km-Poonacha)",
|
102 | "Rob Morris <rob@prismatik.com.au> (https://github.com/Rob-Morris)",
|
103 | "Sentry (https://sentry.io) (https://github.com/getsentry)",
|
104 | "ServieJS (https://github.com/serviejs) (https://thanks.dev/d/gh/serviejs)",
|
105 | "Skunk Team (https://skunk.team) (https://github.com/skunkteam)",
|
106 | "Syntax <scott@syntax.fm> (https://syntax.fm) (https://github.com/syntaxfm)"
|
107 | ],
|
108 | "engines": {
|
109 | "node": ">=18"
|
110 | },
|
111 | "editions": [
|
112 | {
|
113 | "description": "TypeScript source code with Import for modules",
|
114 | "directory": "source",
|
115 | "entry": "index.ts",
|
116 | "tags": [
|
117 | "source",
|
118 | "typescript",
|
119 | "import"
|
120 | ],
|
121 | "engines": false
|
122 | },
|
123 | {
|
124 | "description": "TypeScript compiled against ES2022 for Node.js 18 || 20 || 21 with Import for modules",
|
125 | "directory": "edition-es2022-esm",
|
126 | "entry": "index.js",
|
127 | "tags": [
|
128 | "compiled",
|
129 | "javascript",
|
130 | "es2022",
|
131 | "import"
|
132 | ],
|
133 | "engines": {
|
134 | "node": "18 || 20 || 21",
|
135 | "browsers": false
|
136 | }
|
137 | },
|
138 | {
|
139 | "description": "TypeScript compiled Types with Import for modules",
|
140 | "directory": "edition-types",
|
141 | "entry": "index.d.ts",
|
142 | "tags": [
|
143 | "compiled",
|
144 | "types",
|
145 | "import"
|
146 | ],
|
147 | "engines": false
|
148 | }
|
149 | ],
|
150 | "bin": "bin.mjs",
|
151 | "types": "edition-types/index.d.ts",
|
152 | "type": "module",
|
153 | "main": "edition-es2022-esm/index.js",
|
154 | "exports": {
|
155 | "node": {
|
156 | "types": "./edition-types/index.d.ts",
|
157 | "import": "./edition-es2022-esm/index.js"
|
158 | }
|
159 | },
|
160 | "dependencies": {
|
161 | "@bevry/ansi": "^6.8.0",
|
162 | "@bevry/figures": "^7.4.0",
|
163 | "@bevry/fs-readable": "^2.4.0",
|
164 | "@bevry/json": "^2.3.0",
|
165 | "@bevry/nodejs-versions": "^3.4.0",
|
166 | "@bevry/wait": "^2.5.0",
|
167 | "filedirname": "^3.3.0",
|
168 | "logger-clearable": "^4.6.0",
|
169 | "minimist": "^1.2.8",
|
170 | "spinner-title": "^5.2.0",
|
171 | "string-width": "^7.0.0",
|
172 | "text-table": "^0.2.0",
|
173 | "then-exec": "^0.0.1",
|
174 | "version-clean": "^1.7.0",
|
175 | "version-compare": "^3.9.0",
|
176 | "version-range": "^4.12.0"
|
177 | },
|
178 | "devDependencies": {
|
179 | "@types/node": "^20.10.5",
|
180 | "@typescript-eslint/eslint-plugin": "^6.16.0",
|
181 | "@typescript-eslint/parser": "^6.16.0",
|
182 | "assert-helpers": "^11.11.0",
|
183 | "eslint": "^8.56.0",
|
184 | "eslint-config-bevry": "^5.3.0",
|
185 | "eslint-config-prettier": "^9.1.0",
|
186 | "eslint-plugin-prettier": "^5.1.2",
|
187 | "kava": "^7.6.0",
|
188 | "prettier": "^3.1.1",
|
189 | "projectz": "^4.1.0",
|
190 | "typedoc": "^0.25.4",
|
191 | "typescript": "5.3.3",
|
192 | "valid-directory": "^4.7.0"
|
193 | },
|
194 | "scripts": {
|
195 | "our:bin": "node ./bin.mjs",
|
196 | "our:clean": "rm -rf ./docs ./edition* ./es2015 ./es5 ./out ./.next",
|
197 | "our:compile": "npm run our:compile:edition-es2022-esm && npm run our:compile:edition-types",
|
198 | "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",
|
199 | "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 ) )",
|
200 | "our:deploy": "printf '%s\n' 'no need for this project'",
|
201 | "our:meta": "npm run our:meta:docs && npm run our:meta:projectz",
|
202 | "our:meta:docs": "npm run our:meta:docs:typedoc",
|
203 | "our:meta:docs:typedoc": "rm -rf ./docs && typedoc --exclude '**/+(*test*|node_modules)' --excludeExternals --out ./docs ./source",
|
204 | "our:meta:projectz": "projectz",
|
205 | "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",
|
206 | "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)",
|
207 | "our:release:check-dirty": "git diff --exit-code",
|
208 | "our:release:prepare": "npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta",
|
209 | "our:release:push": "git push origin && git push origin --tags",
|
210 | "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\"",
|
211 | "our:setup": "npm run our:setup:install",
|
212 | "our:setup:install": "npm install",
|
213 | "our:test": "npm run our:verify && npm test",
|
214 | "our:verify": "npm run our:verify:eslint && npm run our:verify:prettier",
|
215 | "our:verify:eslint": "eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source",
|
216 | "our:verify:prettier": "prettier --write .",
|
217 | "test": "node ./edition-es2022-esm/test.js"
|
218 | },
|
219 | "boundation": {
|
220 | "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",
|
221 | "targetModules": [
|
222 | "import"
|
223 | ],
|
224 | "maintainedNodeVersions": true,
|
225 | "expandNodeVersions": false
|
226 | },
|
227 | "eslintConfig": {
|
228 | "extends": [
|
229 | "bevry"
|
230 | ]
|
231 | },
|
232 | "prettier": {
|
233 | "semi": false,
|
234 | "singleQuote": true,
|
235 | "trailingComma": "all",
|
236 | "endOfLine": "lf"
|
237 | }
|
238 | }
|