# @modern-js/prod-server

## 2.63.3

### Patch Changes

- Updated dependencies [5c97ec2]
- Updated dependencies [e5b16df]
  - @modern-js/server-core@2.63.3
  - @modern-js/runtime-utils@2.63.3
  - @modern-js/utils@2.63.3

## 2.63.2

### Patch Changes

- Updated dependencies [5fc95f7]
- Updated dependencies [524d6af]
- Updated dependencies [53e3ae0]
- Updated dependencies [3d2bf55]
- Updated dependencies [bc1670a]
- Updated dependencies [30f89d5]
  - @modern-js/utils@2.63.2
  - @modern-js/server-core@2.63.2
  - @modern-js/runtime-utils@2.63.2

## 2.63.1

### Patch Changes

- @modern-js/server-core@2.63.1
- @modern-js/runtime-utils@2.63.1
- @modern-js/utils@2.63.1

## 2.63.0

### Patch Changes

- @modern-js/server-core@2.63.0
- @modern-js/runtime-utils@2.63.0
- @modern-js/utils@2.63.0

## 2.62.1

### Patch Changes

- Updated dependencies [86213ae]
  - @modern-js/runtime-utils@2.62.1
  - @modern-js/server-core@2.62.1
  - @modern-js/utils@2.62.1

## 2.62.0

### Patch Changes

- @modern-js/server-core@2.62.0
- @modern-js/runtime-utils@2.62.0
- @modern-js/utils@2.62.0

## 2.61.0

### Patch Changes

- Updated dependencies [45230e2]
- Updated dependencies [a7ff13f]
  - @modern-js/utils@2.61.0
  - @modern-js/server-core@2.61.0
  - @modern-js/runtime-utils@2.61.0

## 2.60.6

### Patch Changes

- e6daf22: fix(server): handle the cases that res cannot be writable
  fix(server): 处理 res 无法写入的情况
- Updated dependencies [e6daf22]
- Updated dependencies [c4894e6]
  - @modern-js/server-core@2.60.6
  - @modern-js/runtime-utils@2.60.6
  - @modern-js/utils@2.60.6

## 2.60.5

### Patch Changes

- @modern-js/server-core@2.60.5
- @modern-js/runtime-utils@2.60.5
- @modern-js/utils@2.60.5

## 2.60.4

### Patch Changes

- Updated dependencies [518b783]
- Updated dependencies [a9e3eb7]
- Updated dependencies [c87813e]
  - @modern-js/server-core@2.60.4
  - @modern-js/runtime-utils@2.60.4
  - @modern-js/utils@2.60.4

## 2.60.3

### Patch Changes

- Updated dependencies [303331c]
  - @modern-js/utils@2.60.3
  - @modern-js/server-core@2.60.3
  - @modern-js/runtime-utils@2.60.3

## 2.60.2

### Patch Changes

- Updated dependencies [8a709bc]
- Updated dependencies [0a31d31]
  - @modern-js/utils@2.60.2
  - @modern-js/server-core@2.60.2
  - @modern-js/runtime-utils@2.60.2

## 2.60.1

### Patch Changes

- @modern-js/server-core@2.60.1
- @modern-js/runtime-utils@2.60.1
- @modern-js/utils@2.60.1

## 2.60.0

### Patch Changes

- 28f0101: feat: generator replace husky to simple git hook

  feat: 生成器模板替换 husky 为 simple-git-hook

- Updated dependencies [d6e0118]
  - @modern-js/server-core@2.60.0
  - @modern-js/runtime-utils@2.60.0
  - @modern-js/utils@2.60.0

## 2.59.0

### Patch Changes

- Updated dependencies [539d72b]
- Updated dependencies [ef1ec44]
- Updated dependencies [80237dc]
  - @modern-js/server-core@2.59.0
  - @modern-js/runtime-utils@2.59.0
  - @modern-js/utils@2.59.0

## 2.58.3

### Patch Changes

- Updated dependencies [36ccad3]
- Updated dependencies [0b581a4]
- Updated dependencies [610554c]
- Updated dependencies [59fba90]
- Updated dependencies [9e82b00]
  - @modern-js/server-core@2.58.3
  - @modern-js/runtime-utils@2.58.3
  - @modern-js/utils@2.58.3

## 2.58.2

### Patch Changes

- Updated dependencies [1ff0304]
- Updated dependencies [7715b6d]
- Updated dependencies [44c1bc4]
- Updated dependencies [a1a9373]
  - @modern-js/server-core@2.58.2
  - @modern-js/runtime-utils@2.58.2
  - @modern-js/utils@2.58.2

## 2.58.1

### Patch Changes

- Updated dependencies [c904ee2]
- Updated dependencies [a214ea8]
  - @modern-js/server-core@2.58.1
  - @modern-js/runtime-utils@2.58.1
  - @modern-js/utils@2.58.1

## 2.58.0

### Patch Changes

- @modern-js/server-core@2.58.0
- @modern-js/runtime-utils@2.58.0
- @modern-js/utils@2.58.0

## 2.57.1

### Patch Changes

- Updated dependencies [bc565cd]
  - @modern-js/server-core@2.57.1
  - @modern-js/runtime-utils@2.57.1
  - @modern-js/utils@2.57.1

## 2.57.0

### Patch Changes

- 0e906a1: feat: inject renderHandler to appContext & add default serverPlugins
  feat: 注入 renderHandler 到 appContext & 新增默认 serverPlugins
- 604ad3a: fix: faviconPlugin should after staticPlugin
  fix: faviconPlugin 应该在 staticPlugin 之后
- Updated dependencies [2515b00]
- Updated dependencies [0e906a1]
- Updated dependencies [6cec127]
- Updated dependencies [b5a48a8]
- Updated dependencies [203c9eb]
- Updated dependencies [916559a]
- Updated dependencies [604ad3a]
- Updated dependencies [dc736ef]
  - @modern-js/utils@2.57.0
  - @modern-js/server-core@2.57.0
  - @modern-js/runtime-utils@2.57.0

## 2.56.2

### Patch Changes

- @modern-js/server-core@2.56.2
- @modern-js/runtime-utils@2.56.2
- @modern-js/utils@2.56.2

## 2.56.1

### Patch Changes

- Updated dependencies [e0e29b3]
  - @modern-js/server-core@2.56.1
  - @modern-js/runtime-utils@2.56.1
  - @modern-js/utils@2.56.1

## 2.56.0

### Minor Changes

- bedbbb3: feat: server monitors interface unity
  feat: server 监控接口统一

### Patch Changes

- Updated dependencies [bedbbb3]
- Updated dependencies [9eee52a]
  - @modern-js/server-core@2.56.0
  - @modern-js/runtime-utils@2.56.0
  - @modern-js/utils@2.56.0

## 2.55.0

### Patch Changes

- 35cddd7: fix: prod-server support source-map
  fix: prod-server 支持 source-map
- Updated dependencies [bbcf55a]
- Updated dependencies [e0c2384]
  - @modern-js/utils@2.55.0
  - @modern-js/server-core@2.55.0
  - @modern-js/runtime-utils@2.55.0

## 2.54.6

### Patch Changes

- @modern-js/server-core@2.54.6
- @modern-js/runtime-utils@2.54.6
- @modern-js/utils@2.54.6

## 2.54.5

### Patch Changes

- 5525a23: fix: logger maybe undefined when server occur error
  fix: logger 可能是 undefined 当 server 发生错误时
- Updated dependencies [5525a23]
  - @modern-js/server-core@2.54.5
  - @modern-js/runtime-utils@2.54.5
  - @modern-js/utils@2.54.5

## 2.54.4

### Patch Changes

- @modern-js/server-core@2.54.4
- @modern-js/runtime-utils@2.54.4
- @modern-js/utils@2.54.4

## 2.54.3

### Patch Changes

- b50d7ec: fix: we should load modern.config.json when production
  fix: 在生产阶段，我们应该加载 modern.config.json
- c5644c9: fix: we should add cli config correctly
  fix: 我们应该正确的添加 cli 配置
- Updated dependencies [b50d7ec]
  - @modern-js/server-core@2.54.3
  - @modern-js/runtime-utils@2.54.3
  - @modern-js/utils@2.54.3

## 2.54.2

### Patch Changes

- @modern-js/server-core@2.54.2
- @modern-js/runtime-utils@2.54.2
- @modern-js/utils@2.54.2

## 2.54.1

### Patch Changes

- Updated dependencies [29aeb3c]
  - @modern-js/server-core@2.54.1
  - @modern-js/runtime-utils@2.54.1
  - @modern-js/utils@2.54.1

## 2.54.0

### Minor Changes

- a8d8f0c: feat: support new server plugin & discard server plugin some hooks
  feat: 支持新 server plugin & 减少 server plugin 钩子

### Patch Changes

