Claude
1c54474dfc
feat: add Windows resource editing support for bun build --compile
...
This PR implements native Windows resource editing in Zig, replacing the previous
rescle C++ implementation. Users can now customize Windows executables when using
'bun build --compile' with the following new options:
- --windows-icon <path> Set custom executable icon
- --windows-title <str> Set executable title/product name
- --windows-publisher <str> Set company/publisher name
- --windows-version <str> Set version (e.g. "1.2.3.4")
- --windows-description <str> Set executable description
- --windows-hide-console Hide console window (already existed)
Example:
```bash
bun build --compile \
--target=bun-windows-x64 \
--windows-icon=app.ico \
--windows-title="My Application" \
--windows-publisher="My Company" \
--windows-version="2.1.0.0" \
--windows-description="A powerful application built with Bun" \
index.ts
```
Implementation details:
- Pure Zig implementation in windows_resources.zig
- Removes C++ rescle dependency
- Creates WindowsSettings struct to organize all Windows options
- Supports cross-platform compilation (build Windows exe from Linux/macOS)
- Fixed alignment issues using safe memory operations
- Comprehensive test coverage in test/bundler/windows-resources-compile.test.ts
This allows full customization of Windows executable metadata without external dependencies.
🤖 Generated with [Claude Code](https://claude.ai/code )
Co-Authored-By: Claude <noreply@anthropic.com >
2025-08-02 06:55:12 +02:00
taylor.fish
07cd45deae
Refactor Zig imports and file structure (part 1) ( #21270 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-07-22 17:51:38 -07:00
pfg
83760fc446
Sort imports in all files ( #21119 )
...
Co-authored-by: taylor.fish <contact@taylor.fish >
2025-07-21 13:26:47 -07:00
Jarred Sumner
0ce70df96b
Buffer stdout when printing summary + check for dir/package.json + npmrc link-workspace-packages + npmrc save-exact ( #20907 )
2025-07-15 22:15:41 -07:00
Jarred Sumner
9e4700ee2d
Remove unused Symbol.for(primitive) calls in bundler ( #20888 )
...
Co-authored-by: claude[bot] <209825114+claude[bot]@users.noreply.github.com>
Co-authored-by: Jarred Sumner <Jarred-Sumner@users.noreply.github.com >
2025-07-12 00:52:07 -07:00
Jarred Sumner
4cc61a1b8c
Fix NODE_PATH for bun build ( #20576 )
...
Co-authored-by: Jarred-Sumner <709451+Jarred-Sumner@users.noreply.github.com >
2025-06-22 20:51:45 -07:00
Jarred Sumner
633f4f593d
Ahead-of-time frontend bundling support for HTML imports & bun build ( #20511 )
...
Co-authored-by: Jarred-Sumner <709451+Jarred-Sumner@users.noreply.github.com >
Co-authored-by: Dylan Conway <dylan.conway567@gmail.com >
2025-06-20 19:55:52 -07:00
Meghan Denny
ba78d5b2c3
ci: pass the src directory to 'zig fmt' ( #20114 )
...
Co-authored-by: nektro <5464072+nektro@users.noreply.github.com >
2025-05-31 18:52:18 -07:00
Jarred Sumner
3ea6133c46
CI: Remove unused top-level decls in formatter in zig ( #19879 )
...
Co-authored-by: Jarred-Sumner <709451+Jarred-Sumner@users.noreply.github.com >
Co-authored-by: graphite-app[bot] <96075541+graphite-app[bot]@users.noreply.github.com>
2025-05-23 22:49:48 -07:00
chloe caruso
3349c995b5
no usingnamespace, organize jsc namespace, enable -fincremental ( #19122 )
...
Co-authored-by: Dylan Conway <35280289+dylan-conway@users.noreply.github.com >
2025-04-22 16:34:15 -07:00
chloe caruso
4ec410e0d7
internal: make @import("bun") work in zig ( #19096 )
2025-04-17 12:32:47 -07:00
chloe caruso
903706dccf
file descriptor rewrite ( #18790 )
2025-04-15 09:37:11 -07:00
chloe caruso
378c68a024
fix build log missing spacee ( #18785 )
2025-04-04 15:14:33 -07:00
chloe caruso
25c95f3bdc
hmr stability fixes ( #17794 )
2025-03-01 00:07:20 -08:00
Jarred Sumner
ba8573494a
Add shadcn, tailwind and react detection & templates to bun create. Also: bun install --analyze <files...> ( #17035 )
2025-02-09 09:36:57 -08:00
chloe caruso
f912e0abc4
hot module reloading for HTML import development mode ( #16955 )
2025-02-08 00:31:30 -08:00
Meghan Denny
af79cebf9e
unflag experimental css and html ( #16561 )
...
Co-authored-by: nektro <5464072+nektro@users.noreply.github.com >
Co-authored-by: Zack Radisic <56137411+zackradisic@users.noreply.github.com >
2025-01-21 06:44:54 -08:00
Jarred Sumner
da54e81955
Support bundling HTML files and their js, css, and assets in Bun.build and bun build ( #15940 )
2024-12-23 11:04:38 -08:00
Jarred Sumner
d6b9c444c1
Rename src/bundler.zig to src/transpiler.zig ( #15921 )
...
Co-authored-by: Dylan Conway <35280289+dylan-conway@users.noreply.github.com >
2024-12-21 00:59:37 -08:00
dave caruso
7b3554f90c
feat(bundler): add --windows-icon, --windows-no-console, fix bun.exe's main icon ( #15894 )
...
Co-authored-by: Dylan Conway <dylan.conway567@gmail.com >
Co-authored-by: Jarred Sumner <jarred@jarredsumner.com >
Co-authored-by: Dylan Conway <35280289+dylan-conway@users.noreply.github.com >
2024-12-20 03:22:16 -08:00
dave caruso
41924211f2
add throw: true in Bun.build, to be made default in 1.2 ( #15861 )
2024-12-18 19:27:59 -08:00
Jarred Sumner
38325aa41c
Introduce env option in Bun.build() and bun build to let you inject FOO_PUBLIC_*-style env vars ( #15678 )
2024-12-10 01:09:46 -08:00
Jarred Sumner
d75488124d
Inline process.versions.bun in bun build --compile ( #14940 )
2024-11-01 14:45:19 -07:00
Dylan Conway
62881ee36b
Redact secrets in bunfig.toml and npmrc logs ( #14919 )
2024-10-31 18:44:24 -07:00
dave caruso
e93c5ad993
feat(bake): css, production build, dev separateSSRGraph=false ( #14622 )
...
Co-authored-by: Jarred Sumner <jarred@jarredsumner.com >
Co-authored-by: paperdave <paperdave@users.noreply.github.com >
Co-authored-by: Jarred-Sumner <Jarred-Sumner@users.noreply.github.com >
2024-10-27 01:57:36 -07:00
Bjorn Beishline
7f5860331e
Fixed compilation issues with no outdir ( #14717 )
...
Co-authored-by: Meghan Denny <meghan@bun.sh >
2024-10-25 18:43:58 -07:00
Jarred Sumner
c77fc5daa0
Implement --drop ( #14492 )
...
Co-authored-by: dave caruso <me@paperdave.net >
2024-10-11 20:52:23 -07:00
versecafe
7996d06b8f
--footer esbuild & rollup style! ( #14396 )
...
Co-authored-by: Jarred Sumner <jarred@jarredsumner.com >
2024-10-08 02:32:37 -07:00
versecafe
62da730060
add banner, .d.ts, cli, make sourcemap compat, and add tests + docs ( #14370 )
2024-10-07 18:05:06 -07:00
Zack Radisic
a01f9d8e1b
Integrate CSS with bundler ( #14281 )
...
Co-authored-by: Jarred Sumner <jarred@jarredsumner.com >
Co-authored-by: Zack Radisic <zackradisic@Mac.attlocal.net >
Co-authored-by: zackradisic <zackradisic@users.noreply.github.com >
Co-authored-by: Zack Radisic <zackradisic@Zacks-MBP.attlocal.net >
2024-10-04 20:23:10 -07:00
dave caruso
adc86c773b
chore: rename kit -> bake ( #14335 )
2024-10-03 15:34:53 -07:00
Jarred Sumner
2f7ff95e5c
Introduce bytecode caching, polish "cjs" bundler output format ( #14232 )
...
Co-authored-by: Dylan Conway <35280289+dylan-conway@users.noreply.github.com >
2024-09-30 22:37:42 -07:00
dave caruso
514d37b3d2
kit: implement server components dev server ( #14025 )
2024-09-27 20:53:39 -07:00
dave caruso
c2c2048072
framework api: init / work in progress ( #13215 )
...
Co-authored-by: Jarred Sumner <jarred@jarredsumner.com >
2024-09-12 16:44:03 -07:00
Dylan Conway
267afa2934
implement bun pm pack ( #13723 )
...
Co-authored-by: Jarred Sumner <jarred@jarredsumner.com >
Co-authored-by: dylan-conway <dylan-conway@users.noreply.github.com >
2024-09-07 03:55:09 -07:00
Jarred Sumner
02ff16d95c
Support Worker, relative file paths in standalone executables, and partially directories ( #13421 )
2024-08-20 13:05:40 -07:00
dave caruso
622432e843
feat(bundler): inlining/dead-code-elimination for import.meta.main (and --compile) ( #12867 )
...
Co-authored-by: Meghan Denny <meghan@bun.sh >
Co-authored-by: Dylan Conway <35280289+dylan-conway@users.noreply.github.com >
Co-authored-by: dylan-conway <dylan-conway@users.noreply.github.com >
Co-authored-by: Jarred Sumner <jarred@jarredsumner.com >
Co-authored-by: paperdave <paperdave@users.noreply.github.com >
Co-authored-by: Jarred-Sumner <Jarred-Sumner@users.noreply.github.com >
Co-authored-by: Andrew Johnston <apjohnsto@gmail.com >
Co-authored-by: Ashcon Partovi <ashcon@partovi.net >
2024-08-01 17:25:38 -07:00
dave caruso
c2cf528953
bundler: Add --ignore-dce-annotations, and other DCE annotation related stuff ( #12808 )
...
Co-authored-by: paperdave <paperdave@users.noreply.github.com >
Co-authored-by: Jarred Sumner <jarred@jarredsumner.com >
2024-08-01 15:00:38 -07:00
dave caruso
b76376f8a6
chore: upgrade zig to 0.13.0 ( #9965 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Jarred Sumner <jarred@jarredsumner.com >
Co-authored-by: Grigory <grigory.orlov.set@gmail.com >
Co-authored-by: Dylan Conway <35280289+dylan-conway@users.noreply.github.com >
Co-authored-by: Meghan Denny <hello@nektro.net >
Co-authored-by: Kenta Iwasaki <63115601+lithdew@users.noreply.github.com >
Co-authored-by: John-David Dalton <john.david.dalton@gmail.com >
Co-authored-by: Dale Seo <5466341+DaleSeo@users.noreply.github.com >
Co-authored-by: Zack Radisic <56137411+zackradisic@users.noreply.github.com >
Co-authored-by: paperdave <paperdave@users.noreply.github.com >
Co-authored-by: Georgijs Vilums <georgijs.vilums@gmail.com >
Co-authored-by: Dylan Conway <dylan.conway567@gmail.com >
2024-06-20 13:48:39 -07:00
Meghan Denny
ecb6c810c8
replace [bun.MAX_PATH_BYTES]u8 with bun.PathBuffer ( #11162 )
2024-05-21 15:55:49 -07:00
Georgijs
5f4c5052d1
fix windows crosscompile to linux and mac ( #10751 )
2024-05-01 16:07:36 -07:00
Jarred Sumner
9eab12f7b8
Support cross-compilation in bun build --compile ( #10477 )
2024-04-25 15:34:40 -07:00
Jarred Sumner
fc4459991d
Fixes #8697 ( #10378 )
...
Co-authored-by: Ashcon Partovi <ashcon@partovi.net >
2024-04-20 17:58:14 -07:00
Jarred Sumner
a78668eb4c
fix(bundler): fix a crash while computing character frequencies
...
* Fixes #10344
* Update bundler_compile.test.ts
* Apply formatting changes
* Track comments when bundling
* Fix embedded files and add test
* Make this const
* Update runner.node.mjs
* Prefill process arch/platform in bun build --compile
* nitpick
---------
Co-authored-by: Jarred-Sumner <Jarred-Sumner@users.noreply.github.com >
Co-authored-by: dave caruso <me@paperdave.net >
2024-04-18 12:35:59 -07:00
Jarred Sumner
c59f49385f
Make Command.Context a pointer ( #10237 )
2024-04-13 01:53:31 -07:00
Meghan Denny
e209ae81dd
meta: ensure there's a single 'bun' import per file in zig ( #10137 )
...
* meta: ensure there's a single 'bun' import per file in zig
* undo this change in codegen
2024-04-09 22:41:07 -07:00
dave caruso
2d7df726fd
fix: get bun build working on window ( #8712 )
...
* work on bundler
* a
* YAAAAYYAYAYAYYAYA
* get some more bundler tests working
* Update src/bundler/bundle_v2.zig
* rev
* ok
* i converted the cmakelists into LF
* personal review
* we didnt win
* okey they pass
* revert :(
* a
---------
Co-authored-by: Jarred Sumner <jarred@jarredsumner.com >
2024-02-08 17:56:26 -08:00
dave caruso
968c21d80a
feat(windows): support bun build --compile ( #8503 )
...
* alright
* were winning
* WAOOOOOO
2024-01-26 20:56:08 -08:00
dave caruso
b7a32b87ab
fix(bundler): improve external require transpilation on all targets ( #8057 )
...
* fix(build): do not emit import.meta.require for browsers/node.js
* update test snapshots
* sweep
* prefer require ref instead of `import.meta.require`
* remove option i did not use
* stuff
* remove rewrite_require_resolve
* ok
* ok
* wooooo
* [autofix.ci] apply automated fixes
* fix bugs
* ok
* [autofix.ci] apply automated fixes
* OOOOOPPPPPPPPPPPPS
* fix Bun.Transpiler regressions
* fix(bundler): make --splitting ensure --outdir
* fix final
* oops
* [autofix.ci] apply automated fixes
* use require.resolve
* revert but ... it no longer crashes there
* ok
* [autofix.ci] apply automated fixes
* fix fetch test
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Dylan Conway <35280289+dylan-conway@users.noreply.github.com >
2024-01-12 22:15:51 -08:00
Jarred Sumner
a1e742734a
Fixes #5178 ( #8023 )
...
* Fixes #5178
* Update comment
---------
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com >
2024-01-06 18:47:13 -08:00