Repository navigation
Build the Open source list from what the bundle includes - #795
Merged
Merged
Conversation
The list walked dependencies from two package.json files: it skipped what the workspace packages bring in (Lit, fengari, alien-signals) and the stylesheet's frameworks, and listed type-only and tree-shaken packages. It is now built from the modules each chunk renders, worker builds included, plus the CSS frameworks and the served ffmpeg core, and written as acknowledgements.json, which the Help loads when the Open source tab opens. Packages that publish no LICENSE file take their upstream text from licenses/; @ffmpeg/core's also says where its GPL source is.
# Conflicts: # packages/app-play/src/dom-template.ts
Contributor
Exports Benchmark🟢 2 improvements, no regression · 15 within noise · 850 compared
Improvements (2)
Within noise (15): past the threshold, but the runs overlap
…and 3 more. I/O-bound, not judged (19)These cases touch the filesystem, so their time follows the OS cache and the disk more than the code.
Excluded: too fast to time (68)A timed sample lasted 1 µs or less on at least one side (usually a base commit from before calls were batched), so its time is timer noise and no change is shown.
…and 56 more. Run details
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The Help's Open source list walked
dependenciesfromapp-playandplayer-browser. It had gaps both ways:lit-html,lit-element,@lit/reactive-elementviaplayer-ui;fengari-webviaskin-beatoraja;alien-signals) and the stylesheet's frameworks (tailwindcss,basecoat-css).@ffmpeg/core(GPL-2.0-or-later, served asffmpeg-core.wasm),@ffmpeg/ffmpeg,@ffmpeg/util,@pixi/colord,signalsmith-stretchandtweakpanepublish no LICENSE file to npm.@types/*,@webgpu/types,@ffmpeg/types) and packages tree-shaken away (@xmldom/xmldom,gifuct-js,js-binary-schema-parser).Change
scripts/acknowledgements.ts: atgenerateBundle, the list is the npm packages of every module a chunk rendered (renderedLength > 0), worker builds included (worker.plugins), plus packages on the page that are not modules:tailwindcss,basecoat-css(CSS@import) and@ffmpeg/core(served files). It is written asacknowledgements.json;virtual:acknowledgementsnow exports a loader, and the Help fetches the list when the tab opens instead of carrying it in the main bundle.licenses/: upstream license texts for the packages that ship none, with a README (EN + JA).@ffmpeg/core's notes that FFmpeg is built with--enable-gpland its libraries, and points to the corresponding source (ffmpeg.wasmv0.12.10, FFmpeg).Result
A production build lists 21 packages, all with license text. Against the package paths in the build's source maps: nothing bundled is missing, and the only entries not in a source map are the three added on purpose (
@ffmpeg/core,basecoat-css,tailwindcss).Testing
scripts/acknowledgements.test.ts(package of a module, rendered-only counting, override file names, type-only detection, ordering, text clamping, reading a package with its own LICENSE or a stand-in).pnpm run check(0 errors), app-play unit tests (737) pass.This touches the Open source intro and
help-modal.ts, as does #794; whichever lands second resolves the overlap.🤖 Generated with Claude Code