- Updated dependencies [15a090c]
- Updated dependencies [a8d8f0c]
- Updated dependencies [8cdb67d]
- Updated dependencies [09798ac]
  - @modern-js/utils@2.54.0
  - @modern-js/server-core@2.54.0
  - @modern-js/runtime-utils@2.54.0

## 2.53.0

### Patch Changes

- Updated dependencies [0fce81a]
- Updated dependencies [b251046]
- Updated dependencies [a481488]
  - @modern-js/server-core@2.53.0
  - @modern-js/runtime-utils@2.53.0
  - @modern-js/utils@2.53.0

## 2.52.0

### Patch Changes

- Updated dependencies [85ac453]
- Updated dependencies [ad4548d]
- Updated dependencies [920d856]
  - @modern-js/runtime-utils@2.52.0
  - @modern-js/server-core@2.52.0
  - @modern-js/utils@2.52.0

## 2.51.0

### Patch Changes

- Updated dependencies [9d4d04d]
  - @modern-js/server-core@2.51.0
  - @modern-js/runtime-utils@2.51.0
  - @modern-js/utils@2.51.0

## 2.50.0

### Patch Changes

- Updated dependencies [7ed2fbc]
  - @modern-js/server-core@2.50.0
  - @modern-js/runtime-utils@2.50.0
  - @modern-js/utils@2.50.0

## 2.49.4

### Patch Changes

- 6e12e9f: fix: public middleware should not filter api route & support https
  fix: public middleware 不应该过滤 api 路由 & 支持 https
- Updated dependencies [4653e73]
- Updated dependencies [2c60b6b]
- Updated dependencies [936ca64]
- Updated dependencies [6e12e9f]
  - @modern-js/server-core@2.49.4
  - @modern-js/runtime-utils@2.49.4
  - @modern-js/utils@2.49.4

## 2.49.3

### Patch Changes

- Updated dependencies [d936fe3]
- Updated dependencies [45cae97]
- Updated dependencies [0c4929f]
- Updated dependencies [1b594a5]
- Updated dependencies [4d728d2]
- Updated dependencies [aa3a1dc]
- Updated dependencies [327f607]
- Updated dependencies [3e663e9]
  - @modern-js/server-core@2.49.3
  - @modern-js/runtime-utils@2.49.3
  - @modern-js/utils@2.49.3

## 2.49.2

### Patch Changes

- @modern-js/server-core@2.49.2
- @modern-js/runtime-utils@2.49.2
- @modern-js/utils@2.49.2

## 2.49.1

### Patch Changes

- 0766ae2: fix: @modern-js/utils should be a dependency in @modern-js/prod-server
  fix: @modern-js/utils 应该是 @modern-js/prod-server 的依赖
- Updated dependencies [0c395bc]
- Updated dependencies [58c3729]
- Updated dependencies [5b44c1c]
  - @modern-js/server-core@2.49.1
  - @modern-js/runtime-utils@2.49.1
  - @modern-js/utils@2.49.1

## 2.49.0

### Minor Changes

- e8c8c5d: refactor: refactor server
  refactor: 重构 server

### Patch Changes

- fa7949a: fix: adjust rslog level so that user can print log in middleware
  fix: 调整 rslog 等级保证用户能够在中间件等地方打印日志
- Updated dependencies [fa7949a]
- Updated dependencies [d7c883b]
- Updated dependencies [768d2e0]
- Updated dependencies [e8c8c5d]
- Updated dependencies [6a543df]
- Updated dependencies [f6c632f]
- Updated dependencies [259a175]
  - @modern-js/server-core@2.49.0
  - @modern-js/runtime-utils@2.49.0

## 2.48.6

### Patch Changes

- @modern-js/server-core@2.48.6
- @modern-js/plugin@2.48.6
- @modern-js/runtime-utils@2.48.6
- @modern-js/utils@2.48.6

## 2.48.5

### Patch Changes

- Updated dependencies [4ca9f4c]
  - @modern-js/utils@2.48.5
  - @modern-js/server-core@2.48.5
  - @modern-js/plugin@2.48.5
  - @modern-js/runtime-utils@2.48.5

## 2.48.4

### Patch Changes

- Updated dependencies [7d2d433]
  - @modern-js/utils@2.48.4
  - @modern-js/server-core@2.48.4
  - @modern-js/plugin@2.48.4
  - @modern-js/runtime-utils@2.48.4

## 2.48.3

### Patch Changes

- @modern-js/server-core@2.48.3
- @modern-js/plugin@2.48.3
- @modern-js/runtime-utils@2.48.3
- @modern-js/utils@2.48.3

## 2.48.2

### Patch Changes

- @modern-js/server-core@2.48.2
- @modern-js/plugin@2.48.2
- @modern-js/runtime-utils@2.48.2
- @modern-js/utils@2.48.2

## 2.48.1

### Patch Changes

- 24b2ec1: fix(worker): worker can run correctly when dev & prod
  fix(worker): 在开发模式和线上模式 worker 能够正常运行
- 74749ae: fix: sometime the url '/a/' shoud be equal '/a'
  fix: 有时 url '/a/' 应该等于 '/a'
- Updated dependencies [8942b90]
- Updated dependencies [ce426f7]
- Updated dependencies [74749ae]
  - @modern-js/utils@2.48.1
  - @modern-js/runtime-utils@2.48.1
  - @modern-js/server-core@2.48.1
  - @modern-js/plugin@2.48.1

## 2.48.0

### Minor Changes

- 0b44ddb: feat: support `x-render-cache` response headers when open ssr cache
  feat: 当开启 ssr 缓存时，支持 `x-render-cache` 响应头

### Patch Changes

- Updated dependencies [c323a23]
  - @modern-js/utils@2.48.0
  - @modern-js/server-core@2.48.0
  - @modern-js/plugin@2.48.0
  - @modern-js/runtime-utils@2.48.0

## 2.47.1

### Patch Changes

- @modern-js/server-core@2.47.1
- @modern-js/plugin@2.47.1
- @modern-js/runtime-utils@2.47.1
- @modern-js/utils@2.47.1

## 2.47.0

### Minor Changes

- b68c12a: feat: add server SSR fallback hook
  feat: 新增 server SSR 降级 hook 实现

### Patch Changes

- a9a3626: fix(prod-server): ssr renderResult maybe is a undefined, when use react-router redirect
  fix(prod-server): 当使用 react-router redirect, ssr 渲染结果可能是个 undefined
- 01b75e6: fix(prod-server): ssr cache would return error result when use stream ssr
  fix(prod-server): 使用 stream ssr 时， ssr 缓存将会返回错误结果
- Updated dependencies [b68c12a]
- Updated dependencies [a5386ab]
- Updated dependencies [9464c9c]
  - @modern-js/server-core@2.47.0
  - @modern-js/utils@2.47.0
  - @modern-js/runtime-utils@2.47.0
  - @modern-js/plugin@2.47.0

## 2.46.1

### Patch Changes

- @modern-js/server-core@2.46.1
- @modern-js/plugin@2.46.1
- @modern-js/runtime-utils@2.46.1
- @modern-js/utils@2.46.1

## 2.46.0

### Patch Changes

- 091c7c2: fix(prod-server): ssr cache can't work in `serve` command
  fix(prod-server): ssr 缓存不能在 `serve` 指令中正常工作
- d833015: feat: server template support <head xxx=''> edge case
  feat: 服务端模版方法支持 <head xxx=''> 的边界 case
- 46e6d56: fix(prod-server): isBot@4.x need nodev18, so we downgrade it to 3.x
  fix(prod-server): isBot@4.x 需要 nodev18, 所以我们降级到 3.x
- 494b290: feat: Waiting for all content to load for spiders in streaming ssr
  feat: 在 streaming ssr 时，为爬虫等待所有内容加载完毕
- Updated dependencies [78e2722]
  - @modern-js/runtime-utils@2.46.0
  - @modern-js/server-core@2.46.0
  - @modern-js/utils@2.46.0
  - @modern-js/plugin@2.46.0

## 2.45.0

### Patch Changes

- f50ad3e: fix: adjust logger code
  fix: 调整 logger 冗余代码
- Updated dependencies [f50ad3e]
  - @modern-js/server-core@2.45.0
  - @modern-js/runtime-utils@2.45.0
  - @modern-js/utils@2.45.0
  - @modern-js/plugin@2.45.0

## 2.44.0

### Minor Changes

- 56d7f9a: feat: SSR server support afterStreamingRender
  feat: SSR 服务端支持 afterStreamingRender

### Patch Changes

- 0ed968c: fix: SSR cache container spell
  fix: SSR 缓存相关 container 拼写修正
- Updated dependencies [0ed968c]
- Updated dependencies [56d7f9a]
  - @modern-js/runtime-utils@2.44.0
  - @modern-js/server-core@2.44.0
  - @modern-js/utils@2.44.0
  - @modern-js/plugin@2.44.0

