taylor.fish
437e15bae5
Replace catch bun.outOfMemory() with safer alternatives ( #22141 )
...
Replace `catch bun.outOfMemory()`, which can accidentally catch
non-OOM-related errors, with either `bun.handleOom` or a manual `catch
|err| switch (err)`.
(For internal tracking: fixes STAB-1070)
---------
Co-authored-by: Dylan Conway <dylan.conway567@gmail.com >
2025-08-26 12:50:25 -07:00
taylor.fish
a57dee5721
Various safety improvements (safety.ThreadLock, stack traces, MimallocArena, RefCount, safety.alloc) ( #21726 )
...
* Move `DebugThreadLock` to `bun.safety`
* Enable in `ci_assert` builds, but store stack traces only in debug
builds
* Reduce size of struct by making optional field non-optional
* Add `initLockedIfNonComptime` as a workaround for not being able to
call `initLocked` in comptime contexts
* Add `lockOrAssert` method to acquire the lock if unlocked, or else
assert that the current thread acquired the lock
* Add stack traces to `CriticalSection` and `AllocPtr` in debug builds
* Make `MimallocArena.init` infallible
* Make `MimallocArena.heap` non-nullable
* Rename `RefCount.active_counts` to `raw_count` and provide read-only
`get` method
* Add `bun.safety.alloc.assertEq` to assert that two allocators are
equal (avoiding comparison of undefined `ptr`s)
(For internal tracking: fixes STAB-917, STAB-918, STAB-962, STAB-963,
STAB-964, STAB-965)
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-08-11 13:40:07 -07: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
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
4ec410e0d7
internal: make @import("bun") work in zig ( #19096 )
2025-04-17 12:32:47 -07:00
Don Isaac
f730a355bf
fix: BufferWriter never returns an error ( #18981 )
...
Co-authored-by: Jarred Sumner <jarred@jarredsumner.com >
2025-04-13 08:57:41 -07:00
Don Isaac
a733421261
refactor: consolidate allocators ( #16061 )
...
Co-authored-by: DonIsaac <DonIsaac@users.noreply.github.com >
2025-01-08 22:39:13 +00:00
Dylan Conway
62881ee36b
Redact secrets in bunfig.toml and npmrc logs ( #14919 )
2024-10-31 18:44:24 -07:00
Ciro Spaciari
1d89c5988e
refactor OOM errors ( #11540 )
2024-06-02 22:56:26 -07:00
dave caruso
c99d7ed331
feat: overhaul the crash handler ( #10203 )
...
* some work
* linux things
* linux things
* feat: tracestrings on Windows
* bwaa
* more work on the crash handler
* okay
* adgadsgbcxcv
* ya
* dsafds
* a
* wuh
* a
* bru h
* ok
* yay
* window
* alright
* oops
* yeah
* a
* a
* OOM handling
* fix on window
2024-04-17 15:32:25 -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
jhmaster
55eb4ffe8f
Update bun-polyfills & bun-wasm ( #4246 )
...
* automate Bun.version & revision polyfills
* polyfill Bun.gc
* bun:jsc module initial polyfills
* update peechy schema
* bun-polyfills: fix some project configs
* bun-wasm: lots of fixes
* bun-polyfills: Bun.Transpiler impl.
* revision hash update
2023-08-24 14:39:28 -07:00
Jarred Sumner
f2f227720b
WASM test analyzer ( #4043 )
...
* wasm
* WASM test scanner
* Update Makefile
* Update Makefile
* Configurable heap limit
* slightly better error
* Update js_parser.zig
* Update path.test.js
* Update node.mjs
---------
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com >
2023-08-07 18:51:16 -07:00
Dylan Conway
661355546a
zig upgrade ( #3667 )
...
* upgrade
* more fixes
* Bump Zig
---------
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com >
2023-07-18 01:20:20 -07:00
Dylan Conway
5fa13625a1
upgrade zig to v0.11.0-dev.3737+9eb008717 ( #3374 )
...
* progress
* finish `@memset/@memcpy` update
* Update build.zig
* change `@enumToInt` to `@intFromEnum` and friends
* update zig versions
* it was 1
* add link to issue
* add `compileError` reminder
* fix merge
* format
* upgrade to llvm 16
* Revert "upgrade to llvm 16"
This reverts commit cc930ceb1c .
---------
Co-authored-by: Jarred Sumner <jarred@jarredsumner.com >
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com >
2023-06-21 23:38:18 -07:00
Jarred Sumner
bdb1b7124a
Fix crash in CJS ( #3294 )
...
* Fix crash in CJS
* Add std.heap.ArenaAllocator
* Use our arena allocator
* Reduce JS parser memory usage and make HMR faster
* Write some comments
* fix test failure & clean up this code
* Update javascript.zig
* make arena usage safer
---------
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com >
2023-06-13 09:15:05 -07:00
Jarred Sumner
ea47ed0ee5
Fix broken autocomplete
2023-04-19 00:01:27 -07:00
Jarred SUmner
168bb1427f
move more things
2023-01-13 11:38:16 -08:00
Jarred Sumner
c0dd284136
Upgrade to latest Zig ( #1610 )
...
* @min and @max
* builtins and some trivial ones
* Most of them
* more
* more!
* More Progress
* wip
* Update tagged_pointer.zig
* Update http_client_async.zig
* Most of the iterable dir changes
* alright
* Remove usages of deprecated formatters
* 📷
* fmt
* Update shimmer.zig
* wip
* wip
* wip
* progress
* more
* Latest
* stuck on error
* latest
* workaround stage2
* wip
* Update string_immutable.zig
* wip
* Migrate `Dirent` and `require("fs')` to use JSC<>Zig bindings
* Fix build errors
* Fixup most of the test failures
* Fix `make headers`
* Fix "outside package path" error
* Fixup aligned alloc
* Add missing file
* linux
* More linux fixes
* use latest peechy
* Fix transpiler test failure
* Forgot about these
* Fixup test failure
* Update node-timers.test.ts
* [node:htt] Fix `undefined is not an object` error
Fixes https://github.com/oven-sh/bun/issues/1618
* Update http.exports.js
* Make this test less flaky
* fix hashes
* Fix hex formatting and zls issues
* Download zig version
* Update Dockerfile
* Update Dockerfile
* Update uws
* Update Dockerfile
* Set llvm version
* Update README.md
* Update uws
* Update Dockerfile
* Update io_linux.zig
* Update bun.zig
* Log output
* workaround strange @cInclude error
* Make ffi tests better
* Don't use cImport
* Update c.zig
* Update c-bindings.cpp
* call setOutputDir
* Update Dockerfile
* Use a longer name
* latest
* Update serve.test.ts
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com >
Co-authored-by: Veikka Tuominen <git@vexu.eu >
2022-12-28 00:51:22 -08:00
Jarred Sumner
b631ea7d72
import everything from "bun" where possible
2022-11-29 02:42:56 -08:00
Jarred Sumner
c2cf1d6493
not sure yet
2022-04-18 21:18:37 -07:00
Jarred Sumner
612fad706f
fix wasm build take 2 (one more thing is broken)
2022-04-18 20:51:10 -07:00
Jarred Sumner
6728551dc4
Fix wasm build
2022-04-18 17:41:58 -07:00
Jarred Sumner
50560e169c
WASM
2022-02-27 23:20:10 -08:00
Jarred Sumner
e75c711c68
Upgrade to latest Zig, remove dependency on patched version of Zig ( #96 )
...
* Prepare to upgrade zig
* zig fmt
* AllocGate
* Update data_url.zig
* wip
* few files
* just headers now?
* I think everything works?
* Update mimalloc
* Update hash_map.zig
* Perf improvements to compensate for Allocgate
* Bump
* 📷
* Update bun.lockb
* Less branching
* [js parser] Slightly reduce memory usage
* Update js_parser.zig
* WIP remove unused
* [JS parser] WIP support for `with` keyword
* Remove more dead code
* Fix all the build errors!
* cleanup
* Move `network_thread` up
* Bump peechy
* Update README.md
2021-12-30 21:12:32 -08:00
Jarred Sumner
336a4b6ac2
Prepare to run unit tests & remove some dead code ( #92 )
...
* Remove some dead code
* 💀 code
* Fix the zig tests
* [JS Printer] Print integers faster & less scientific notation on decimals
* 💀 dead code
* skip
* Run all the unit tests
2021-12-27 18:06:31 -08:00
Jarred Sumner
7257094662
Okay this hunks solution seems to work for now. It's not _great_ though.
...
Former-commit-id: 32cdc13f63
2021-05-08 19:41:52 -07:00
Jarred Sumner
18794b18b3
Fix for loop initializer
...
Former-commit-id: 6b863d5d51
2021-05-08 14:23:52 -07:00
Jarred Sumner
e70ac2ce82
wip
...
Former-commit-id: 79223472f7
2021-05-07 23:34:16 -07:00
Jarred Sumner
1261560214
This _sort of_ works
...
Former-commit-id: 8c4917fe60
2021-05-07 20:19:32 -07:00
Jarred Sumner
caa747ba71
wip
...
Former-commit-id: f4267e2d1f
2021-05-07 14:12:56 -07:00
Jarred Sumner
fad34bb4ab
cool
...
Former-commit-id: 96ff169e46
2021-05-07 01:26:26 -07:00
Jarred Sumner
ca2a3f69ff
hm
...
Former-commit-id: 1d44b63675
2021-05-03 20:29:38 -07:00
Jarred Sumner
435a6e9b18
alrighty
2021-04-27 13:00:18 -07:00
Jarred Sumner
02fbb8e82a
json works in CLI sort of
2021-04-27 12:00:10 -07:00
Jarred Sumner
568db047a3
wap
2021-04-26 00:34:45 -07:00
Jarred Sumner
879743110c
waip
2021-04-20 22:59:22 -07:00
Jarred Sumner
5ae24b75ae
lots
2021-04-19 20:53:54 -07:00