diff --git a/.changeset/http-file-routing.md b/.changeset/http-file-routing.md deleted file mode 100644 index f5580b52..00000000 --- a/.changeset/http-file-routing.md +++ /dev/null @@ -1,44 +0,0 @@ ---- -"@esengine/server": minor -"@esengine/rpc": patch ---- - -feat(server): add HTTP file-based routing support / 添加 HTTP 文件路由支持 - -New feature that allows organizing HTTP routes in separate files, similar to API and message handlers. -新功能:支持将 HTTP 路由组织在独立文件中,类似于 API 和消息处理器的文件路由方式。 - -```typescript -// src/http/login.ts -import { defineHttp } from '@esengine/server' - -export default defineHttp<{ username: string; password: string }>({ - method: 'POST', - handler(req, res) { - const { username, password } = req.body - res.json({ token: '...', userId: '...' }) - } -}) -``` - -Server configuration / 服务器配置: - -```typescript -const server = await createServer({ - port: 8080, - httpDir: 'src/http', // HTTP routes directory / HTTP 路由目录 - httpPrefix: '/api', // Route prefix / 路由前缀 - cors: true, -}) -``` - -File naming convention / 文件命名规则: -- `login.ts` → POST /api/login -- `users/profile.ts` → POST /api/users/profile -- `users/[id].ts` → POST /api/users/:id (dynamic routes / 动态路由) -- Set `method: 'GET'` in defineHttp for GET requests / 在 defineHttp 中设置 `method: 'GET'` 以处理 GET 请求 - -Also includes / 还包括: -- `defineHttp()` helper for type-safe route definitions / 类型安全的路由定义辅助函数 -- Support for merging file routes with inline `http` config / 支持文件路由与内联 `http` 配置合并 -- RPC server supports attaching to existing HTTP server via `server` option / RPC 服务器支持通过 `server` 选项附加到现有 HTTP 服务器 diff --git a/packages/framework/network/CHANGELOG.md b/packages/framework/network/CHANGELOG.md index 391cbeda..c0b073a1 100644 --- a/packages/framework/network/CHANGELOG.md +++ b/packages/framework/network/CHANGELOG.md @@ -1,5 +1,12 @@ # @esengine/network +## 5.0.3 + +### Patch Changes + +- Updated dependencies [[`902c0a1`](https://github.com/esengine/esengine/commit/902c0a10749f80bd8f499b44154646379d359704)]: + - @esengine/rpc@1.1.3 + ## 5.0.2 ### Patch Changes diff --git a/packages/framework/network/package.json b/packages/framework/network/package.json index 84bca005..205129d4 100644 --- a/packages/framework/network/package.json +++ b/packages/framework/network/package.json @@ -1,6 +1,6 @@ { "name": "@esengine/network", - "version": "5.0.2", + "version": "5.0.3", "description": "Network synchronization for multiplayer games", "esengine": { "plugin": true, diff --git a/packages/framework/rpc/CHANGELOG.md b/packages/framework/rpc/CHANGELOG.md index 3f5a28aa..9223924d 100644 --- a/packages/framework/rpc/CHANGELOG.md +++ b/packages/framework/rpc/CHANGELOG.md @@ -1,5 +1,49 @@ # @esengine/rpc +## 1.1.3 + +### Patch Changes + +- [#404](https://github.com/esengine/esengine/pull/404) [`902c0a1`](https://github.com/esengine/esengine/commit/902c0a10749f80bd8f499b44154646379d359704) Thanks [@esengine](https://github.com/esengine)! - feat(server): add HTTP file-based routing support / 添加 HTTP 文件路由支持 + + New feature that allows organizing HTTP routes in separate files, similar to API and message handlers. + 新功能:支持将 HTTP 路由组织在独立文件中,类似于 API 和消息处理器的文件路由方式。 + + ```typescript + // src/http/login.ts + import { defineHttp } from '@esengine/server'; + + export default defineHttp<{ username: string; password: string }>({ + method: 'POST', + handler(req, res) { + const { username, password } = req.body; + res.json({ token: '...', userId: '...' }); + } + }); + ``` + + Server configuration / 服务器配置: + + ```typescript + const server = await createServer({ + port: 8080, + httpDir: 'src/http', // HTTP routes directory / HTTP 路由目录 + httpPrefix: '/api', // Route prefix / 路由前缀 + cors: true + }); + ``` + + File naming convention / 文件命名规则: + - `login.ts` → POST /api/login + - `users/profile.ts` → POST /api/users/profile + - `users/[id].ts` → POST /api/users/:id (dynamic routes / 动态路由) + - Set `method: 'GET'` in defineHttp for GET requests / 在 defineHttp 中设置 `method: 'GET'` 以处理 GET 请求 + + Also includes / 还包括: + - `defineHttp()` helper for type-safe route definitions / 类型安全的路由定义辅助函数 + - Support for merging file routes with inline `http` config / 支持文件路由与内联 `http` 配置合并 + - RPC server supports attaching to existing HTTP server via `server` option / RPC 服务器支持通过 `server` 选项附加到现有 HTTP 服务器 + ## 1.1.2 ### Patch Changes diff --git a/packages/framework/rpc/package.json b/packages/framework/rpc/package.json index 1226ce47..22aedfb7 100644 --- a/packages/framework/rpc/package.json +++ b/packages/framework/rpc/package.json @@ -1,6 +1,6 @@ { "name": "@esengine/rpc", - "version": "1.1.2", + "version": "1.1.3", "description": "Elegant type-safe RPC library for ESEngine", "type": "module", "main": "./dist/index.js", diff --git a/packages/framework/server/CHANGELOG.md b/packages/framework/server/CHANGELOG.md index 66b75689..2b6f3972 100644 --- a/packages/framework/server/CHANGELOG.md +++ b/packages/framework/server/CHANGELOG.md @@ -1,5 +1,54 @@ # @esengine/server +## 4.2.0 + +### Minor Changes + +- [#404](https://github.com/esengine/esengine/pull/404) [`902c0a1`](https://github.com/esengine/esengine/commit/902c0a10749f80bd8f499b44154646379d359704) Thanks [@esengine](https://github.com/esengine)! - feat(server): add HTTP file-based routing support / 添加 HTTP 文件路由支持 + + New feature that allows organizing HTTP routes in separate files, similar to API and message handlers. + 新功能:支持将 HTTP 路由组织在独立文件中,类似于 API 和消息处理器的文件路由方式。 + + ```typescript + // src/http/login.ts + import { defineHttp } from '@esengine/server'; + + export default defineHttp<{ username: string; password: string }>({ + method: 'POST', + handler(req, res) { + const { username, password } = req.body; + res.json({ token: '...', userId: '...' }); + } + }); + ``` + + Server configuration / 服务器配置: + + ```typescript + const server = await createServer({ + port: 8080, + httpDir: 'src/http', // HTTP routes directory / HTTP 路由目录 + httpPrefix: '/api', // Route prefix / 路由前缀 + cors: true + }); + ``` + + File naming convention / 文件命名规则: + - `login.ts` → POST /api/login + - `users/profile.ts` → POST /api/users/profile + - `users/[id].ts` → POST /api/users/:id (dynamic routes / 动态路由) + - Set `method: 'GET'` in defineHttp for GET requests / 在 defineHttp 中设置 `method: 'GET'` 以处理 GET 请求 + + Also includes / 还包括: + - `defineHttp()` helper for type-safe route definitions / 类型安全的路由定义辅助函数 + - Support for merging file routes with inline `http` config / 支持文件路由与内联 `http` 配置合并 + - RPC server supports attaching to existing HTTP server via `server` option / RPC 服务器支持通过 `server` 选项附加到现有 HTTP 服务器 + +### Patch Changes + +- Updated dependencies [[`902c0a1`](https://github.com/esengine/esengine/commit/902c0a10749f80bd8f499b44154646379d359704)]: + - @esengine/rpc@1.1.3 + ## 4.1.0 ### Minor Changes diff --git a/packages/framework/server/package.json b/packages/framework/server/package.json index 35660ba4..4389ab48 100644 --- a/packages/framework/server/package.json +++ b/packages/framework/server/package.json @@ -1,6 +1,6 @@ { "name": "@esengine/server", - "version": "4.1.0", + "version": "4.2.0", "description": "Game server framework for ESEngine with file-based routing", "type": "module", "main": "./dist/index.js", diff --git a/packages/framework/transaction/CHANGELOG.md b/packages/framework/transaction/CHANGELOG.md index fb4c4bc6..6ad7edcd 100644 --- a/packages/framework/transaction/CHANGELOG.md +++ b/packages/framework/transaction/CHANGELOG.md @@ -1,5 +1,12 @@ # @esengine/transaction +## 2.0.7 + +### Patch Changes + +- Updated dependencies [[`902c0a1`](https://github.com/esengine/esengine/commit/902c0a10749f80bd8f499b44154646379d359704)]: + - @esengine/server@4.2.0 + ## 2.0.6 ### Patch Changes diff --git a/packages/framework/transaction/package.json b/packages/framework/transaction/package.json index 33423b0e..fbfeca15 100644 --- a/packages/framework/transaction/package.json +++ b/packages/framework/transaction/package.json @@ -1,6 +1,6 @@ { "name": "@esengine/transaction", - "version": "2.0.6", + "version": "2.0.7", "description": "Game transaction system with distributed support | 游戏事务系统,支持分布式事务", "type": "module", "main": "./dist/index.js",