## 2.43.0

### Minor Changes

- d959200: feat: support ssr cache, and global storer
  feat: 支持 ssr 缓存, 以及全局存储器

### Patch Changes

- Updated dependencies [9e749d8]
- Updated dependencies [d959200]
- Updated dependencies [ae22b74]
- Updated dependencies [5782aa3]
  - @modern-js/runtime-utils@2.43.0
  - @modern-js/server-core@2.43.0
  - @modern-js/utils@2.43.0
  - @modern-js/plugin@2.43.0

## 2.42.2

### Patch Changes

- @modern-js/server-core@2.42.2
- @modern-js/runtime-utils@2.42.2
- @modern-js/utils@2.42.2
- @modern-js/plugin@2.42.2

## 2.42.1

### Patch Changes

- @modern-js/server-core@2.42.1
- @modern-js/plugin@2.42.1
- @modern-js/runtime-utils@2.42.1
- @modern-js/utils@2.42.1

## 2.42.0

### Minor Changes

- 8c2efe1: feat(prod-server): afterRender Hook context add route attributes
  feat(prod-server): afterRender Hook context 新增 route 属性

### Patch Changes

- 8793e64: fix(worker-server): rslogger can't work in worker env.
  fix(worker-server): rslogger 在 worker 环境不能正常工作.
- Updated dependencies [103cf92]
  - @modern-js/runtime-utils@2.42.0
  - @modern-js/server-core@2.42.0
  - @modern-js/plugin@2.42.0
  - @modern-js/utils@2.42.0

## 2.41.0

### Patch Changes

- 2555586: feat: worker server support header likes `x-${metaName}-ssr-fallback` to return csr template
  feat: worker server 支持 header 头 `x-${metaName}-ssr-fallback` 降级
- c4d396a: chore(swc): bump swc and helpers
  chore(swc): 升级 swc 以及 helpers
- Updated dependencies [c4d396a]
  - @modern-js/runtime-utils@2.41.0
  - @modern-js/plugin@2.41.0
  - @modern-js/utils@2.41.0
  - @modern-js/server-core@2.41.0

## 2.40.0

### Minor Changes

- c960bcb: feat: add forceCSR options for worker server
  feat: 在 worker server 新增 forceCSR 参数和判断 csr=1 降级

### Patch Changes

- a68a2e9: fix(prod-server): inject reporter from req
  fix(prod-server): 从 req 里拿到 reporter 去注入
- Updated dependencies [95f15d2]
  - @modern-js/utils@2.40.0
  - @modern-js/server-core@2.40.0
  - @modern-js/plugin@2.40.0
  - @modern-js/runtime-utils@2.40.0

## 2.39.2

### Patch Changes

- @modern-js/server-core@2.39.2
- @modern-js/plugin@2.39.2
- @modern-js/runtime-utils@2.39.2
- @modern-js/utils@2.39.2

## 2.39.1

### Patch Changes

- Updated dependencies [f397649]
  - @modern-js/runtime-utils@2.39.1
  - @modern-js/server-core@2.39.1
  - @modern-js/plugin@2.39.1
  - @modern-js/utils@2.39.1

## 2.39.0

### Patch Changes

- @modern-js/server-core@2.39.0
- @modern-js/plugin@2.39.0
- @modern-js/runtime-utils@2.39.0
- @modern-js/utils@2.39.0

## 2.38.0

### Patch Changes

- 6d8ef7d: fix: export reporter only in middlewares-context
  fix: 只在 middlewares-context 导出 reporter
  - @modern-js/server-core@2.38.0
  - @modern-js/plugin@2.38.0
  - @modern-js/runtime-utils@2.38.0
  - @modern-js/utils@2.38.0

## 2.37.2

### Patch Changes

- @modern-js/server-core@2.37.2
- @modern-js/plugin@2.37.2
- @modern-js/runtime-utils@2.37.2
- @modern-js/utils@2.37.2

## 2.37.1

### Patch Changes

- @modern-js/server-core@2.37.1
- @modern-js/plugin@2.37.1
- @modern-js/runtime-utils@2.37.1
- @modern-js/utils@2.37.1

## 2.37.0

### Patch Changes

- Updated dependencies [7dc1512]
- Updated dependencies [383b636]
- Updated dependencies [ce0a14e]
- Updated dependencies [708f248]
  - @modern-js/server-core@2.37.0
  - @modern-js/utils@2.37.0
  - @modern-js/plugin@2.37.0
  - @modern-js/runtime-utils@2.37.0

## 2.36.0

### Patch Changes

- b98f8aa: feat: using rslog as logger

  feat: 使用 rslog 作为 logger

- Updated dependencies [3473bee]
- Updated dependencies [b98f8aa]
- Updated dependencies [eb602d2]
  - @modern-js/utils@2.36.0
  - @modern-js/server-core@2.36.0
  - @modern-js/plugin@2.36.0
  - @modern-js/runtime-utils@2.36.0

## 2.35.1

### Patch Changes

- bb97082: fix(prod-server): error header key in other metaName
  fix(prod-server): 错误的 header key 在不同的 metaName
- 0db5680: fix(app-tools): failed to emit modern.config.json when distPath.root is absolute path

  fix(app-tools): 修复 distPath.root 为绝对路径时无法输出 modern.config.json 的问题

- 411cea2: fix(prod-server): the server need use headersSent without use flushHeader
  fix(prod-server): 没有 flushHeader 时 server 应该使用 headersSent
- 4980480: chore(prod-server): remove duplicated logger module

  chore(prod-server): 移除重复的 logger 模块

- 6a1d46e: refactor: split runtime utils into a seperate package
  refactor: runtime utils 单独拆分成一个包
- Updated dependencies [ea3fe18]
- Updated dependencies [14f95cf]
- Updated dependencies [9dd3151]
- Updated dependencies [4980480]
- Updated dependencies [6a1d46e]
  - @modern-js/utils@2.35.1
  - @modern-js/plugin@2.35.1
  - @modern-js/runtime-utils@2.35.1
  - @modern-js/server-core@2.35.1

## 2.35.0

### Patch Changes

- Updated dependencies [15b834f]
  - @modern-js/utils@2.35.0
  - @modern-js/server-core@2.35.0
  - @modern-js/plugin@2.35.0

## 2.34.0

### Minor Changes

- 5240e5d: feat: ssr-preload.include support specify rel
  feat: ssr-preload.include 支持指定 rel 属性

### Patch Changes

- f851fa9: fix: lazy import preload, then update include.type to include.as
  fix: 动态加载 preload 功能, 对齐规范将 include.type 属性更新为 include.as
- 7d70738: fix: some link shouldn't have as attributes
  fix: 一些 link 头不应该添加 as 属性
- Updated dependencies [f851fa9]
- Updated dependencies [7d70738]
- Updated dependencies [5240e5d]
- Updated dependencies [a77b82a]
- Updated dependencies [dcdeea5]
- Updated dependencies [c8b448b]
  - @modern-js/server-core@2.34.0
  - @modern-js/utils@2.34.0
  - @modern-js/plugin@2.34.0

## 2.33.1

### Patch Changes

- @modern-js/server-core@2.33.1
- @modern-js/plugin@2.33.1
- @modern-js/utils@2.33.1

## 2.33.0

### Patch Changes

- 1042583: fix(prod-server): set res.statusCode = 200 when routes matches success
  fix(prod-server): 路由匹配成功后 设置 res.statusCode = 200
- 3ba1682: fix(prod-server): optimize ssr preload
  fix(prod-server): 优化 ssr preload
- Updated dependencies [fd82137]
- Updated dependencies [bc1f8da]
  - @modern-js/utils@2.33.0
  - @modern-js/server-core@2.33.0
  - @modern-js/plugin@2.33.0

## 2.32.1

### Patch Changes

- @modern-js/server-core@2.32.1
- @modern-js/utils@2.32.1
- @modern-js/plugin@2.32.1

## 2.32.0

### Minor Changes

- 2447d64: feat: support ssr resources preload
  feat: 支持 ssr 资源预加载

### Patch Changes

- e6c7d33: fix about server timing not use metaName at some case
- 6076166: fix: packaging errors found by publint

  fix: 修复 publint 检测到的 packaging 问题

- 5f7c714: fix: WebSocket upgrade handler cause HMR connection issue
  fix: WebSocket upgrade handler 导致 HMR 连接错误
- 6d73519: fix: update server reportTimings name
  fix: 更新 server reportTimings 名称
- 79658a0: fix: collects ServerReportTiming Names, and then reports it only when cost != 0
  fix: 收集 ServerReportTiming Names, 然后只有在 cost !=0 时才报告它
