@openapi-typescript-infra/service 6.2.0 → 6.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -6,6 +6,7 @@ on:
6
6
  push:
7
7
  branches:
8
8
  - main
9
+ workflow_dispatch:
9
10
 
10
11
  permissions:
11
12
  contents: read
package/README.md CHANGED
@@ -21,11 +21,9 @@ The module takes care of configuration-driven:
21
21
  - health checks
22
22
  - Telemetry and instrumentation
23
23
 
24
- services built with this module use Typescript with Node 18, which involves transpilation.
25
- This module takes that into account across the development and production experience. It does
26
- not currently use ESM for the most part, because between OpenTelemetry, eslint and the
27
- package ecosystem, that is currently a pipe dream, or at least something that requires incredibly
28
- precise configuration, which is not the intent.
24
+ services built with this module use Typescript with Node 20, which involves transpilation.
25
+ This module takes that into account across the development and production experience. It uses ESM because that
26
+ is the way the winds have blown.
29
27
 
30
28
  This module has the following core functionality:
31
29
 
package/build/openapi.js CHANGED
@@ -51,6 +51,21 @@ export async function openApi(app, rootDirectory, codepath, pattern, openApiOpti
51
51
  });
52
52
  const defaultOptions = {
53
53
  apiSpec: app.locals.openApiSpecification,
54
+ // We force full dereferencing of the OpenAPI spec so that all `$ref` schemas are
55
+ // inlined before express-openapi-validator builds its request coercion rules.
56
+ // Without this, the coercer sees `schema: { $ref: ... }` for query parameters and
57
+ // cannot resolve the underlying type, so it falls back to treating the parameter
58
+ // as a potentially repeated value (i.e., an array). That causes AJV to reject
59
+ // valid requests with “should be array” errors. Dereferencing ensures the
60
+ // coercer sees the real primitive type/enum and stops misclassifying params.
61
+ //
62
+ // The one downside is that circular references are not supported, so if you
63
+ // need that, you need to be very careful with enums, and override this option.
64
+ //
65
+ // See https://github.com/cdimascio/express-openapi-validator/issues/1119
66
+ $refParser: {
67
+ mode: 'dereference',
68
+ },
54
69
  ignoreUndocumented: true,
55
70
  validateRequests: {
56
71
  allowUnknownQueryParameters: true,
@@ -1 +1 @@
1
- {"version":3,"file":"openapi.js","sourceRoot":"","sources":["../src/openapi.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,KAAK,gBAAgB,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,mDAAmD,CAAC;AAIrF,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACtC,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAGzD,MAAM,qBAAqB,GAAY,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;IAClD,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;QACnB,IAAI,EAAE,gBAAgB;QACtB,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,oCAAoC;KAC9C,CAAC,CAAC;AACL,CAAC,CAAC;AAIF,SAAS,cAAc,CAAC,QAAgB;IACtC,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;AACtD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,OAAO,CAG3B,GAA4B,EAC5B,aAAqB,EACrB,QAAgB,EAChB,OAAe,EACf,cAAkC;IAElC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,SAAS,GAAG,CAAC,MAAM,CAAC,IAAI,OAAO,CAAC,CAAC;IAC7E,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,iBAAiB,CAAC,CAAC;IAElE,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,GAAG,QAAQ,WAAW,CAAC,CAAC;IACrE,6EAA6E;IAC7E,yEAAyE;IACzE,MAAM,WAAW,GAAG,MAAM,aAAa,CACrC,OAAO,EACP,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,GAAG,QAAQ,WAAW,CAAC,CACpD,CAAC;IACF,MAAM,gBAAgB,GAAG,MAAM,OAAO,CAAC,GAAG,CACxC,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACvB,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QAC3C,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;YACtC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CACpB,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,EAC1C,sCAAsC,CACvC,CAAC;YACF,OAAO,SAAS,CAAC;QACnB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CACH,CAAC;IACF,MAAM,aAAa,GAAG,WAAW,CAAC,MAAM,CACtC,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE;QACnB,MAAM,CAAC,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;QAClC,IAAI,CAAC,EAAE,CAAC;YACN,GAAG,CAAC,IAAI,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;QACtC,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC,EACD,EAAE,CACH,CAAC;IAEF,sEAAsE;IACtE,0EAA0E;IAC1E,gBAAgB;IAChB,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC;IAC9B,IAAI,OAAO,EAAE,CAAC;QACZ,OAAQ,MAA8B,CAAC,MAAM,CAAC;IAChD,CAAC;IAED,IAAI,CAAC;QACH,GAAG,CAAC,MAAM,CAAC,oBAAoB,GAAG,MAAM,IAAI,gBAAgB,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;aAC9E,UAAU,CAAC,EAAE,QAAQ,KAAI,CAAC,EAAE,CAAC;aAC7B,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC;aAC3B,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;YACf,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,uCAAuC,CAAC,CAAC;QAC1E,CAAC,CAAC,CAAC;QAEL,MAAM,cAAc,GAAa;YAC/B,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,oBAAoB;YACxC,kBAAkB,EAAE,IAAI;YACxB,gBAAgB,EAAE;gBAChB,2BAA2B,EAAE,IAAI;gBACjC,WAAW,EAAE,OAAO;aACrB;YACD,iBAAiB,EAAE;gBACjB,QAAQ;gBACR,QAAQ,CACN,QAAgB,EAChB,KAAuE;oBAEvE,MAAM,OAAO,GAAG,KAAK,CAAC,YAAY,CAAC,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;oBACpE,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;oBAEhD,IAAI,CAAC;wBACH,MAAM,MAAM,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;wBACtC,MAAM,MAAM,GAAG,MAAM;4BACnB,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,MAAM,CAAC;4BACnE,CAAC,CAAC,SAAS,CAAC;wBACd,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;4BACvB,MAAM,IAAI,KAAK,CACb,qBAAqB,KAAK,CAAC,MAAM,iBAAiB,UAAU,0BAA0B,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,YAAY,IAAI,CAC7H,CAAC;wBACJ,CAAC;wBACD,OAAO,MAAM,CAAC,MAAM,CAAmB,CAAC;oBAC1C,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACf,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CACrB;4BACE,KAAK,EAAG,KAAe,CAAC,OAAO;4BAC/B,OAAO;4BACP,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,UAAU,CAAC;yBACrD,EACD,mCAAmC,CACpC,CAAC;wBACF,OAAO,qBAAqB,CAAC;oBAC/B,CAAC;gBACH,CAAC;aACF;SACF,CAAC;QAEF,MAAM,EAAE,OAAO,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC;QACtC,MAAM,eAAe,GAAG;YACtB,iFAAiF;YACjF,uDAAuD;YACvD,GAAG,CAAC,UAAU,EAAE,KAAK,MAAM;gBACzB,CAAC,CAAC;oBACE,iBAAiB,EAAE;wBACjB,OAAO,CAAC,KAAY,EAAE,IAAa,EAAE,GAAY;4BAC/C,OAAO,CAAC,GAAG,CAAC,kCAAkC,EAAE,KAAK,CAAC,CAAC;4BACvD,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC;4BAC9C,sCAAsC;4BACtC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;4BACpB,MAAM,KAAK,CAAC;wBACd,CAAC;qBACF;iBACF;gBACH,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/D,GAAG,cAAc;SAClB,CAAC;QAEF,OAAO,gBAAgB,CAAC,UAAU,CAAC,KAAK,CAAC,cAAc,EAAE,eAAe,CAAC,CAAC,CAAC;IAC7E,CAAC;YAAS,CAAC;QACT,IAAI,OAAO,EAAE,CAAC;YACX,MAA8B,CAAC,MAAM,GAAG,OAAO,CAAC;QACnD,CAAC;IACH,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"openapi.js","sourceRoot":"","sources":["../src/openapi.ts"],"names":[],"mappings":"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"}
@@ -35,9 +35,11 @@ function finishLog(app, error, req, res, histogram) {
35
35
  dur = hrdur[0] + hrdur[1] / 1000000000;
36
36
  }
37
37
  const [url, preInfo] = getBasicInfo(req);
38
- let responseType = 'finished';
39
- // ts warning is known and incorrect—`aborted` is a subset of `destroyed`
40
- if (req.aborted) {
38
+ let responseType = 'unknown';
39
+ if (res.writableFinished) {
40
+ responseType = 'finished';
41
+ }
42
+ else if (req.aborted) {
41
43
  responseType = 'aborted';
42
44
  }
43
45
  else if (req.destroyed) {
@@ -1 +1 @@
1
- {"version":3,"file":"requestLogger.js","sourceRoot":"","sources":["../../src/telemetry/requestLogger.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"requestLogger.js","sourceRoot":"","sources":["../../src/telemetry/requestLogger.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openapi-typescript-infra/service",
3
- "version": "6.2.0",
3
+ "version": "6.3.0",
4
4
  "description": "An opinionated framework for building configuration driven services - web, api, or ob. Uses OpenAPI, pino logging, express, confit, Typescript and vitest.",
5
5
  "exports": {
6
6
  ".": {
@@ -95,7 +95,7 @@
95
95
  "dotenv": "^17.2.3",
96
96
  "express": "^5.1.0",
97
97
  "express-openapi-validator": "^5.6.0",
98
- "glob": "^11.0.3",
98
+ "glob": "^13.0.0",
99
99
  "import-in-the-middle": "^2.0.0",
100
100
  "minimist": "^1.2.8",
101
101
  "moderndash": "^4.0.0",
@@ -118,8 +118,8 @@
118
118
  "@types/node": "^24.10.1",
119
119
  "@types/request-ip": "^0.0.41",
120
120
  "@types/supertest": "^6.0.3",
121
- "@typescript-eslint/eslint-plugin": "^8.46.4",
122
- "@typescript-eslint/parser": "^8.46.4",
121
+ "@typescript-eslint/eslint-plugin": "^8.47.0",
122
+ "@typescript-eslint/parser": "^8.47.0",
123
123
  "cpconfig": "^1.4.4",
124
124
  "eslint": "^9.39.1",
125
125
  "eslint-config-prettier": "^10.1.8",
@@ -132,7 +132,7 @@
132
132
  "tsconfig-paths": "^4.2.0",
133
133
  "tsx": "^4.20.6",
134
134
  "typescript": "^5.9.3",
135
- "vitest": "^4.0.9"
135
+ "vitest": "^4.0.12"
136
136
  },
137
137
  "resolutions": {
138
138
  "qs": "^6.11.0"
package/src/openapi.ts CHANGED
@@ -84,6 +84,21 @@ export async function openApi<
84
84
 
85
85
  const defaultOptions: OAPIOpts = {
86
86
  apiSpec: app.locals.openApiSpecification,
87
+ // We force full dereferencing of the OpenAPI spec so that all `$ref` schemas are
88
+ // inlined before express-openapi-validator builds its request coercion rules.
89
+ // Without this, the coercer sees `schema: { $ref: ... }` for query parameters and
90
+ // cannot resolve the underlying type, so it falls back to treating the parameter
91
+ // as a potentially repeated value (i.e., an array). That causes AJV to reject
92
+ // valid requests with “should be array” errors. Dereferencing ensures the
93
+ // coercer sees the real primitive type/enum and stops misclassifying params.
94
+ //
95
+ // The one downside is that circular references are not supported, so if you
96
+ // need that, you need to be very careful with enums, and override this option.
97
+ //
98
+ // See https://github.com/cdimascio/express-openapi-validator/issues/1119
99
+ $refParser: {
100
+ mode: 'dereference',
101
+ },
87
102
  ignoreUndocumented: true,
88
103
  validateRequests: {
89
104
  allowUnknownQueryParameters: true,
@@ -80,10 +80,11 @@ function finishLog<SLocals extends AnyServiceLocals = ServiceLocals<Configuratio
80
80
  }
81
81
  const [url, preInfo] = getBasicInfo(req);
82
82
 
83
- let responseType = 'finished';
83
+ let responseType = 'unknown';
84
84
 
85
- // ts warning is known and incorrect—`aborted` is a subset of `destroyed`
86
- if (req.aborted) {
85
+ if (res.writableFinished) {
86
+ responseType = 'finished';
87
+ } else if (req.aborted) {
87
88
  responseType = 'aborted';
88
89
  } else if (req.destroyed) {
89
90
  responseType = 'destroyed';