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: new cli plugin #6488

Merged
merged 44 commits into from
Nov 25, 2024
Merged

feat: new cli plugin #6488

merged 44 commits into from
Nov 25, 2024

Conversation

caohuilin
Copy link
Member

@caohuilin caohuilin commented Nov 4, 2024

Summary

New CLI Plugin Define

  • new context and hook api define
  • change use hookRunner to api.xxx to define hooks
  • add new plugin manager to handle use plugin order
  • support modify rsbuild config hooks

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 Nov 4, 2024

🦋 Changeset detected

Latest commit: 181812d

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

This PR includes changesets to release 273 packages
Name Type
@modern-js/app-tools Minor
@modern-js/plugin-v2 Minor
@modern-js/plugin-bff Minor
@modern-js/plugin-ssg Minor
@modern-js/plugin-swc Minor
@modern-js/plugin-tailwindcss Minor
@modern-js/devtools-client Minor
@modern-js/devtools-kit Minor
@modern-js/plugin-devtools 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-document 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
custom-file-system-entry Minor
integration-custom-render Minor
integration-custom-template Minor
deploy Minor
deploy-server Minor
dev-server Minor
@integration-test/devtools Minor
integration-disable-html Minor
entries-app-builder-index Minor
entries-app-builder Minor
app-custom-bootstrap Minor
app-custom-routes-runtime Minor
app-custom Minor
app-entry Minor
app-route Minor
app-entry-server Minor
esbuild-transform-and-minify Minor
app-garfish-dashboard Minor
app-garfish-master Minor
app-garfish-table 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
pure-esm-project Minor
routes-match Minor
routes Minor
runtime-custom-plugin Minor
runtime-custom-config-plugin Minor
file-based-router Minor
use-loader Minor
select-mul-entry-test Minor
select-one-entry-test Minor
server-config-v2 Minor
server-config Minor
server-middleware Minor
server-new-middleware Minor
server-hook-reqeust Minor
server-hook-response Minor
server-hook-router Minor
@integration-test/server-hook-reqeust Minor
server-prod Minor
server-routes 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-partial-test Minor
ssr-script-loading Minor
ssr-streaming-inline-test Minor
ssr-streaming-test Minor
swc-config-function 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
transform-import-type-test Minor
transform-import-type-lodash 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/tsconfig Minor
@modern-js/babel-preset Minor
@modern-js/core Minor
@modern-js/plugin-changeset Minor
@modern-js/plugin-data-loader Minor
@modern-js/plugin-i18n Minor
@modern-js/plugin-proxy Minor
@modern-js/rsbuild-plugin-esbuild Minor
@modern-js/uni-builder Minor
@modern-js/main-doc Minor
@modern-js/module-tools-docs Minor
@modern-js/plugin-testing Minor
@modern-js/new-action Minor
@modern-js/sandpack-react 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/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
@modern-js/module-tools Minor
@modern-js/monorepo-tools 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
@modern-js/storybook-builder Minor
@modern-js/storybook 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/vitest-config Minor
entries-integration Minor
esbuild-integration Minor
integration-load-config Minor
alias-js-test Minor
alias-module-id-test Minor
alias-ts-test Minor
asset-limit-test Minor
asset-name-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
hook-test Minor
entry-test Minor
jsx-test Minor
loader-esbuild-test Minor
loader-swc-test Minor
metafile-test Minor
minify-test Minor
platform-test Minor
redirect-test Minor
resolve-alias-error Minor
resolve-alias-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
scss-test Minor
tailwindcss-test Minor
target-test Minor
transform-import Minor
transform-lodash Minor
tsconfig-test Minor
tsconfig-extends-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
integration-module-tools 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
integration-tests-storybook Minor
swc-integration Minor
tailwindcss-integration-test 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-common Patch
@modern-js/generator-utils Patch
@modern-js/bff-generator Patch
@modern-js/dependence-generator Patch
@modern-js/entry-generator Patch
@modern-js/mwa-generator Patch
@modern-js/router-v5-generator Patch
@modern-js/ssg-generator Patch
@modern-js/storybook-next-generator Patch
@modern-js/upgrade-generator Patch
@modern-js/generator-cases Patch
@modern-js/base-generator Patch
@modern-js/packages-generator Patch
@modern-js/server-generator Patch
@modern-js/tailwindcss-generator 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

Copy link

netlify bot commented Nov 4, 2024

Deploy Preview for modernjs-byted ready!

Name Link
🔨 Latest commit 181812d
🔍 Latest deploy log https://app.netlify.com/sites/modernjs-byted/deploys/67442818a05a980008a7fbaf
😎 Deploy Preview https://deploy-preview-6488--modernjs-byted.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
Lighthouse
Lighthouse
1 paths audited
Performance: 83 (🟢 up 9 from production)
Accessibility: 90 (no change from production)
Best Practices: 100 (no change from production)
SEO: 91 (no change from production)
PWA: -
View the detailed breakdown and full score reports

To edit notification comments on pull requests, go to your Netlify site configuration.

@caohuilin caohuilin force-pushed the feat/cli-plugin branch 6 times, most recently from 0395d42 to 4e28f9f Compare November 7, 2024 02:24
@caohuilin caohuilin changed the title feat: new cli plugin define feat: new cli plugin Nov 11, 2024
@caohuilin caohuilin force-pushed the feat/cli-plugin branch 5 times, most recently from 31b83d0 to 1dfab57 Compare November 14, 2024 07:07
packages/solutions/app-tools/src/new/index.ts Outdated Show resolved Hide resolved
packages/solutions/app-tools/src/new/index.ts Show resolved Hide resolved
packages/solutions/app-tools/src/new/run.ts Outdated Show resolved Hide resolved
packages/solutions/app-tools/src/new/run.ts Outdated Show resolved Hide resolved
packages/solutions/app-tools/src/new/types/index.ts Outdated Show resolved Hide resolved
packages/toolkit/plugin-v2/src/types/cli/context.ts Outdated Show resolved Hide resolved
packages/toolkit/plugin-v2/src/types/index.ts Outdated Show resolved Hide resolved
packages/toolkit/plugin-v2/src/index.ts Outdated Show resolved Hide resolved
packages/toolkit/plugin-v2/src/hooks.ts Outdated Show resolved Hide resolved
packages/solutions/app-tools/src/old.ts Show resolved Hide resolved
@caohuilin caohuilin force-pushed the feat/cli-plugin branch 3 times, most recently from 6427f5c to 1ebb835 Compare November 25, 2024 06:44
@caohuilin caohuilin merged commit ccedaab into main Nov 25, 2024
12 checks passed
@caohuilin caohuilin deleted the feat/cli-plugin branch November 25, 2024 08:38
@caohuilin caohuilin mentioned this pull request Nov 27, 2024
keepview pushed a commit to keepview/modern.js that referenced this pull request Nov 29, 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.

2 participants