- Updated dependencies [e5a3fb4]
- Updated dependencies [6076166]
- Updated dependencies [a030aff]
- Updated dependencies [3c91100]
- Updated dependencies [2447d64]
- Updated dependencies [5255eba]
  - @modern-js/utils@2.32.0
  - @modern-js/plugin@2.32.0
  - @modern-js/server-core@2.32.0

## 2.31.2

### Patch Changes

- Updated dependencies [15d30abdc66]
  - @modern-js/utils@2.31.2
  - @modern-js/server-core@2.31.2
  - @modern-js/plugin@2.31.2

## 2.31.1

### Patch Changes

- @modern-js/server-core@2.31.1
- @modern-js/plugin@2.31.1
- @modern-js/utils@2.31.1

## 2.31.0

### Patch Changes

- 56eaa0b: fix(prod-server): the app maybe undefined, when use renderHtml
  fix(prod-server): 当使用 renderHtml 时，app 可能是个 undefined
- d9cc4d8: fix: the issue when set more than two cookie
  fix: 修复设置多余两个 cookie 时的问题
- Updated dependencies [1882366]
  - @modern-js/utils@2.31.0
  - @modern-js/server-core@2.31.0
  - @modern-js/plugin@2.31.0

## 2.30.0

### Minor Changes

- a5ee81a: feat(server): add new server hooks `beforeServerInit` & `afterServerInit`
  feat(server): 添加新的服务端钩子 `beforeServerInit` & `afterServerInit`

### Patch Changes

- 9f21f28: fix(server): add catch and imporve url parse logic in modern server
  fix(server): 在 modern server 中优化 url 解析逻辑并添加错误捕获并
- 883692c: fix: can't proxy WebSocket without the initial http request
  fix: WebSocket 代理只能在首次 http 请求后生效
- b6ab299: fix(prod-server): remove req bodyParser, let uesr parses body by themself.
  fix(prod-server): 移除 req bodyParser, 让用户自行解析 body
- Updated dependencies [a5ee81a]
  - @modern-js/server-core@2.30.0
  - @modern-js/utils@2.30.0
  - @modern-js/plugin@2.30.0

## 2.29.0

### Minor Changes

- 16e5195: feat(prod-server): add body parser
  feat(prod-server): 增加 body 解析器
- cba7675: feat: add a server reporter that report server cost, logger about error, info etc.
  feat: 添加一个 server 端 reporter，来报告 server 端耗时，报错等

### Patch Changes

- 76ace5d: fix(prod-server): bff may run bodyParser by themself, so we need't to run
  fix(prod-server): bff 可能会在内部运行, 所以我们不需要运行
- Updated dependencies [e6b5355]
- Updated dependencies [93db783]
- Updated dependencies [cba7675]
- Updated dependencies [99052ea]
- Updated dependencies [1d71d2e]
  - @modern-js/utils@2.29.0
  - @modern-js/server-core@2.29.0
  - @modern-js/plugin@2.29.0

## 2.28.0

### Minor Changes

- 6eae1e7: feat: support worker hmr using dev-server
  feat: 借用 dev-server 支持 wokrer hmr

### Patch Changes

- Updated dependencies [00b58a7]
  - @modern-js/utils@2.28.0
  - @modern-js/server-core@2.28.0
  - @modern-js/plugin@2.28.0

## 2.27.0

### Patch Changes

- Updated dependencies [91d14b8]
- Updated dependencies [6d7104d]
  - @modern-js/utils@2.27.0
  - @modern-js/server-core@2.27.0
  - @modern-js/plugin@2.27.0

## 2.26.0

### Patch Changes

- @modern-js/server-core@2.26.0
- @modern-js/plugin@2.26.0
- @modern-js/utils@2.26.0

## 2.25.2

### Patch Changes

- Updated dependencies [63d8247]
- Updated dependencies [6651684]
- Updated dependencies [272646c]
- Updated dependencies [358ed24]
  - @modern-js/utils@2.25.2
  - @modern-js/server-core@2.25.2
  - @modern-js/plugin@2.25.2

## 2.25.1

### Patch Changes

- Updated dependencies [9f78d0c]
  - @modern-js/utils@2.25.1
  - @modern-js/server-core@2.25.1
  - @modern-js/plugin@2.25.1

## 2.25.0

### Minor Changes

- 2491875: feat(prod-server): get body from request when ssr mode
  feat(prod-server): 开启 ssr 时从 request 获取 body

### Patch Changes

- 5732c6a: feat: support for fallback SSR using request header fields
  feat: 支持通过请求头字段来降级 SSR
- Updated dependencies [5732c6a]
  - @modern-js/utils@2.25.0
  - @modern-js/server-core@2.25.0
  - @modern-js/plugin@2.25.0

## 2.24.0

### Patch Changes

- Updated dependencies [c882fbd]
- Updated dependencies [4a82c3b]
  - @modern-js/utils@2.24.0
  - @modern-js/server-core@2.24.0
  - @modern-js/plugin@2.24.0

## 2.23.1

### Patch Changes

- Updated dependencies [f08bbfc]
- Updated dependencies [a6b313a]
- Updated dependencies [8f2cab0]
  - @modern-js/utils@2.23.1
  - @modern-js/server-core@2.23.1
  - @modern-js/plugin@2.23.1

## 2.23.0

### Patch Changes

- 7e6fb5f: chore: publishConfig add provenance config

  chore: publishConfig 增加 provenance 配置

- Updated dependencies [7e6fb5f]
- Updated dependencies [a7a7ad7]
- Updated dependencies [6dec7c2]
- Updated dependencies [c3216b5]
  - @modern-js/plugin@2.23.0
  - @modern-js/utils@2.23.0
  - @modern-js/server-core@2.23.0

## 2.22.1

### Patch Changes

- 1f02cd2: chore: fix some eslint issues

  chore: 修复一些 eslint issues

- Updated dependencies [e2848a2]
- Updated dependencies [d4045ed]
  - @modern-js/utils@2.22.1
  - @modern-js/server-core@2.22.1
  - @modern-js/plugin@2.22.1

## 2.22.0

### Minor Changes

- 4991c8a: feat: support custom render html
  feat: 支持自定义渲染 html.
- cb9e1ec: feat: worker ssr support server hooks
  feat: worker ssr 支持 server hooks

### Patch Changes

- ea961e7: fix: use path.resolve instead path.join for distPath
  fix: 使用 path.resolve 代替 path.join 处理产物目录
- Updated dependencies [3d48836]
- Updated dependencies [5050e8e]
  - @modern-js/utils@2.22.0
  - @modern-js/server-core@2.22.0
  - @modern-js/plugin@2.22.0

## 2.21.1

### Patch Changes

- 78e3ac8: fix(prod-server): worker ssr should pass baseUrl & url by request.
  fix(prod-server): worker ssr 通过 request 应该传递 baseUrl & url .
- 2728724: fix(prod-server): the ssr render maybe get invalid url, like `http:///`
  fix(prod-server): ssr 渲染函数可能获得非法 url, 类似 `http:///`
  - @modern-js/server-core@2.21.1
  - @modern-js/utils@2.21.1

## 2.21.0

### Patch Changes

- cfc5bda: feat: ssr mode support async entry
  feat: ssr 模式支持异步入口
- 26dcf3a: chore: bump typescript to v5 in devDependencies

  chore: 升级 devDependencies 中的 typescript 版本到 v5

- 43b4e83: feat: support security.nonce for add nonce attribute on script tag
  feat: 支持 security.nonce 配置，为 script 标签添加 nonce 属性
- Updated dependencies [e81eeaf]
- Updated dependencies [26dcf3a]
- Updated dependencies [056627f]
- Updated dependencies [0fc15ca]
- Updated dependencies [43b4e83]
- Updated dependencies [ad78387]
  - @modern-js/utils@2.21.0
  - @modern-js/server-core@2.21.0

## 2.20.0

### Patch Changes

- 6b9d90a: chore: remove @babel/runtime. add @swc/helper and enable `externalHelper` config.
  chore: 移除 @babel/runtime 依赖. 增加 @swc/helpers 依赖并且开启 `externalHelpers` 配置
- 4425fd6: fix: worker ssr context lack some fields & worker ssr must have routerManifest.json
  fix: worker ssr 上下文缺少一些字段，worker ssr 必须有 routerManifest.json 文件
- Updated dependencies [3c4e0a5]
- Updated dependencies [6b9d90a]
  - @modern-js/utils@2.20.0
  - @modern-js/server-core@2.20.0

## 2.19.1

### Patch Changes

- @modern-js/server-core@2.19.1
- @modern-js/utils@2.19.1

## 2.19.0

### Patch Changes

- Updated dependencies [1134fe2]
  - @modern-js/utils@2.19.0
  - @modern-js/server-core@2.19.0

## 2.18.1

### Patch Changes

