mirror of
https://github.com/ksyasuda/SubMiner.git
synced 2026-03-24 12:11:29 -07:00
2.5 KiB
2.5 KiB
id, title, status, assignee, created_date, updated_date, labels, priority, ordinal, dependencies, references
| id | title | status | assignee | created_date | updated_date | labels | priority | ordinal | dependencies | references | ||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| TASK-232 | Trim release package size by pruning duplicate and source-only assets | Done |
|
2026-03-24 12:05 | 2026-03-24 12:30 |
|
medium | 54700 |
|
Description
Reduce packaged release artifact size without changing user-visible functionality by pruning files that are duplicated between app.asar and extraResources, excluding source/test/doc-only trees from Electron packaging, and trimming obviously non-runtime vendored payload.
Acceptance Criteria
- #1 Electron packaging excludes repo content that is source-only, test-only, docs-only, or duplicated by
extraResources. - #2 Release packaging tests cover the new exclusion rules.
- #3 Verification includes at least targeted release-packaging tests and one packaging-oriented validation step.
Implementation Notes
Completed scope:
- Exclude
assets,plugin, andvendor/yomitan-jlpt-vocabfromfilesbecause they are already staged viaextraResources. - Exclude
distsourcemaps/tests, repo docs/tests/packaging metadata, and stats source leftovers fromfiles. - Exclude non-runtime
vendor/texthooker-uipayload such aspublic/,.vscode/, and package metadata. - Exclude Linux musl libsql binary from packaged app payload for AppImage-focused savings.
Verification:
bun test src/release-workflow.test.tsbun run buildnode_modules/.bin/electron-builder --linux dir --publish nevernode_modules/.bin/electron-builder --linux AppImage --publish never
Observed result:
release/linux-unpacked/resources/app.asardropped from about100 MBto29 MB.release/SubMiner-0.9.0.AppImagedropped from about256 MBto194 MB.
Final Summary
Trimmed Electron packaging so release artifacts no longer bundle duplicated extraResources, source/test/doc-only repo content, non-runtime texthooker-ui files, or the Linux musl libsql binary. Added release-packaging regression coverage and verified the Linux package shrink with fresh local builds.