@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.
- package/CHANGELOG.md +77 -0
- 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.
|
|
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": {
|