Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(app-tools): use uni-builder instead of modern builder #5168

Merged
merged 44 commits into from
Jan 5, 2024

Conversation

9aoy
Copy link
Collaborator

@9aoy 9aoy commented Dec 28, 2023

Summary

use uni-builder(rsbuild) instead of modern.js builder, modern.js builder is no longer maintained and will be removed later

  • use uni-builder instead of modern.js builder in app-tools and related pkgs
  • unify AppToolsUserConfig

The @modern-js/uni-builder package provides the same capability as @modern-js/builder + @modern-js/builder-webpack-provider + @modern-js/rspack-provider.

Related Links

Checklist

  • I have added changeset via pnpm run change.
  • I have updated the documentation.
  • I have added tests to cover my changes.

Copy link

changeset-bot bot commented Dec 28, 2023

🦋 Changeset detected

Latest commit: 562bf4d

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 271 packages
Name Type
@modern-js/app-tools Minor
@modern-js/plugin-devtools Minor
@modern-js/plugin-swc Minor
@modern-js/core Minor
@modern-js/plugin-bff Minor
@modern-js/plugin-ssg Minor
@modern-js/plugin-tailwindcss Minor
@modern-js/devtools-client Minor
@modern-js/devtools-kit Minor
@modern-js/plugin-garfish Minor
@modern-js/plugin-router-v5 Minor
@modern-js/runtime Minor
@modern-js/plugin-express Minor
@modern-js/plugin-koa Minor
@modern-js/plugin-polyfill Minor
@modern-js/plugin-server Minor
@modern-js/plugin-worker Minor
tests Minor
@integration-test/alias-set Minor
api-service-koa Minor
app-docmuent Minor
integration-asset-prefix Minor
async-entry-test Minor
tmp Minor
bff-express Minor
bff-koa Minor
integration-builder-plugins Minor
integration-clean-dist-path Minor
integration-compatibility Minor
integration-copy-assets Minor
integration-custom-dist-path Minor
integration-custom-render Minor
integration-custom-template Minor
dev-server Minor
@integration-test/devtools Minor
integration-disable-html Minor
esbuild-transform-and-minify Minor
integration-config-async-config-test Minor
integration-basic-local-config Minor
integration-config-function-params Minor
integration-local-config-function Minor
main-entry-name Minor
nonce Minor
routes Minor
file-based-router Minor
use-loader Minor
select-mul-entry-test Minor
select-one-entry-test Minor
server-config Minor
server-middleware Minor
server-hook-reqeust Minor
server-hook-response Minor
server-hook-router Minor
@integration-test/server-hook-reqeust Minor
server-prod Minor
@source-code-build/app-ts-loader Minor
@source-code-build/app Minor
ssg-fixtures-nested-routes Minor
ssg-fixtures-simple Minor
ssg-fixtures-web-server Minor
ssr-base-json-test Minor
ssr-base-test Minor
ssr-base-fallback-test Minor
init Minor
ssr-inline Minor
ssr-preload Minor
ssr-script-loading Minor
ssr-streaming-test Minor
swc-test-decorator-legacy Minor
swc-test-decorator Minor
swc-minify-css Minor
swc-minify-js Minor
transform-fail Minor
integration-tailwindcss-v2 Minor
integration-tailwindcss-v3-js-config Minor
integration-tailwindcss-v3-merge-config Minor
integration-tailwindcss-v3-ts-config Minor
integration-tailwindcss-v3 Minor
twin-macro-v2 Minor
twin-macro-v3 Minor
tmp-dir Minor
@e2e/testing-plugin Minor
transform-import-type-test Minor
write-to-dist Minor
@e2e/garfish-dashboard-router-v6 Minor
@e2e/garfish-dashboard Minor
@e2e/garfish-main-router-v6 Minor
@e2e/garfish-main Minor
@e2e/garfish-table Minor
@modern-js/plugin-changeset Minor
@modern-js/plugin-data-loader Minor
@modern-js/plugin-lint Minor
@modern-js/plugin-proxy Minor
@modern-js/plugin-testing Minor
@modern-js/module-tools Minor
@modern-js/monorepo-tools Minor
@modern-js/storybook-builder Minor
@modern-js/doc-plugin-auto-sidebar Minor
@modern-js/plugin-module-babel Minor
@modern-js/plugin-module-banner Minor
@modern-js/plugin-module-import Minor
@modern-js/plugin-module-node-polyfill Minor
@modern-js/plugin-module-polyfill Minor
@modern-js/plugin-module-vue Minor
integration-module-tools Minor
@modern-js/storybook Minor
integration-tests-storybook Minor
@modern-js/plugin-i18n Minor
@modern-js/builder-doc Minor
@modern-js/main-doc Minor
@modern-js/module-tools-docs Minor
@modern-js/new-action Minor
@modern-js/sandpack-react Minor
@modern-js-app/eslint-config Minor
@modern-js/eslint-config Minor
@modern-js/tsconfig Minor
@modern-js/babel-plugin-module-resolver Minor
@modern-js/bff-core Minor
@modern-js/bff-runtime Minor
@modern-js/server-core Minor
@modern-js/create-request Minor
@modern-js/prod-server Minor
@modern-js/server Minor
@modern-js/server-utils Minor
@modern-js/builder-cli Minor
@modern-js/builder-rspack-provider Minor
@modern-js/builder-shared Minor
@modern-js/builder-webpack-provider Minor
@modern-js/builder Minor
@modern-js/builder-plugin-esbuild Minor
@modern-js/builder-plugin-image-compress Minor
@modern-js/builder-plugin-node-polyfill Minor
@modern-js/builder-plugin-stylus Minor
@modern-js/builder-plugin-swc Minor
@modern-js/builder-plugin-vue Minor
@modern-js/builder-plugin-vue2 Minor
@modern-js/uni-builder Minor
@modern-js/create Minor
@modern-js/e2e Minor
@modern-js/node-bundle-require Minor
@modern-js/plugin Minor
@modern-js/runtime-utils Minor
@modern-js/types Minor
@modern-js/upgrade Minor
@modern-js/utils Minor
@modern-js/babel-compiler Minor
@scripts/build Minor
@scripts/check-changeset Minor
@scripts/jest-config Minor
@scripts/lint-package-json Minor
@scripts/prebundle Minor
@scripts/update-codesmith Minor
@scripts/update-rsbuild Minor
@scripts/update-rspress Minor
@scripts/vitest-config Minor
esbuild-integration Minor
integration-load-config Minor
alias-js-test Minor
alias-ts-test Minor
asset-limit-test Minor
asset-path-test Minor
asset-publicPath-test Minor
svgr-test Minor
auto-extension-commonjs-test Minor
auto-extension-type-module-test Minor
auto-external-test Minor
banner-footer-test Minor
build-type-test Minor
copy-test Minor
decorator-test Minor
global-vars-js-test Minor
global-vars-ts-test Minor
dts-composite Minor
dts-test Minor
esbuild-options-test Minor
external-test Minor
format-cjs-test Minor
format-esm-test Minor
format-iife-test Minor
format-umd-test Minor
entry-test Minor
jsx-test Minor
metafile-test Minor
minify-test Minor
platform-test Minor
redirect-test Minor
data-url-test Minor
browser-false Minor
resolve-false Minor
ndoe-protocol-test Minor
lib1 Minor
lib2 Minor
lib3 Minor
condition-exports-test Minor
js-extensions-test Minor
main-fields-test Minor
shims-test Minor
module-tools-side-effects-test Minor
source-dir-test Minor
sourcemap-test Minor
splitting-test Minor
css-test Minor
less-test Minor
style-test Minor
postcss-test Minor
sass-test Minor
tailwindcss-test Minor
target-test Minor
transform-import Minor
transform-lodash Minor
tsconfig-test Minor
umdGlobals-test Minor
get-module-id-test Minor
dev-test Minor
build-platform-test Minor
build-preset-error-test Minor
build-preset-function-test Minor
build-preset-test Minor
build-preset-string-test Minor
plugin-babel Minor
module-hooks-test Minor
plugin-node-polyfill Minor
plugin-polyfill Minor
plugin-vue Minor
runtime Minor
entry Minor
@source-code-build/common Minor
@source-code-build/components Minor
@source-code-build/utils Minor
ssg Minor
ssr Minor
swc-integration Minor
tailwindcss-integration-test Minor
@e2e/builder-cli-rspack Minor
@e2e/builder-cli-vue Minor
@e2e/builder-cli-webpack Minor
@e2e/webpack-builder-import-antd-v4 Minor
@e2e/webpack-builder-import-antd-v5 Minor
@e2e/webpack-builder-import-arco Minor
@e2e/webpack-builder-test-moment Minor
@e2e/builder-remove-prop-types Minor
@e2e/webpack-builder-source-map Minor
@e2e/builder Minor
@e2e/garfish Minor
@modern-js/generator-plugin Patch
@modern-js/generator-common Patch
@modern-js/generator-utils Patch
@modern-js/bff-generator Patch
@modern-js/dependence-generator Patch
@modern-js/entry-generator Patch
@modern-js/generator-generator Patch
@modern-js/module-doc-generator Patch
@modern-js/module-generator Patch
@modern-js/module-test-generator Patch
@modern-js/monorepo-generator Patch
@modern-js/mwa-generator Patch
@modern-js/router-v5-generator Patch
@modern-js/rspack-generator Patch
@modern-js/ssg-generator Patch
@modern-js/storybook-generator Patch
@modern-js/storybook-next-generator Patch
@modern-js/test-generator Patch
@modern-js/upgrade-generator Patch
@modern-js/generator-plugin-plugin Patch
@modern-js/base-generator Patch
@modern-js/changeset-generator Patch
@modern-js/packages-generator Patch
@modern-js/repo-generator Patch
@modern-js/server-generator Patch
@modern-js/tailwindcss-generator Patch
@modern-js/generator-cases Patch

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@9aoy 9aoy changed the title feat(app-tools): use uni-builder instead modern builder feat(app-tools): use uni-builder instead of modern builder Dec 28, 2023
@9aoy 9aoy marked this pull request as draft December 28, 2023 07:18
package.json Show resolved Hide resolved
packages/builder/uni-builder/src/index.ts Outdated Show resolved Hide resolved
packages/builder/uni-builder/src/types.ts Outdated Show resolved Hide resolved
packages/solutions/app-tools/package.json Show resolved Hide resolved
9aoy and others added 3 commits December 29, 2023 09:54
Co-authored-by: neverland <chenjiahan.jait@bytedance.com>
Co-authored-by: neverland <chenjiahan.jait@bytedance.com>
@Timeless0911
Copy link
Collaborator