- @modern-js/server-core@2.18.1
- @modern-js/utils@2.18.1

## 2.18.0

### Patch Changes

- @modern-js/server-core@2.18.0
- @modern-js/utils@2.18.0

## 2.17.1

### Patch Changes

- @modern-js/server-core@2.17.1
- @modern-js/utils@2.17.1

## 2.17.0

### Patch Changes

- @modern-js/server-core@2.17.0
- @modern-js/utils@2.17.0

## 2.16.0

### Patch Changes

- 4e876ab: chore: package.json include the monorepo-relative directory

  chore: 在 package.json 中声明 monorepo 的子路径

- Updated dependencies [5954330]
- Updated dependencies [7596520]
- Updated dependencies [4e876ab]
  - @modern-js/utils@2.16.0
  - @modern-js/server-core@2.16.0

## 2.15.0

### Patch Changes

- @modern-js/server-core@2.15.0
- @modern-js/utils@2.15.0

## 2.14.0

### Patch Changes

- 60a81d0: feat: add ssr.inlineScript for use inline json instead inline script when ssr
  feat: 添加 ssr.inlineScript 用于在 ssr 模式下使用内联 json 而不是内联脚本
- Updated dependencies [4779152]
- Updated dependencies [8a3c693]
- Updated dependencies [9321bef]
- Updated dependencies [9b45c58]
- Updated dependencies [52d0cb1]
- Updated dependencies [60a81d0]
- Updated dependencies [dacef96]
- Updated dependencies [16399fd]
  - @modern-js/utils@2.14.0
  - @modern-js/server-core@2.14.0

## 2.13.4

### Patch Changes

- @modern-js/server-core@2.13.4
- @modern-js/utils@2.13.4

## 2.13.3

### Patch Changes

- @modern-js/server-core@2.13.3
- @modern-js/utils@2.13.3

## 2.13.2

### Patch Changes

- @modern-js/server-core@2.13.2
- @modern-js/utils@2.13.2

## 2.13.1

### Patch Changes

- @modern-js/server-core@2.13.1
- @modern-js/utils@2.13.1

## 2.13.0

### Patch Changes

- @modern-js/server-core@2.13.0
- @modern-js/utils@2.13.0

## 2.12.0

### Patch Changes

- 7980842: fix: function injectServerData name typo

  fix: 修复 injectServerData 函数命名错误

- Updated dependencies [c2ca6c8]
- Updated dependencies [6d86e34]
  - @modern-js/utils@2.12.0
  - @modern-js/server-core@2.12.0

## 2.11.0

### Patch Changes

- 381a3b9: feat(utils): move universal utils to the universal folder

  feat(utils): 将运行时使用的 utils 移动到 universal 目录

- Updated dependencies [cfb058f]
- Updated dependencies [0bd018b]
- Updated dependencies [5d624fd]
- Updated dependencies [e2466a1]
- Updated dependencies [02bb383]
- Updated dependencies [381a3b9]
- Updated dependencies [7a60f10]
- Updated dependencies [274b2e5]
- Updated dependencies [b9e1c54]
  - @modern-js/utils@2.11.0
  - @modern-js/server-core@2.11.0

## 2.10.0

### Minor Changes

- d8bbf28: feat: .env file should be load when prod server is started
  feat: 在 server 启动时，.env 文件应该被加载

### Patch Changes

- 3e0bd50: feat: when enable bff handle render, support use `useContext` to get framework plugin context in data loader.
  feat: 当开启 BFF 托管渲染时，支持在 data loader 中使用 `useContext` 获取框架插件提供的上下文。
- 92d247f: fix: support tools.devServer.header include string[] type, remove get & delete & apply api in hook or middleware api
  fix: 支持 tools.devServer.header 包含字符串数组类型，移除 Hook 和 Middleware 中对 响应 Cookie 的获取、删除操作
- 0da32d0: chore: upgrade jest and puppeteer
  chore: 升级 jest 和 puppeteer 到 latest
- 0d9962b: fix: add types field in package.json
  fix: 添加 package.json 中的 types 字段
- Updated dependencies [3e0bd50]
- Updated dependencies [0da32d0]
- Updated dependencies [fbefa7e]
- Updated dependencies [4d54233]
- Updated dependencies [6db4864]
  - @modern-js/server-core@2.10.0
  - @modern-js/utils@2.10.0

## 2.9.0

### Patch Changes

- 49bb8cd0ef: fix: move chunkmap.css comment to bottom of head
  fix: 将 chunkmap.css 标记移动到 head 底部
  - @modern-js/server-core@2.9.0
  - @modern-js/utils@2.9.0

## 2.8.0

### Patch Changes

- 1104a9f18b: feat: support start web service only
  feat: 支持只启动 web 服务
- 70d82e1408: fix: use mock host instead real url host for url parse, for new URL not support ipv6, and we only need parse url path & search
  fix: 使用虚拟的域名代替真实的主机名，因为 new URL 不支持解析 ipv6 的域名，并且我们只需要解析 url 的路径和查询字符串
- Updated dependencies [1104a9f18b]
- Updated dependencies [1f6ca2c7fb]
  - @modern-js/utils@2.8.0
  - @modern-js/server-core@2.8.0

## 2.7.0

### Minor Changes

- 84bfb439b8: feat: support custom apiDir, lambdaDir and style of writing for bff
  feat: 支持定制 api 目录，lambda 目录，bff 的写法

### Patch Changes

- 7fff9020e1: chore: make file naming consistent

  chore: 统一文件命名为小驼峰格式

- 1eea234fdd: chore: make test files naming consistent

  chore: 统一测试文件命名为小驼峰格式

- Updated dependencies [0f15fc597c]
- Updated dependencies [dcad887024]
- Updated dependencies [a4672f7c16]
- Updated dependencies [7fff9020e1]
- Updated dependencies [1eea234fdd]
- Updated dependencies [84bfb439b8]
  - @modern-js/utils@2.7.0
  - @modern-js/server-core@2.7.0

## 2.6.0

### Patch Changes

- 36164a2: fix: env.PORT should be respected when using listenOptions
  fix: 当使用 listenOptions 时，env.PORT 应该被支持
- 49fa0b1: fix: remove header info from SSR ctx to avoid security issues, reserved a switch
  fix: 移除 SSR 上下文中的 header 信息，避免造成安全问题，预留一个字段开启
- Updated dependencies [e1f799e]
- Updated dependencies [7915ab3]
- Updated dependencies [0fe658a]
  - @modern-js/utils@2.6.0
  - @modern-js/server-core@2.6.0

## 2.5.0

### Patch Changes

- 89ca6cc: refactor: merge build-config into scripts/build

  refactor: 把 build-config 合并进 scripts/build

- 6fca567: feat: support bff handle complete server, include page render
  feat: 支持 bff 处理整个服务，包括页面渲染
- 30614fa: chore: modify package.json entry fields and build config
  chore: 更改 package.json entry 字段以及构建配置
- 11c053b: feat: ssr support deploy worker

  feat: ssr 支持边缘部署

- 169c58b: feat: support force csr config
  feat: 支持强制 CSR 的配置
- Updated dependencies [89ca6cc]
- Updated dependencies [6fca567]
- Updated dependencies [30614fa]
- Updated dependencies [1b0ce87]
- Updated dependencies [11c053b]
- Updated dependencies [169c58b]
  - @modern-js/server-core@2.5.0
  - @modern-js/utils@2.5.0

## 2.4.0

### Patch Changes

- Updated dependencies [98a2733]
- Updated dependencies [8c2db5f]
  - @modern-js/utils@2.4.0
  - @modern-js/server-core@2.4.0

## 2.3.0

### Patch Changes

- Updated dependencies [fd5a3ed]
- Updated dependencies [6ca1c0b]
- Updated dependencies [89b6739]
  - @modern-js/utils@2.3.0
  - @modern-js/server-core@2.3.0

## 2.2.0

### Patch Changes

- 2d3e3df: fix(prod-server): failed to match html inside config/public directory

  fix(prod-server): 修复无法正确匹配 config/public 目录下的 HTML 文件 URL 的问题

- Updated dependencies [49eff0c]
  - @modern-js/utils@2.2.0
  - @modern-js/server-core@2.2.0

## 2.1.0

### Patch Changes

- Updated dependencies [837620c]
- Updated dependencies [8a9482c]
  - @modern-js/utils@2.1.0
  - @modern-js/server-core@2.1.0

## 2.0.2

### Patch Changes

- @modern-js/server-core@2.0.2
- @modern-js/utils@2.0.2

## 2.0.1

### Patch Changes

- @modern-js/server-core@2.0.1
- @modern-js/utils@2.0.1

## 2.0.0

### Major Changes

- dda38c9c3e: chore: v2

### Minor Changes

- c9e800d39a: feat: support React18 streaming SSR
  feat: 支持 React18 流式 SSR

