Node.js 老牌框架 Express 沉寂已久,长时间以来一直处于维护模式。近期其维护者提出了关于 Express 项目的未来计划,将会引入新的贡献者,以便该项目重新走上健康的轨道。
Express 项目最新的稳定版本是 4.x,这已经是几年之前的事情了。有一个 5.0.0 的 beta 版本,也是两年前了,但一直未发布。
计划
这个计划分为几个阶段,重点是直接的战术步骤,而不是战略目标。尽管如此,大多数战术目标都有更大的战略目标支持,但由于篇幅限制,我们省略了这些。此外,这里还有一些待办事项和模糊的地方。理想情况下,随着我们的推进,这些将由合作者填补,并不应成为达成一般方向和目标的障碍。
即时需求
这些是我们建议在批准这个计划后立即执行的事情。
- 审查并采纳 Repo Captains 提案
- 审查并进行最后的措辞修改,然后合并
- 立即给予提交权限
- 立即在 npm 上给予发布权限
- 为招募更多 Repo Captains 设置快速跟进
- 重组活跃 TC 并开放新的 TC 席位
- 未来始终保持 5 名活跃成员的目标
- 向所有组织、仓库和 npm 包添加基金会帐户
Express 5.0
- 在所有与基金会共享的包上发布
- 尽快发布
- 最后的更新主题
- 2020 年的最后 PR 列表
- 除非我们开会并发现明显的问题,否则我们应该立即发布
- 尽快发布
- 在补丁/小版本中立即解决任何剩余的问题
- 将 Express-Generator 更改为默认使用 express 5
- 博客和公告
- 应该向社区展示和分享这些变化并提醒更新需求
Express 6.0
- 评估 Node.js 版本支持
- 更好地与 Node.js LTS 计划保持一致
- 这有助于加速 Express 和 Node.js 向前发展的能力
- 帮助人们拥有更可预测的升级计划以应对重大变化
- 帮助规划人们何时需要在 Express 上引入重大变化
- 这并不意味着我们会为了做而做重大变更,只是我们不会在新的主要版本发布后测试或明确支持非 LTS 版本
- 自动化发布流程
- 将发布授权移到 GH 权限中
- 在所有仓库之间自动发布
- 移除未使用的中间件
- TODO:列出清单
- 使用 Node.js 核心解决方案替换中间件
- TODO:列出清单
- 从 Express 中移除模板和渲染
- 转移到中间件
- Express 作为 API 的一等公民
- 重组 Github 组织以澄清所有权和焦点
- 审查每个并决定其命运
- 淘汰实际上处于不活跃状态的仓库,然后存档
- @express 在 npm 上的作用范围适用于子包
- 所有新的包都在该范围内
- 评估是否要迁移任何现有包
- 停止使用 Node.js internals/monkey-patching Node.js
- 官方维护的TypeScript类型
- 生成并测试,带有文档
- Express Generator 改版
- 仅 API 为目标(删除用于 HTML 渲染的模板)
Express 7.0
- 生态系统合作
- 与 Node 核心合作,为 Express 拥有的许多模块的未来工作
- Web 平台事项,如 Request/Response 和 URL
- 重写中间件以添加到 Node 核心/为性能重写
- 与 Web 服务器框架团队合作
- 停止使用 Node.js internals/monkey-patching Node.js
- LTS 计划和发布时间表
- 镜像 Node.js LTS 并设置主要版本发布时间表
- 现代化工作
- 直接支持元框架、Graphql 和 GRPC 风格的使用
- 新网站
这一切都可以讨论,这里的目标更多地是团结人们一起推动进展,但我们认为提出具体的事项清单会更有成效,所以请随时讨论各个具体点。如果需要的话,我们可以将讨论分开,但请将此问题作为中心。理想情况下,首要任务是安排 TC 会议并将 Express 5 推出门外,所以让我们不要让完美成为进展的敌人,承诺开始并保持进展的流动。
以上 "计划" 内容翻译自 github.com/expressjs/d... Express 项目计划的最新动态。