Skip to content
Merged
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
47 changes: 47 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,52 @@
# Changelog

## 4.0.1 - 2026-09-01

### Highlights

- Upgrade the stable EMP v4 build stack to Rspack `2.2.1`, Rsbuild `2.2.1`, Rslib `1.0.0-rc.2`, and Module Federation `2.9.0`.
- Add compatibility-oriented build presets and acceptance coverage for modern modules, Android 6, and Chrome 60 targets.
- Strengthen dependency maintenance with deterministic core-upgrade detection, lockfile security remediation, and pnpm `10.34.5` release contracts.
- Align all 17 core `@empjs/*` packages to `4.0.1` on npm's `latest` dist-tag while preserving CDN and legacy runtime packages as independent version lines.

### Release Cover

![EMP v4.0.1 release cover](docs/assets/emp-v4-4.0.1-release-hero.png)

### What's Changed

#### Build

- Upgrade Rspack core/dev-server, Rsdoctor, Rstest, SWC, HTML integration, type checking, and the complete Module Federation 2 runtime/DTS closure.
- Remove the deprecated Rspack `cache.maxVersions` passthrough and keep persistent cache lifetime configuration on supported options.
- Migrate the Rslib v1 prerelease line to `1.0.0-rc.2` with Rsbuild `2.2.1` and native TypeScript 7 declaration generation.

#### Compatibility

- Add explicit compatibility build presets and preserve modern-module optimization coverage.
- Extend real application acceptance for legacy Android/Chrome targets, auto pages, Module Federation runtime behavior, and package output contracts.

#### Maintenance and Security

- Add a machine-readable core dependency upgrade policy with release age, peer/engine, prerelease, and migration-signal checks.
- Refresh vulnerable dependency chains without widening the unified release scope to CDN or legacy library packages.
- Keep CI, release checks, dry-run publishing, and trusted npm publishing aligned across Node.js 20, 22, and 24.

### Verification

- `corepack pnpm workflow:check`
- `corepack pnpm test:rules`
- `corepack pnpm release:check`
- `corepack pnpm ci:verify`
- `corepack pnpm empbuild`
- `corepack pnpm test:browser:all`
- `corepack pnpm release:publish:dry -- --skip-build --force-all --tag latest`
- `git diff --check`

#### Full Changelog

- Compare: `v4.0.0...v4.0.1`.

## 4.0.0 - 2026-07-16

### Highlights
Expand Down
Binary file added docs/assets/emp-v4-4.0.1-release-hero.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "emp-workspace",
"version": "4.0.0",
"version": "4.0.1",
"description": "emp workspace",
"main": "index.js",
"type": "module",
Expand Down
2 changes: 1 addition & 1 deletion packages/adapter-react/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@empjs/adapter-react",
"version": "4.0.0",
"version": "4.0.1",
"description": "emp react adapter",
"license": "MIT",
"type": "module",
Expand Down
2 changes: 1 addition & 1 deletion packages/biome-config/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@empjs/biome-config",
"version": "4.0.0",
"version": "4.0.1",
"main": "biome.jsonc",
"type": "module",
"bin": {
Expand Down
2 changes: 1 addition & 1 deletion packages/bridge-react/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@empjs/bridge-react",
"version": "4.0.0",
"version": "4.0.1",
"description": "Emp Bridge React",
"license": "MIT",
"type": "module",
Expand Down
2 changes: 1 addition & 1 deletion packages/bridge-vue2/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@empjs/bridge-vue2",
"version": "4.0.0",
"version": "4.0.1",
"description": "Emp Bridge Vue v2",
"license": "MIT",
"type": "module",
Expand Down
2 changes: 1 addition & 1 deletion packages/bridge-vue3/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@empjs/bridge-vue3",
"version": "4.0.0",
"version": "4.0.1",
"description": "Emp Bridge Vue v3",
"license": "MIT",
"type": "module",
Expand Down
2 changes: 1 addition & 1 deletion packages/cli/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@empjs/cli",
"version": "4.0.0",
"version": "4.0.1",
"description": "emp",
"license": "MIT",
"type": "module",
Expand Down
2 changes: 1 addition & 1 deletion packages/emp-chain/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@empjs/chain",
"version": "4.0.0",
"version": "4.0.1",
"description": "emp chain",
"license": "MIT",
"type": "module",
Expand Down
2 changes: 1 addition & 1 deletion packages/emp-polyfill/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@empjs/polyfill",
"version": "4.0.0",
"version": "4.0.1",
"description": "empShare runtime",
"license": "MIT",
"type": "module",
Expand Down
2 changes: 1 addition & 1 deletion packages/emp-share/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@empjs/share",
"version": "4.0.0",
"version": "4.0.1",
"description": "emp share and runtime",
"license": "MIT",
"type": "module",
Expand Down
2 changes: 1 addition & 1 deletion packages/eslint-config-react/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@empjs/eslint-config-react",
"version": "4.0.0",
"version": "4.0.1",
"main": "index.js",
"maintainers": [
"[email protected]"
Expand Down
2 changes: 1 addition & 1 deletion packages/plugin-lightningcss/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@empjs/plugin-lightningcss",
"version": "4.0.0",
"version": "4.0.1",
"description": "emp v3 lightningcss",
"type": "module",
"files": [
Expand Down
2 changes: 1 addition & 1 deletion packages/plugin-postcss/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@empjs/plugin-postcss",
"version": "4.0.0",
"version": "4.0.1",
"description": "emp postcss plugin",
"license": "MIT",
"type": "module",
Expand Down
2 changes: 1 addition & 1 deletion packages/plugin-react/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@empjs/plugin-react",
"version": "4.0.0",
"version": "4.0.1",
"description": "emp react plugin",
"license": "MIT",
"type": "module",
Expand Down
2 changes: 1 addition & 1 deletion packages/plugin-stylus/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@empjs/plugin-stylus",
"version": "4.0.0",
"version": "4.0.1",
"description": "emp stylus plugin",
"license": "MIT",
"type": "module",
Expand Down
2 changes: 1 addition & 1 deletion packages/plugin-tailwindcss/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@empjs/plugin-tailwindcss",
"version": "4.0.0",
"version": "4.0.1",
"description": "base tailwind 4",
"license": "MIT",
"type": "module",
Expand Down
2 changes: 1 addition & 1 deletion packages/plugin-vue2/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@empjs/plugin-vue2",
"version": "4.0.0",
"version": "4.0.1",
"description": "emp vue2 plugin",
"license": "MIT",
"type": "module",
Expand Down
2 changes: 1 addition & 1 deletion packages/plugin-vue3/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@empjs/plugin-vue3",
"version": "4.0.0",
"version": "4.0.1",
"description": "emp vue3 plugin",
"license": "MIT",
"type": "module",
Expand Down
2 changes: 1 addition & 1 deletion test/release.rules.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -328,7 +328,7 @@ describe('release rules', () => {
test('current repository internal release set stays explicitly bounded', async () => {
const plan = await createReleasePlan(repoRoot)

expect(plan.rootPackage.version).toBe('4.0.0')
expect(plan.rootPackage.version).toBe('4.0.1')
expect(validateReleasePlan(plan)).toEqual([])
expect(plan.internalPackages.map(pkg => pkg.name)).toEqual([
'@empjs/adapter-react',
Expand Down