### Patch Changes

- Updated dependencies [edd1cfb1af]
- Updated dependencies [dda38c9c3e]
- Updated dependencies [ffb2ed4]
- Updated dependencies [bbe4c4ab64]
  - @modern-js/utils@2.0.0
  - @modern-js/server-core@2.0.0

## 2.0.0-beta.7

### Major Changes

- dda38c9c3e: chore: v2

### Minor Changes

- c9e800d39a: feat: support React18 streaming SSR
  feat: 支持 React18 流式 SSR

### Patch Changes

- Updated dependencies [edd1cfb1af]
- Updated dependencies [dda38c9c3e]
- Updated dependencies [bbe4c4ab64]
  - @modern-js/utils@2.0.0-beta.7
  - @modern-js/server-core@2.0.0-beta.7

## 2.0.0-beta.6

### Major Changes

- dda38c9c3e: chore: v2

### Minor Changes

- c9e800d39a: feat: support React18 streaming SSR
  feat: 支持 React18 流式 SSR
- 543be9558e: feat: compile server loader and support handle loader request
  feat: 编译 server loader 并支持处理 loader 的请求

### Patch Changes

- 7879e8f711: refactor: remove enableModernMode config

  refactor: 不再支持 enableModernMode 配置项

- d032d49e09: export createHandle
  导出 createHandle 函数
- 15bf09d9c8: feat: support completely custom server, export render() api for render single page
  feat: 支持完全自定义 Server，导出 render() 方法用来渲染单个页面
- cc971eabfc: refactor: move server plugin load logic in `@modern-js/core`
  refactor：移除在 `@modern-js/core` 中的 server 插件加载逻辑
- 40ed5874c6: feat: inject css chunk into html for streaming ssr
  feat: streaming ssr 返回的 html 注入 css chunk
- 102d32e4ba: feat(server): add `req` and `res` to SSR context

  feat(server): 添加 `req` 和 `res` 到 SSR context 中

- 3bbea92b2a: feat: support Hook、Middleware new API
  feat: 支持 Hook、Middleware 的新 API
- 73cd29dd9f: fix(server): add favicon fallback handler

  fix(server): 添加 favicon 兜底处理逻辑

- cce8ecee2d: fix: handle some `TODO` & `FIXME`, change some tests
  fix: 处理一些 `TODO` 和 `FIXME`, 修改了一些 tests
- 18aaf42249: fix: fix server loader redirects
  fix: 修复 server loader 重定向错误
- 14b712da84: fix: use consistent alias type and default value across packages

  fix: 在各个包中使用一致的 alias 类型定义和默认值

- Updated dependencies [7879e8f711]
- Updated dependencies [6aca875011]
- Updated dependencies [15bf09d9c8]
- Updated dependencies [2e6031955e]
- Updated dependencies [7b7d12cf8f]
- Updated dependencies [7efeed4]
- Updated dependencies [92f0eade39]
- Updated dependencies [edd1cfb1af]
- Updated dependencies [cc971eabfc]
- Updated dependencies [5b9049f2e9]
- Updated dependencies [92004d1906]
- Updated dependencies [b8bbe036c7]
- Updated dependencies [d5a31df781]
- Updated dependencies [dda38c9c3e]
- Updated dependencies [3bbea92b2a]
- Updated dependencies [b710adb843]
- Updated dependencies [ea7cf06257]
- Updated dependencies [bbe4c4ab64]
- Updated dependencies [e4558a0bc4]
- Updated dependencies [abf3421a75]
- Updated dependencies [543be9558e]
- Updated dependencies [14b712da84]
  - @modern-js/utils@2.0.0-beta.6
  - @modern-js/server-core@2.0.0-beta.6

## 2.0.0-beta.4

### Major Changes

- dda38c9c3e: chore: v2

### Minor Changes

- c9e800d39a: feat: support React18 streaming SSR
  feat: 支持 React18 流式 SSR
- 543be9558e: feat: compile server loader and support handle loader request
  feat: 编译 server loader 并支持处理 loader 的请求

### Patch Changes

- 7879e8f: refactor: remove enableModernMode config

  refactor: 不再支持 enableModernMode 配置项

- d032d49e09: export createHandle
  导出 createHandle 函数
- 15bf09d9c8: feat: support completely custom server, export render() api for render single page
  feat: 支持完全自定义 Server，导出 render() 方法用来渲染单个页面
- cc971eabfc: refactor: move server plugin load logic in `@modern-js/core`
  refactor：移除在 `@modern-js/core` 中的 server 插件加载逻辑
- 40ed5874c6: feat: inject css chunk into html for streaming ssr
  feat: streaming ssr 返回的 html 注入 css chunk
- 102d32e4ba: feat(server): add `req` and `res` to SSR context

  feat(server): 添加 `req` 和 `res` 到 SSR context 中

- 3bbea92b2a: feat: support Hook、Middleware new API
  feat: 支持 Hook、Middleware 的新 API
- 73cd29dd9f: fix(server): add favicon fallback handler

  fix(server): 添加 favicon 兜底处理逻辑

- cce8ecee2d: fix: handle some `TODO` & `FIXME`, change some tests
  fix: 处理一些 `TODO` 和 `FIXME`, 修改了一些 tests
- 18aaf42249: fix: fix server loader redirects
  fix: 修复 server loader 重定向错误
- 14b712da84: fix: use consistent alias type and default value across packages

  fix: 在各个包中使用一致的 alias 类型定义和默认值

- Updated dependencies [7879e8f]
- Updated dependencies [6aca875]
- Updated dependencies [15bf09d9c8]
- Updated dependencies [2e6031955e]
- Updated dependencies [7b7d12c]
- Updated dependencies [92f0eade39]
- Updated dependencies [edd1cfb1af]
- Updated dependencies [cc971eabfc]
- Updated dependencies [5b9049f2e9]
- Updated dependencies [92004d1906]
- Updated dependencies [b8bbe036c7]
- Updated dependencies [d5a31df781]
- Updated dependencies [dda38c9c3e]
- Updated dependencies [3bbea92b2a]
- Updated dependencies [b710adb843]
- Updated dependencies [ea7cf06]
- Updated dependencies [bbe4c4a]
- Updated dependencies [e4558a0]
- Updated dependencies [abf3421a75]
- Updated dependencies [543be9558e]
- Updated dependencies [14b712da84]
  - @modern-js/utils@2.0.0-beta.4
  - @modern-js/server-core@2.0.0-beta.4

## 2.0.0-beta.3

### Major Changes

- dda38c9c3e: chore: v2

### Minor Changes

- c9e800d39a: feat: support React18 streaming SSR
  feat: 支持 React18 流式 SSR
- 543be9558e: feat: compile server loader and support handle loader request
  feat: 编译 server loader 并支持处理 loader 的请求

### Patch Changes

- d032d49e09: export createHandle
  导出 createHandle 函数
- 15bf09d9c8: feat: support completely custom server, export render() api for render single page
  feat: 支持完全自定义 Server，导出 render() 方法用来渲染单个页面
- cc971eabfc: refactor: move server plugin load logic in `@modern-js/core`
  refactor：移除在 `@modern-js/core` 中的 server 插件加载逻辑
- 40ed5874c6: feat: inject css chunk into html for streaming ssr
  feat: streaming ssr 返回的 html 注入 css chunk
- 102d32e4ba: feat(server): add `req` and `res` to SSR context

  feat(server): 添加 `req` 和 `res` 到 SSR context 中

- 3bbea92b2a: feat: support Hook、Middleware new API
  feat: 支持 Hook、Middleware 的新 API
- 73cd29dd9f: fix(server): add favicon fallback handler

  fix(server): 添加 favicon 兜底处理逻辑

- cce8ece: fix: handle some `TODO` & `FIXME`, change some tests
  fix: 处理一些 `TODO` 和 `FIXME`, 修改了一些 tests
- 18aaf42249: fix: fix server loader redirects
  fix: 修复 server loader 重定向错误
- 14b712da84: fix: use consistent alias type and default value across packages

  fix: 在各个包中使用一致的 alias 类型定义和默认值

- Updated dependencies [6aca875]
- Updated dependencies [15bf09d9c8]
- Updated dependencies [2e60319]
- Updated dependencies [92f0eade39]
- Updated dependencies [edd1cfb1af]
- Updated dependencies [cc971eabfc]
- Updated dependencies [5b9049f2e9]
- Updated dependencies [92004d1906]
- Updated dependencies [b8bbe036c7]
- Updated dependencies [d5a31df781]
- Updated dependencies [dda38c9c3e]
- Updated dependencies [3bbea92b2a]
- Updated dependencies [b710adb]
- Updated dependencies [ea7cf06]
- Updated dependencies [bbe4c4a]
- Updated dependencies [e4558a0]
- Updated dependencies [abf3421a75]
- Updated dependencies [543be9558e]
- Updated dependencies [14b712da84]
  - @modern-js/utils@2.0.0-beta.3
  - @modern-js/server-core@2.0.0-beta.3

