Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 0 additions & 5 deletions .changeset/distributed-hook-events.md

This file was deleted.

6 changes: 0 additions & 6 deletions .changeset/hooks-observe-middleware-controls.md

This file was deleted.

7 changes: 0 additions & 7 deletions .changeset/layered-runtime-exports.md

This file was deleted.

6 changes: 0 additions & 6 deletions .changeset/modern-node-baselines.md

This file was deleted.

5 changes: 0 additions & 5 deletions .changeset/reliable-middleware-errors.md

This file was deleted.

7 changes: 0 additions & 7 deletions .changeset/streaming-http1-input.md

This file was deleted.

7 changes: 0 additions & 7 deletions .changeset/strict-request-semantics.md

This file was deleted.

6 changes: 6 additions & 0 deletions packages/create-nova-http/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,11 @@
# create-nova-http

## 0.3.0

### Minor Changes

- d0b3809: 将最低运行版本提升至 Node.js 20,并同步更新生成项目的运行声明及 TypeScript 模板使用的 Node.js 20 类型定义。

## 0.2.1

### Patch Changes
Expand Down
2 changes: 1 addition & 1 deletion packages/create-nova-http/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "create-nova-http",
"version": "0.2.1",
"version": "0.3.0",
"description": "Initializer for Nova HTTP projects",
"keywords": [
"create",
Expand Down
24 changes: 24 additions & 0 deletions packages/nova-http/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,29 @@
# nova-http

## 0.3.0

### Minor Changes

- c5b7ea0: 将 core Hook 机制与核心生命周期事件保留在 `core/hooks`,server 和 middleware/plugin 事件由各自所属模块通过声明合并扩展。Context 类型统一使用 `*HookContext` 命名,并移除 `CoreHookEvents` 与 `ServerHookEvents` 汇总类型。
- 0ce768b: 明确 middleware 参与控制流、hook 仅观察生命周期的边界。
移除 `callHookAsync` 和冗余的 `createRequestTimer()`,请直接使用 `onResponse.durationMs` 记录或上报请求耗时;同时使 `onNotFound` 在默认 404 响应确定后触发。
- 53a3725: 重构应用、协议、服务端与静态文件模块的分层边界,并新增 `nova-http/protocol/http1`、`nova-http/static` 子路径导出。公开 `Application`、传输无关的请求/响应契约、HTTP/1 类型以及 `sendFile()` 等扩展接口。

挂载路径现在会在注册时校验并规范化;`app.use(path, ...)` 仅接受字面路径前缀,不再静默接受路由参数、通配符、查询字符串或其他异常前缀。

- d0b3809: 将最低运行版本提升至 Node.js 20,并同步更新生成项目的运行声明及 TypeScript 模板使用的 Node.js 20 类型定义。
- db25c85: 重构 HTTP/1.1 输入内核,引入分段输入、有界请求头解析、独立消息 framing、Readable 请求体背压、严格 EOF 处理和连接生命周期协调

移除 `BufferReader`、`HttpParser` 和完整 Buffer 请求体 API,改用 `SegmentedInput`、`HeaderBlock`、`IncomingBody` 以及 `req.buffer()`、`req.text()`、`req.json()`

- 53a3725: 严格校验并解析 HTTP/1 request-target,区分原始目标与应用路由路径;完善 `NovaRequest` 请求语义,以 `rawTarget`、`path` 和 `bodyBytesReceived` 提供明确的只读信息,并通过 `RequestContext` 扩展 `req.context`。同时正确识别结构化 JSON 媒体类型及保留 Cookie 原始值。

扩展 `trustProxy`,支持布尔值、可信代理跳数或逐跳判断函数,并根据可信代理链安全地解析 `req.ip`。

### Patch Changes

- 53a3725: 修正普通中间件、路由中间件、子应用与错误处理中间件之间的同步和异步错误传播,并防止同一次中间件调用重复执行 `next()` 导致处理链越级。

## 0.2.1

### Patch Changes
Expand Down
2 changes: 1 addition & 1 deletion packages/nova-http/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "nova-http",
"version": "0.2.1",
"version": "0.3.0",
"description": "零依赖、高性能、全链路可控的 Node.js HTTP 框架",
"keywords": [
"framework",
Expand Down