Conversation
🦋 Changeset detectedLatest commit: 4401025 The changes in this PR will be included in the next version bump. This PR includes changesets to release 7 packages
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 |
Codecov ReportAttention: Patch coverage is ✅ All tests successful. No failed tests found.
📢 Thoughts on this report? Let us know! |
CodSpeed Performance ReportMerging #883 will not alter performanceComparing Summary
|
1a20548 to
e8e44bf
Compare
React Example#2224 Bundle Size — 233.19KiB (0%).4401025(current) vs a64333e main#2199(baseline) Bundle metrics
|
| Current #2224 |
Baseline #2199 |
|
|---|---|---|
0B |
0B |
|
0B |
0B |
|
0% |
0% |
|
0 |
0 |
|
4 |
4 |
|
152 |
152 |
|
60 |
60 |
|
45.81% |
45.81% |
|
2 |
2 |
|
0 |
0 |
Bundle size by type no changes
| Current #2224 |
Baseline #2199 |
|
|---|---|---|
145.76KiB |
145.76KiB |
|
87.43KiB |
87.43KiB |
Bundle analysis report Branch feat/extend-inlineScripts-type Project dashboard
Generated by RelativeCI Documentation Report issue
7170f13 to
30adb2d
Compare
Web Explorer#2214 Bundle Size — 258.15KiB (0%).4401025(current) vs a64333e main#2189(baseline) Bundle metrics
|
| Current #2214 |
Baseline #2189 |
|
|---|---|---|
140.17KiB |
140.17KiB |
|
31.82KiB |
31.82KiB |
|
0% |
76.84% |
|
4 |
4 |
|
4 |
4 |
|
207 |
207 |
|
15 |
15 |
|
3.41% |
3.41% |
|
4 |
4 |
|
0 |
0 |
Bundle size by type no changes
| Current #2214 |
Baseline #2189 |
|
|---|---|---|
226.33KiB |
226.33KiB |
|
31.82KiB |
31.82KiB |
Bundle analysis report Branch feat/extend-inlineScripts-type Project dashboard
Generated by RelativeCI Documentation Report issue
packages/webpack/template-webpack-plugin/src/LynxEncodePlugin.ts
Outdated
Show resolved
Hide resolved
packages/webpack/template-webpack-plugin/src/LynxTemplatePlugin.ts
Outdated
Show resolved
Hide resolved
packages/webpack/template-webpack-plugin/src/LynxEncodePlugin.ts
Outdated
Show resolved
Hide resolved
Co-authored-by: Qingyu Wang <40660121+colinaaa@users.noreply.github.com> Signed-off-by: BitterGourd <91231822+gaoachao@users.noreply.github.com>
<!-- Thank you for submitting a pull request! We appreciate the time and effort you have invested in making these changes. Please ensure that you provide enough information to allow others to review your pull request. Upon submission, your pull request will be automatically assigned with reviewers. If you want to learn more about contributing to this project, please visit: https://github.com/lynx-family/lynx-stack/blob/main/CONTRIBUTING.md. --> ## Summary <!-- Can you explain the reasoning behind implementing this change? What problem or issue does this pull request resolve? --> <!-- It would be helpful if you could provide any relevant context, such as GitHub issues or related discussions. --> Remove inlinedAssets from inlinedManifest ## Checklist <!--- Check and mark with an "x" --> - [x] Tests updated (or not required). - [x] Documentation updated (or not required).
colinaaa
left a comment
There was a problem hiding this comment.
The current implementation LGTM. But there are more to think about to make it better:
- We should not only apply
inlineScriptstoLynxEncodePlugin, theWebEncodePluginshould also support this.- We may want a base class and implement some common logic (e.g.: inline script, deleting inline assets)
- We may want to allow customize the retry and error handling of external chunks
- In Rsbuild Web, we have https://github.com/rspack-contrib/rsbuild-plugin-assets-retry
- We may want to allow injecting external & inlined chunks
- In Rsbuild Web, we have
api.modifyHTMLTagsthat can add<script>to the HTML.
- In Rsbuild Web, we have
This PR was opened by the [Changesets release](https://github.com/changesets/action) GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated. # Releases ## @lynx-js/qrcode-rsbuild-plugin@0.4.0 ### Minor Changes - Support "Type to search" when switching entries and schema. ([#1115](#1115)) ## @lynx-js/react@0.110.1 ### Patch Changes - Fix a memory leak when using `<list/>`. ([#1144](#1144)) ## @lynx-js/rspeedy@0.9.11 ### Patch Changes - Enable fine-grained control for `output.inlineScripts` ([#883](#883)) ```ts type InlineChunkTestFunction = (params: { size: number; name: string; }) => boolean; type InlineChunkTest = RegExp | InlineChunkTestFunction; type InlineChunkConfig = | boolean | InlineChunkTest | { enable?: boolean | "auto"; test: InlineChunkTest }; ``` ```ts import { defineConfig } from "@lynx-js/rspeedy"; export default defineConfig({ output: { inlineScripts: ({ name, size }) => { return name.includes("foo") && size < 1000; }, }, }); ``` - docs: remove chunks: 'all' in comments ([#1168](#1168)) ## @lynx-js/react-rsbuild-plugin@0.10.5 ### Patch Changes - Avoid IIFE in `main-thread.js` to resolve memory leak when using `<list />`. ([#1176](#1176)) - Enable fine-grained control for `output.inlineScripts` ([#883](#883)) ```ts type InlineChunkTestFunction = (params: { size: number; name: string; }) => boolean; type InlineChunkTest = RegExp | InlineChunkTestFunction; type InlineChunkConfig = | boolean | InlineChunkTest | { enable?: boolean | "auto"; test: InlineChunkTest }; ``` ```ts import { defineConfig } from "@lynx-js/rspeedy"; export default defineConfig({ output: { inlineScripts: ({ name, size }) => { return name.includes("foo") && size < 1000; }, }, }); ``` - Updated dependencies \[[`51cb73d`](51cb73d), [`69fb042`](69fb042), [`a7e8b5b`](a7e8b5b)]: - @lynx-js/runtime-wrapper-webpack-plugin@0.1.2 - @lynx-js/template-webpack-plugin@0.8.1 - @lynx-js/react-webpack-plugin@0.6.17 - @lynx-js/react-alias-rsbuild-plugin@0.10.5 - @lynx-js/use-sync-external-store@1.5.0 - @lynx-js/react-refresh-webpack-plugin@0.3.3 - @lynx-js/css-extract-webpack-plugin@0.6.0 ## @lynx-js/web-constants@0.14.1 ### Patch Changes - feat: support BTS API `lynx.reportError` && `__SetSourceMapRelease`, now you can use it and handle it in lynx-view error event. ([#1059](#1059)) - fix: in lynx-view all-on-ui mode, the input event of input and textarea is triggered twice, and the first e.detail is a string, which does not conform to the expected data format. ([#1179](#1179)) - fix: under the all-on-ui strategy, reload() will add two page elements. ([#1147](#1147)) - Updated dependencies \[]: - @lynx-js/web-worker-rpc@0.14.1 ## @lynx-js/web-core@0.14.1 ### Patch Changes - feat: support BTS API `lynx.reportError` && `__SetSourceMapRelease`, now you can use it and handle it in lynx-view error event. ([#1059](#1059)) - fix: under the all-on-ui strategy, reload() will add two page elements. ([#1147](#1147)) - Updated dependencies \[[`a64333e`](a64333e), [`7751375`](7751375), [`b52a924`](b52a924)]: - @lynx-js/web-worker-runtime@0.14.1 - @lynx-js/web-constants@0.14.1 - @lynx-js/web-mainthread-apis@0.14.1 - @lynx-js/web-worker-rpc@0.14.1 ## @lynx-js/web-elements@0.7.7 ### Patch Changes - fix: the param `index` of list scrollToPosition function should be `position`. ([#1135](#1135)) - fix: in lynx-view all-on-ui mode, the input event of input and textarea is triggered twice, and the first e.detail is a string, which does not conform to the expected data format. ([#1179](#1179)) - Updated dependencies \[]: - @lynx-js/web-elements-template@0.7.7 ## @lynx-js/web-mainthread-apis@0.14.1 ### Patch Changes - fix: under the all-on-ui strategy, reload() will add two page elements. ([#1147](#1147)) - Updated dependencies \[[`a64333e`](a64333e), [`7751375`](7751375), [`b52a924`](b52a924)]: - @lynx-js/web-constants@0.14.1 ## @lynx-js/web-worker-runtime@0.14.1 ### Patch Changes - feat: support BTS API `lynx.reportError` && `__SetSourceMapRelease`, now you can use it and handle it in lynx-view error event. ([#1059](#1059)) - Updated dependencies \[[`a64333e`](a64333e), [`7751375`](7751375), [`b52a924`](b52a924)]: - @lynx-js/web-constants@0.14.1 - @lynx-js/web-mainthread-apis@0.14.1 - @lynx-js/web-worker-rpc@0.14.1 ## @lynx-js/react-webpack-plugin@0.6.17 ### Patch Changes - Enable fine-grained control for `output.inlineScripts` ([#883](#883)) ```ts type InlineChunkTestFunction = (params: { size: number; name: string; }) => boolean; type InlineChunkTest = RegExp | InlineChunkTestFunction; type InlineChunkConfig = | boolean | InlineChunkTest | { enable?: boolean | "auto"; test: InlineChunkTest }; ``` ```ts import { defineConfig } from "@lynx-js/rspeedy"; export default defineConfig({ output: { inlineScripts: ({ name, size }) => { return name.includes("foo") && size < 1000; }, }, }); ``` ## @lynx-js/runtime-wrapper-webpack-plugin@0.1.2 ### Patch Changes - Wrap with IIFE when `output.iife: false` to avoid naming conflict. ([#1176](#1176)) ## @lynx-js/template-webpack-plugin@0.8.1 ### Patch Changes - feat: `::placeholder` will be compiled to `part(input)::placeholder`, which means you can use pseudo-element CSS to add placeholder styles to input and textarea. ([#1158](#1158)) // before <input placeholder-color='red' placeholder-font-weight='bold' placeholder-font-size='20px'> // after <input> input::placeholder { color: red; font-weight: bold; font-size: 20px; } - Enable fine-grained control for `output.inlineScripts` ([#883](#883)) ```ts type InlineChunkTestFunction = (params: { size: number; name: string; }) => boolean; type InlineChunkTest = RegExp | InlineChunkTestFunction; type InlineChunkConfig = | boolean | InlineChunkTest | { enable?: boolean | "auto"; test: InlineChunkTest }; ``` ```ts import { defineConfig } from "@lynx-js/rspeedy"; export default defineConfig({ output: { inlineScripts: ({ name, size }) => { return name.includes("foo") && size < 1000; }, }, }); ``` ## create-rspeedy@0.9.11 ## @lynx-js/react-alias-rsbuild-plugin@0.10.5 ## upgrade-rspeedy@0.9.11 ## @lynx-js/web-core-server@0.14.1 ## @lynx-js/web-elements-template@0.7.7 ## @lynx-js/web-worker-rpc@0.14.1 Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Summary
follow up #874
close #870
Align
output.inlineScriptswith RsbuildRelated links:
Checklist