@nifrajs/aws-lambda 5.1.0 → 5.2.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.
Files changed (2) hide show
  1. package/CHANGELOG.md +77 -0
  2. package/package.json +3 -2
package/CHANGELOG.md ADDED
@@ -0,0 +1,77 @@
1
+ # @nifrajs/aws-lambda
2
+
3
+ ## 5.2.0
4
+
5
+ ### Patch Changes
6
+
7
+ - 9498cf8: The package ships its `CHANGELOG.md`, so the installed package has the notes for every version, as the GitHub release does. Before, the tarball held only the code, `README.md`, `LICENSE` and `package.json`.
8
+
9
+ ## 5.1.0
10
+
11
+ ### Patch Changes
12
+
13
+ - 74b8c29: A `HEAD` request now gets a body-less answer from both `handle()` and `streamHandle()`: the GET route's status and headers, an empty `body`, and no streamed chunks. Before, the adapter returned the full GET body for `HEAD`, and a streaming route was read to its end. A streaming body is now cancelled instead, so its producer learns nobody is reading, as on the Node, Bun and Deno adapters.
14
+
15
+ ## 5.0.0
16
+
17
+ ### Patch Changes
18
+
19
+ - 9f5daa8: When an event carries no `requestContext.domainName`, the adapter uses the `Host` header for the request URL only if it is a plain host and port. A `Host` holding `/`, `?`, `#` or `@` can no longer change the URL's host or the path the app routes on; such a request is built on `localhost` instead.
20
+
21
+ ## 4.0.2
22
+
23
+ ## 4.0.1
24
+
25
+ ## 4.0.0
26
+
27
+ ### Patch Changes
28
+
29
+ - 031c33d: fix(runtime): preserve typed-array compatibility across Fetch runtimes and reject invalid request bodies at the runner boundary.
30
+
31
+ ## 3.5.0
32
+
33
+ ## 3.4.0
34
+
35
+ ## 3.3.0
36
+
37
+ ## 3.2.0
38
+
39
+ ## 3.1.0
40
+
41
+ ## 3.0.0
42
+
43
+ ## 2.14.1
44
+
45
+ ## 2.14.0
46
+
47
+ ## 2.13.0
48
+
49
+ ## 2.12.1
50
+
51
+ ## 2.12.0
52
+
53
+ ### Minor Changes
54
+
55
+ - 2a01366: New package: AWS Lambda adapter for API Gateway HTTP APIs (payload v2) and Lambda Function URLs.
56
+
57
+ - `handle(app)` returns a buffered v2 handler; `streamHandle(app)` streams responses on Function
58
+ URLs with `InvokeMode: RESPONSE_STREAM` via `awslambda.streamifyResponse`.
59
+ - The request body is decoded and its real size checked against `maxBodyBytes` (default 1,000,000)
60
+ before a `Request` is constructed - the event's own length claims are never trusted; over the
61
+ limit answers a flat `413`.
62
+ - Request headers are assembled in exactly one place from the v2 `headers` map plus the canonical
63
+ `cookies` array; response `Set-Cookie` values travel in the result's `cookies` array, one entry
64
+ each, never comma-joined.
65
+ - Response `isBase64Encoded` is decided by a strict UTF-8 decode of the actual bytes, never by
66
+ content-type guessing.
67
+ - `event.requestContext.http.sourceIp` feeds core's client-IP seam (`c.clientIp`); the event and
68
+ context ride on `c.env` (`server<LambdaEnv>()`); `waitUntil` work settles before the container
69
+ freezes; uncaught errors collapse to the flat `internal_error` 500 with no event echo.
70
+
71
+ REST APIs (payload v1) and ALB events are out of scope.
72
+
73
+ ### Patch Changes
74
+
75
+ - 6392995: `handle` and `streamHandle` validate `maxBodyBytes` at wire-up: a `NaN`, fractional, or negative value
76
+ throws a `RangeError` instead of being installed as a cap. `NaN` compares false against every size, so
77
+ the misconfiguration read as "configured" while enforcing nothing.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nifrajs/aws-lambda",
3
- "version": "5.1.0",
3
+ "version": "5.2.0",
4
4
  "description": "AWS Lambda adapter for nifra - API Gateway HTTP API (payload v2) and Function URLs, buffered or streaming, with post-decode body limits and single-site header merging. Dependency-free.",
5
5
  "keywords": [
6
6
  "bun",
@@ -29,7 +29,8 @@
29
29
  },
30
30
  "files": [
31
31
  "dist",
32
- "src"
32
+ "src",
33
+ "CHANGELOG.md"
33
34
  ],
34
35
  "sideEffects": false,
35
36
  "scripts": {