Back to Ant Design Pro

Ant Design Pro v6.1.0 Release Plan

docs/roadmap/v6.1.0-release-plan.md

6.0.36.4 KB
Original Source

Ant Design Pro v6.1.0 Release Plan

Date: 2026-06-01 Status: Draft Approach: Layered progression — cleanup first, then engineering, then upgrades

Overview

v6.1.0 is a quality + upgrade release focusing on test infrastructure, bug fixes, legacy cleanup, and dependency alignment. Breaking changes are allowed where justified with migration notes.

Layer 1: Cleanup & Bug Fixes

1.2 Clean up ant-legacy-form-item CSS class references

antd v6 removed these legacy class names. Three files still reference them:

  • src/components/StandardFormRow/index.style.ts (8 references)
  • src/pages/form/advanced-form/style.style.ts (1 reference)
  • src/pages/account/settings/components/index.style.ts (1 reference)

Action: Replace .ant-legacy-form-item selectors with current antd v6 equivalents (.ant-form-item). Verify visual parity after changes.

1.3 Clean up typings.d.ts legacy module declarations

src/typings.d.ts declares modules for slash2 and omit.js — v5-era dependencies no longer in use.

Action: Grep for actual imports. If none found, remove the declarations.

1.4 Bug fixes

#IssueDescriptionApproach
1#11772valtio undefined errorTrace dependency chain; fix initialization or remove unused valtio import
2#11764OpenAPI link text visible in collapsed sidebarCSS fix to hide text or truncate when sidebar is collapsed
3#11747Windows 11 "Can't resolve 'tailwindcss'"Investigate path resolution; likely needs module resolution config fix
4#11575OpenAPI generated file first-letter case inconsistencyReview openapi config camel2Line/naming options; add normalization
5#11286Language switcher cannot be disabled in non-mix layoutsFix disableLocal prop propagation in layout config
6#11597Mask layer bug with pagination and sidebarz-index / overlay stacking fix

1.5 Clean up request interceptor demo placeholder

src/requestErrorConfig.ts appends ?token=123 to every request URL as a demo artifact.

Action: Replace with commented example or conditional (dev-only) guard. Do not remove the pattern entirely — it serves as a reference for token attachment.

Layer 2: Testing & Engineering

2.1 Migrate Jest → Vitest (#11742)

Rationale: Vitest offers native ESM, instant HMR, and Vite-native config. Jest startup is slow and ESM support is fragile.

Steps:

  1. Add vitest and @vitest/coverage-v8 dependencies
  2. Create vitest.config.ts using Umi plugin compatibility
  3. Migrate tests/ setup files (setupTests.jsx, __mocks__/)
  4. Migrate src/pages/user/login/login.test.tsx → Vitest syntax
  5. Update package.json scripts: test, test:coverage, test:ui
  6. Remove Jest dependencies: jest, @testing-library/jest-dom, related config
  7. Verify CI pipeline

Breaking change: Test authoring API changes (minimal — Vitest is Jest-compatible).

2.2 Expand test coverage

Current: 1 test file, 2 test cases, ~1% file coverage.

Priority test targets:

TargetFileWhat to test
ProTable pagesrc/pages/list/table-list/index.tsxData loading, search, pagination, CRUD operations
Dashboardsrc/pages/dashboard/analysis/index.tsxChart rendering, layout, chart data flow
Basic formsrc/pages/form/basic-form/index.tsxForm validation, submission, field interactions
Auth flowsrc/access.ts, src/app.tsxcanAdmin logic, getInitialState 401 redirect
Request interceptorsrc/requestErrorConfig.tsError handling paths, 401 redirect, token attachment

Coverage target: Core pages 50%+, overall 20%+.

2.3 CI pipeline optimization

  • Enable GitHub Actions cache for node_modules and build output
  • Parallelize PR checks: lint | typecheck | test (instead of sequential)
  • Evaluate Codecov upload — remove if coverage data remains below actionable threshold

2.4 Code quality enforcement

  • Add npx antd lint ./src to CI pipeline (currently only enforced manually)
  • Tighten Biome rules: audit warnings and elevate to errors where appropriate

Layer 3: Dependency Upgrades

3.1 Core dependencies

PackageFromToRisk
antd^6.4.36.x latestLow
@ant-design/pro-components^3.1.12-03.x stableLow
@ant-design/x^2.7.02.x latestLow
@ant-design/x-markdown^2.7.02.x latestLow
@ant-design/x-sdk^2.7.02.x latestLow
@umijs/max^4.6.514.x latestMedium — check breaking notes
React / React DOM^19.2.5Stay (React 20 not released)

3.2 Toolchain dependencies

PackageFromTo
TypeScript^6.0.36.x latest
Biome^2.4.132.x latest
Tailwind CSS^4.2.44.x latest
Express (mock)^5.2.15.x latest
@tanstack/react-query^5.100.65.x latest
d3^7.9.07.x latest or evaluate alternatives

3.3 Evaluation items (investigate before upgrading)

  • Node.js 22: Currently requires >= 20. Assess whether raising to >= 22 is warranted.
  • utoopack: Check for significant updates or breaking changes in the build toolchain.
  • @tanstack/react-query v6: If released, evaluate migration path.

3.4 Post-upgrade validation checklist

  • npm run lint passes (Biome + tsc)
  • npx antd lint ./src passes
  • npm run build succeeds
  • All tests pass
  • npm start dev server works
  • Visual spot-check of key pages (login, dashboard, table-list, forms)
  • Update CLAUDE.md if version requirements change

Risk Assessment

RiskLikelihoodImpactMitigation
Umi Max upgrade breaks buildMediumHighPin version; test in CI before merge
Vitest + Umi plugin compatibilityMediumMediumResearch existing Umi + Vitest integrations; may need adapter
Windows compatibility regressionLowMediumTest on Windows or add Windows CI
antd v6 minor API changesLowLowReview antd changelog; run npx antd lint
Test coverage effort exceeds estimateMediumLowPrioritize core pages; defer edge cases

Execution Order

Layer 1 (cleanup + bugs) → Layer 2 (testing) → Layer 3 (upgrades)

Each layer produces a shippable state. If time constrains, lower layers deliver more value per effort.

Within each layer, items can be parallelized across contributors.