!bench-framework

@web-infra-dev web-infra-dev deleted a comment from rspack-bot Jan 5, 2024
@9aoy 9aoy marked this pull request as ready for review January 5, 2024 07:45
@9aoy
Copy link
Collaborator Author

9aoy commented Jan 5, 2024

!bench-framework

@rspack-bot
Copy link

rspack-bot commented Jan 5, 2024

📝 Benchmark detail: Open

case: app-arco-pro-rspack
base: 494b290
current: 562bf4d78

Metric Base Current %
devPluginSetupTime 0.03s 0.03s +5.47%
devPrepareTime 0.34s 0.23s -33.66%
beforeDevTime 1.2s 0.84s -29.63%
devColdBootTime 6.15s 5.35s -12.93%
devHotBootTime 6.06s 5.33s -12.06%
buildPluginSetupTime 0.03s 0.03s +7.12%
buildPrepareTime 0.34s 0.23s -33.72%
beforeBuildTime 1.44s 1.27s -11.83%
buildColdBootTime 12.78s 12.07s -5.51%
minifiedBundleSize 5792.08KB 5781.23KB -0.19%
gzippedBundleSize 1474.37KB 1473.14KB -0.08%
buildHotBootTime 12.53s 11.95s -4.59%
coldInstallTime 120s 124.47s +3.73%
hotInstallTime 0.54s 0.84s +55.77%
dependenciesCount 1654 1654 0.00%
installSize 406.78MB 406.78MB -0.00%

@web-infra-dev web-infra-dev deleted a comment from rspack-bot Jan 5, 2024
@web-infra-dev web-infra-dev deleted a comment from rspack-bot Jan 5, 2024
@chenjiahan chenjiahan merged commit 40ee539 into main Jan 5, 2024
8 checks passed
@chenjiahan chenjiahan deleted the feat/use-uni-builder branch January 5, 2024 09:25
@caohuilin caohuilin mentioned this pull request Jan 10, 2024
@9aoy 9aoy mentioned this pull request Jan 11, 2024
3 tasks
@caohuilin caohuilin mentioned this pull request Jan 17, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants