package.json 6.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152
  1. {
  2. "name": "undici",
  3. "version": "7.22.0",
  4. "description": "An HTTP/1.1 client, written from scratch for Node.js",
  5. "homepage": "https://undici.nodejs.org",
  6. "bugs": {
  7. "url": "https://github.com/nodejs/undici/issues"
  8. },
  9. "repository": {
  10. "type": "git",
  11. "url": "git+https://github.com/nodejs/undici.git"
  12. },
  13. "license": "MIT",
  14. "contributors": [
  15. {
  16. "name": "Daniele Belardi",
  17. "url": "https://github.com/dnlup",
  18. "author": true
  19. },
  20. {
  21. "name": "Ethan Arrowood",
  22. "url": "https://github.com/ethan-arrowood",
  23. "author": true
  24. },
  25. {
  26. "name": "Matteo Collina",
  27. "url": "https://github.com/mcollina",
  28. "author": true
  29. },
  30. {
  31. "name": "Matthew Aitken",
  32. "url": "https://github.com/KhafraDev",
  33. "author": true
  34. },
  35. {
  36. "name": "Robert Nagy",
  37. "url": "https://github.com/ronag",
  38. "author": true
  39. },
  40. {
  41. "name": "Szymon Marczak",
  42. "url": "https://github.com/szmarczak",
  43. "author": true
  44. },
  45. {
  46. "name": "Tomas Della Vedova",
  47. "url": "https://github.com/delvedor",
  48. "author": true
  49. }
  50. ],
  51. "keywords": [
  52. "fetch",
  53. "http",
  54. "https",
  55. "promise",
  56. "request",
  57. "curl",
  58. "wget",
  59. "xhr",
  60. "whatwg"
  61. ],
  62. "main": "index.js",
  63. "types": "index.d.ts",
  64. "scripts": {
  65. "build:node": "esbuild index-fetch.js --bundle --platform=node --outfile=undici-fetch.js --define:esbuildDetection=1 --keep-names && node scripts/strip-comments.js",
  66. "build:wasm": "node build/wasm.js --docker",
  67. "generate-pem": "node scripts/generate-pem.js",
  68. "lint": "eslint --cache",
  69. "lint:fix": "eslint --fix --cache",
  70. "test": "npm run test:javascript && cross-env NODE_V8_COVERAGE= npm run test:typescript",
  71. "test:javascript": "npm run test:javascript:no-jest && npm run test:jest",
  72. "test:javascript:no-jest": "npm run generate-pem && npm run test:unit && npm run test:fetch && npm run test:node-fetch && npm run test:infra && npm run test:cache && npm run test:cache-interceptor && npm run test:interceptors && npm run test:cookies && npm run test:eventsource && npm run test:subresource-integrity && npm run test:wpt && npm run test:websocket && npm run test:node-test && npm run test:cache-tests",
  73. "test:javascript:without-intl": "npm run test:javascript:no-jest",
  74. "test:busboy": "borp --timeout 180000 -p \"test/busboy/*.js\"",
  75. "test:cache": "borp --timeout 180000 -p \"test/cache/*.js\"",
  76. "test:cache-interceptor": "borp --timeout 180000 -p \"test/cache-interceptor/*.js\"",
  77. "test:cache-interceptor:sqlite": "cross-env NODE_OPTIONS=--experimental-sqlite npm run test:cache-interceptor",
  78. "test:cookies": "borp --timeout 180000 -p \"test/cookie/*.js\"",
  79. "test:eventsource": "npm run build:node && borp --timeout 180000 --expose-gc -p \"test/eventsource/*.js\"",
  80. "test:fuzzing": "node test/fuzzing/fuzzing.test.js",
  81. "test:fetch": "npm run build:node && borp --timeout 180000 --expose-gc --concurrency 1 -p \"test/fetch/*.js\" && npm run test:webidl && npm run test:busboy",
  82. "test:subresource-integrity": "borp --timeout 180000 -p \"test/subresource-integrity/*.js\"",
  83. "test:h2": "npm run test:h2:core && npm run test:h2:fetch",
  84. "test:h2:core": "borp --timeout 180000 -p \"test/+(http2|h2)*.js\"",
  85. "test:h2:fetch": "npm run build:node && borp --timeout 180000 -p \"test/fetch/http2*.js\"",
  86. "test:infra": "borp --timeout 180000 -p \"test/infra/*.js\"",
  87. "test:interceptors": "borp --timeout 180000 -p \"test/interceptors/*.js\"",
  88. "test:jest": "cross-env NODE_V8_COVERAGE= jest",
  89. "test:unit": "borp --timeout 180000 --expose-gc -p \"test/*.js\"",
  90. "test:node-fetch": "borp --timeout 180000 -p \"test/node-fetch/**/*.js\"",
  91. "test:node-test": "borp --timeout 180000 -p \"test/node-test/**/*.js\"",
  92. "test:tdd": "borp --timeout 180000 --expose-gc -p \"test/*.js\"",
  93. "test:tdd:node-test": "borp --timeout 180000 -p \"test/node-test/**/*.js\" -w",
  94. "test:typescript": "tsd && tsc test/imports/undici-import.ts --typeRoots ./types --noEmit && tsc ./types/*.d.ts --noEmit --typeRoots ./types",
  95. "test:webidl": "borp --timeout 180000 -p \"test/webidl/*.js\"",
  96. "test:websocket": "borp --timeout 180000 -p \"test/websocket/**/*.js\"",
  97. "test:websocket:autobahn": "node test/autobahn/client.js",
  98. "test:websocket:autobahn:report": "node test/autobahn/report.js",
  99. "test:wpt:setup": "node test/web-platform-tests/wpt-runner.mjs setup",
  100. "test:wpt": "npm run test:wpt:setup && node test/web-platform-tests/wpt-runner.mjs run /fetch /mimesniff /xhr /websockets /serviceWorkers /eventsource",
  101. "test:cache-tests": "node test/cache-interceptor/cache-tests.mjs --ci",
  102. "coverage": "npm run coverage:clean && cross-env NODE_V8_COVERAGE=./coverage/tmp npm run test:javascript && npm run coverage:report",
  103. "coverage:ci": "npm run coverage:clean && cross-env NODE_V8_COVERAGE=./coverage/tmp npm run test:javascript && npm run coverage:report:ci",
  104. "coverage:clean": "node ./scripts/clean-coverage.js",
  105. "coverage:report": "cross-env NODE_V8_COVERAGE= c8 report",
  106. "coverage:report:ci": "c8 report",
  107. "bench": "echo \"Error: Benchmarks have been moved to '/benchmarks'\" && exit 1",
  108. "serve:website": "echo \"Error: Documentation has been moved to '/docs'\" && exit 1",
  109. "prepare": "husky && node ./scripts/platform-shell.js"
  110. },
  111. "devDependencies": {
  112. "@fastify/busboy": "3.2.0",
  113. "@matteo.collina/tspl": "^0.2.0",
  114. "@metcoder95/https-pem": "^1.0.0",
  115. "@sinonjs/fake-timers": "^12.0.0",
  116. "@types/node": "^20.19.22",
  117. "abort-controller": "^3.0.0",
  118. "borp": "^0.20.0",
  119. "c8": "^10.0.0",
  120. "cross-env": "^10.0.0",
  121. "dns-packet": "^5.4.0",
  122. "esbuild": "^0.27.3",
  123. "eslint": "^9.9.0",
  124. "fast-check": "^4.1.1",
  125. "husky": "^9.0.7",
  126. "jest": "^30.0.5",
  127. "jsondiffpatch": "^0.7.3",
  128. "neostandard": "^0.12.0",
  129. "node-forge": "^1.3.1",
  130. "proxy": "^2.1.1",
  131. "tsd": "^0.33.0",
  132. "typescript": "^5.6.2",
  133. "ws": "^8.11.0"
  134. },
  135. "engines": {
  136. "node": ">=20.18.1"
  137. },
  138. "tsd": {
  139. "directory": "test/types",
  140. "compilerOptions": {
  141. "esModuleInterop": true,
  142. "lib": [
  143. "esnext"
  144. ]
  145. }
  146. },
  147. "jest": {
  148. "testMatch": [
  149. "<rootDir>/test/jest/**"
  150. ]
  151. }
  152. }