## 2.0.0-beta.2

### Major Changes

- dda38c9c3e: chore: v2

### Minor Changes

- c9e800d39a: feat: support React18 streaming SSR
  feat: 支持 React18 流式 SSR
- 543be9558e: feat: compile server loader and support handle loader request
  feat: 编译 server loader 并支持处理 loader 的请求

### Patch Changes

- d032d49: export createHandle
  导出 createHandle 函数
- 15bf09d9c8: feat: support completely custom server, export render() api for render single page
  feat: 支持完全自定义 Server，导出 render() 方法用来渲染单个页面
- cc971eabfc: refactor: move server plugin load logic in `@modern-js/core`
  refactor：移除在 `@modern-js/core` 中的 server 插件加载逻辑
- 40ed587: feat: inject css chunk into html for streaming ssr
  feat: streaming ssr 返回的 html 注入 css chunk
- 102d32e4ba: feat(server): add `req` and `res` to SSR context

  feat(server): 添加 `req` 和 `res` 到 SSR context 中

- 3bbea92b2a: feat: support Hook、Middleware new API
  feat: 支持 Hook、Middleware 的新 API
- 73cd29dd9f: fix(server): add favicon fallback handler

  fix(server): 添加 favicon 兜底处理逻辑

- 18aaf42: fix: fix server loader redirects
  fix: 修复 server loader 重定向错误
- 14b712da84: fix: use consistent alias type and default value across packages

  fix: 在各个包中使用一致的 alias 类型定义和默认值

- Updated dependencies [15bf09d9c8]
- Updated dependencies [92f0ead]
- Updated dependencies [edd1cfb1af]
- Updated dependencies [cc971eabfc]
- Updated dependencies [5b9049f2e9]
- Updated dependencies [92004d1]
- Updated dependencies [b8bbe036c7]
- Updated dependencies [d5a31df781]
- Updated dependencies [dda38c9c3e]
- Updated dependencies [3bbea92b2a]
- Updated dependencies [abf3421a75]
- Updated dependencies [543be9558e]
- Updated dependencies [14b712da84]
  - @modern-js/server-core@2.0.0-beta.2
  - @modern-js/utils@2.0.0-beta.2

## 2.0.0-beta.1

### Major Changes

- dda38c9: chore: v2

### Minor Changes

- c9e800d39a: feat: support React18 streaming SSR
  feat: 支持 React18 流式 SSR
- 543be9558e: feat: compile server loader and support handle loader request
  feat: 编译 server loader 并支持处理 loader 的请求

### Patch Changes

- d032d49: export createHandle
  导出 createHandle 函数
- 15bf09d9c8: feat: support completely custom server, export render() api for render single page
  feat: 支持完全自定义 Server，导出 render() 方法用来渲染单个页面
- cc971eabfc: refactor: move server plugin load logic in `@modern-js/core`
  refactor：移除在 `@modern-js/core` 中的 server 插件加载逻辑
- 40ed587: feat: inject css chunk into html for streaming ssr
  feat: streaming ssr 返回的 html 注入 css chunk
- 102d32e4ba: feat(server): add `req` and `res` to SSR context

  feat(server): 添加 `req` 和 `res` 到 SSR context 中

- 3bbea92b2a: feat: support Hook、Middleware new API
  feat: 支持 Hook、Middleware 的新 API
- 73cd29dd9f: fix(server): add favicon fallback handler

  fix(server): 添加 favicon 兜底处理逻辑

- 18aaf42: fix: fix server loader redirects
  fix: 修复 server loader 重定向错误
- 14b712d: fix: use consistent alias type and default value across packages

  fix: 在各个包中使用一致的 alias 类型定义和默认值

- Updated dependencies [15bf09d9c8]
- Updated dependencies [92f0ead]
- Updated dependencies [edd1cfb1af]
- Updated dependencies [cc971eabfc]
- Updated dependencies [5b9049f]
- Updated dependencies [92004d1]
- Updated dependencies [b8bbe036c7]
- Updated dependencies [d5a31df781]
- Updated dependencies [dda38c9]
- Updated dependencies [3bbea92b2a]
- Updated dependencies [abf3421]
- Updated dependencies [543be9558e]
- Updated dependencies [14b712d]
  - @modern-js/server-core@2.0.0-beta.1
  - @modern-js/utils@2.0.0-beta.1

## 2.0.0-beta.0

### Major Changes

- dda38c9: chore: v2

### Minor Changes

- c9e800d39: feat: support React18 streaming SSR
  feat: 支持 React18 流式 SSR
- 543be95: feat: compile server loader and support handle loader request
  feat: 编译 server loader 并支持处理 loader 的请求

### Patch Changes

- 15bf09d9c: feat: support completely custom server, export render() api for render single page
  feat: 支持完全自定义 Server，导出 render() 方法用来渲染单个页面
- cc971eabf: refactor: move server plugin load logic in `@modern-js/core`
  refactor：移除在 `@modern-js/core` 中的 server 插件加载逻辑
- 102d32e4b: feat(server): add `req` and `res` to SSR context

  feat(server): 添加 `req` 和 `res` 到 SSR context 中

- 3bbea92b2: feat: support Hook、Middleware new API
  feat: 支持 Hook、Middleware 的新 API
- 73cd29dd9: fix(server): add favicon fallback handler

  fix(server): 添加 favicon 兜底处理逻辑

- 14b712d: fix: use consistent alias type and default value across packages

  fix: 在各个包中使用一致的 alias 类型定义和默认值

- Updated dependencies [15bf09d9c]
- Updated dependencies [edd1cfb1a]
- Updated dependencies [cc971eabf]
- Updated dependencies [5b9049f]
- Updated dependencies [b8bbe036c]
- Updated dependencies [d5a31df78]
- Updated dependencies [dda38c9]
- Updated dependencies [3bbea92b2]
- Updated dependencies [abf3421]
- Updated dependencies [543be95]
- Updated dependencies [14b712d]
  - @modern-js/server-core@2.0.0-beta.0
  - @modern-js/utils@2.0.0-beta.0

## 1.21.2

### Patch Changes

- Updated dependencies [9d4c0ba]
  - @modern-js/server-core@1.21.2
  - @modern-js/utils@1.21.2

## 1.21.1

### Patch Changes

- @modern-js/server-core@1.21.1
- @modern-js/utils@1.21.1

## 1.21.0

### Patch Changes

- f51c59a: feat: remove node internal package like fs or path which import by ssr runtime
  feat: 删除在 ssr runtime 中引用的 node 内部包
- 8f3674a: chore: reduce parameters for dev-server & update default config value in builder startDevServer

  chore: 缩简 devServer 配置定义 & 更新 builder startDevServer 方法 config 默认值

- 519965e: fix: should not do render if set location header and 302 status in middleware
  fix: 如果在 middleware 中设置了 location 头和 302 状态码，则不应该走渲染逻辑
- 67d80b7: fix(prod-server): failed to match URL which ends with ".html"

  fix(prod-server): 修复无法匹配到以 ".html" 结尾的 URL 的问题

  - @modern-js/server-core@1.21.0
  - @modern-js/utils@1.21.0

## 1.20.1

### Patch Changes

- Updated dependencies [49515c5]
  - @modern-js/utils@1.20.1
  - @modern-js/server-core@1.20.1

## 1.20.0

### Patch Changes

- baf7337: fix: console error message if error stack not exist
  fix: 如果错误堆栈不存在，则输出错误信息
- Updated dependencies [d5d570b]
- Updated dependencies [4ddc185]
- Updated dependencies [df8ee7e]
- Updated dependencies [8c05089]
  - @modern-js/utils@1.20.0
  - @modern-js/server-core@1.20.0

## 1.19.0

### Patch Changes

- 1903f68: fix(server): failed to access static files when output.assetPrefix ends with /

  fix(server): 修复 output.assetPrefix 以 / 结尾时无法正确访问的问题

  - @modern-js/server-core@1.19.0
  - @modern-js/utils@1.19.0

## 1.18.1

### Patch Changes

- 3586707: fix: the compaire-version throw error make the supportModern error
  fix: compaire-version 的抛错导致 supportModern 失败
- f6a3aa1: feat: support etag in dev server by default
  feat: 开发环境默认支持 etag 功能
- 9f7bfa6: fix: fix the problem that the response header cannot be redirected when setting in ssr
  fix: 修复在 SSR 中设置响应头却无法重定向的问题
- Updated dependencies [9fcfbd4]
- Updated dependencies [6c2c745]
  - @modern-js/utils@1.18.1
  - @modern-js/server-core@1.18.1

## 1.18.0

### Patch Changes

- 3d5e3a5: chore: get api mode from bff core
  chore: 从 bff core 中获取 api mode
- Updated dependencies [8280920]
- Updated dependencies [3d5e3a5]
- Updated dependencies [5227370]
- Updated dependencies [7928bae]
  - @modern-js/utils@1.18.0
  - @modern-js/server-core@1.18.0

## 1.17.0

### Patch Changes

- Updated dependencies [1b9176f]
- Updated dependencies [77d3a38]
- Updated dependencies [151329d]
- Updated dependencies [5af9472]
- Updated dependencies [6b6a534]
- Updated dependencies [6b43a2b]
- Updated dependencies [a7be124]
- Updated dependencies [31547b4]
  - @modern-js/utils@1.17.0
  - @modern-js/server-core@1.17.0

## 1.16.0

### Patch Changes

- 81c66e4a4: fix: compatibility issues of dev server in iOS 10

  fix: 修复 dev server 代码在 iOS 10 下的兼容性问题

- Updated dependencies [641592f52]
- Updated dependencies [3904b30a5]
- Updated dependencies [1100dd58c]
- Updated dependencies [e04e6e76a]
- Updated dependencies [81c66e4a4]
- Updated dependencies [2c305b6f5]
  - @modern-js/utils@1.16.0
  - @modern-js/server-core@1.16.0

## 1.15.0

### Patch Changes

- c087148: chore: remove cookie in error log
  chore: 删除错误日志中的 cookie 信息
- Updated dependencies [8658a78]
- Updated dependencies [05d4a4f]
- Updated dependencies [ad05af9]
- Updated dependencies [5d53d1c]
- Updated dependencies [37cd159]
  - @modern-js/utils@1.15.0
  - @modern-js/server-core@1.15.0

## 1.2.2

### Patch Changes

- 0e28456: fix assets prefix bug in prod env
- 44e3bb1: feat: support response headers
  feat: 支持设置响应头
  - @modern-js/server-core@1.4.1
  - @modern-js/utils@1.8.0

## 1.2.1

### Patch Changes

- 2ed8f7d: fix: the \_SERVER_DATA injection twice causes the prod-server route error.
  fix: \_SERVER_DATA 二次注入，导致服务器路由错误
- Updated dependencies [4fc801f]
- Updated dependencies [c8614b8]
  - @modern-js/utils@1.8.0
  - @modern-js/server-core@1.4.1

## 1.2.0

### Minor Changes

- 3d64b2f: feat: prod-server supports that load server env from .env.\*

  feat: prod-server 支持从 .env.\* 文件加载服务器环境变量

### Patch Changes

- 7b902b3: feat: support ListenOptions for prod-server

  feat: server 支持传入 listernOptions 参数

- Updated dependencies [a27ab8d]
  - @modern-js/server-core@1.4.1
  - @modern-js/utils@1.7.12

## 1.1.9

### Patch Changes

- f29e9ba: feat: simplify context usage, no longer depend on containers
- 2dacc89: support set header & status in render
- Updated dependencies [77a8e9e]
- Updated dependencies [f29e9ba]
- Updated dependencies [a90bc96]
  - @modern-js/server-core@1.4.0
  - @modern-js/utils@1.7.9

## 1.1.8

### Patch Changes

- a1198d509: feat: bump babel 7.18.0
  - @modern-js/server-core@1.3.5

## 1.1.7

### Patch Changes

- d4afeba71: fix: remove cors for prod-server

## 1.1.6

### Patch Changes

- 430d417e: optimize server side hot reload
- Updated dependencies [6451a098]
- Updated dependencies [d5a2cfd8]
- Updated dependencies [437367c6]
  - @modern-js/utils@1.7.6
  - @modern-js/server-core@1.3.5

## 1.1.5

### Patch Changes

- d32f35134: chore: add modern/jest/eslint/ts config files to .npmignore
- 86fe5a657: support handle server context init error
- Updated dependencies [d32f35134]
- Updated dependencies [6ae4a34ae]
- Updated dependencies [b80229c79]
- Updated dependencies [948cc4436]
  - @modern-js/server-core@1.3.5
  - @modern-js/utils@1.7.3

## 1.1.4

### Patch Changes

- 69a728375: fix: remove exports.jsnext:source after publish
- Updated dependencies [cd7346b0d]
- Updated dependencies [69a728375]
  - @modern-js/utils@1.7.2
  - @modern-js/server-core@1.3.4

## 1.1.3

### Patch Changes

- a4c5fe78: fix test case
- 6fa74d5f: add internal metrics and logger
- Updated dependencies [0ee4bb4e]
- Updated dependencies [6fa74d5f]
  - @modern-js/utils@1.7.0
  - @modern-js/server-core@1.3.3

## 1.1.2

### Patch Changes

- a0499e4f: fix: throw error in server config
- 592edabc: feat: prebundle url-join,mime-types,json5,fast-glob,globby,ora,inquirer
- 895fa0ff: chore: using "workspace:\*" in devDependencies
- Updated dependencies [2d155c4c]
- Updated dependencies [123e432d]
- Updated dependencies [e5a9b26d]
- Updated dependencies [0b26b93b]
- Updated dependencies [123e432d]
- Updated dependencies [f9f66ef9]
- Updated dependencies [592edabc]
- Updated dependencies [895fa0ff]
- Updated dependencies [3578913e]
- Updated dependencies [1c3beab3]
  - @modern-js/utils@1.6.0
  - @modern-js/server-core@1.3.2

## 1.1.1

### Patch Changes

- 6cffe99d: chore:
  remove react eslint rules for `modern-js` rule set.
  add .eslintrc for each package to speed up linting
- 04ae5262: chore: bump @modern-js/utils to v1.4.1 in dependencies
- 60f7d8bf: feat: add tests dir to npmignore
- Updated dependencies [b8599d09]
- Updated dependencies [04ae5262]
- Updated dependencies [60f7d8bf]
- Updated dependencies [3bf4f8b0]
  - @modern-js/utils@1.5.0
  - @modern-js/server-core@1.3.1

## 1.1.0

### Minor Changes

- d2d1d6b2: feat: support server config

### Patch Changes

- 17d0cc46: feat: prebundle lodash to @modern-js/utils/lodash
- Updated dependencies [77ff9754]
- Updated dependencies [d2d1d6b2]
- Updated dependencies [07a4887e]
- Updated dependencies [ea2ae711]
- Updated dependencies [17d0cc46]
- Updated dependencies [d2d1d6b2]
  - @modern-js/utils@1.4.0
  - @modern-js/server-core@1.3.0

## 1.0.6

### Patch Changes

- bebb39b6: chore: improve devDependencies and peerDependencies
- 132f7b53: feat: move config declarations to @modern-js/core
- Updated dependencies [bebb39b6]
- Updated dependencies [132f7b53]
  - @modern-js/server-core@1.2.5
  - @modern-js/utils@1.3.7

## 1.0.5

### Patch Changes

- d2d0fa11: fix: missing devServer.proxy typing
- Updated dependencies [a8df060e]
- Updated dependencies [c2046f37]
- Updated dependencies [18db013a]
  - @modern-js/server-core@1.2.4
  - @modern-js/utils@1.3.6

## 1.0.4

### Patch Changes

- d95f28c3: should enable babel register before server plugin require
- d95f28c3: remove server hook when api only
- 0923c182: fix static handler when static file not exist
- 2008fdbd: convert two packages server part, support server load plugin itself
- ca0bcf13: publish prod-server local
- Updated dependencies [5bf5868d]
- Updated dependencies [d95f28c3]
- Updated dependencies [2e8dec93]
- Updated dependencies [2008fdbd]
- Updated dependencies [2e8dec93]
  - @modern-js/utils@1.3.5
  - @modern-js/server-core@1.2.3

## 1.0.2

### Patch Changes

- a78e32d8: remove server hook when api only
- e11eaafc: fix runner error in dev
- cbba492b: add serverless pre-render unit-test
- 59010b7a: rewrite server lifecycle, add unit test
- Updated dependencies [cc5e8001]
- Updated dependencies [2520ea86]
- Updated dependencies [db43dce6]
- Updated dependencies [e81fd9b7]
- Updated dependencies [1c411e71]
  - @modern-js/core@1.4.6
  - @modern-js/utils@1.3.4

## 1.0.1

### Patch Changes

- 02fb4146: support product server
- Updated dependencies [969f172f]
- Updated dependencies [4c792f68]
- Updated dependencies [4b5d4bf4]
- Updated dependencies [62f5b8c8]
- Updated dependencies [55e18278]
- Updated dependencies [4499a674]
- Updated dependencies [403f5169]
- Updated dependencies [a7f42f48]
  - @modern-js/core@1.4.4
  - @modern-js/utils@1.3.3
