aboutsummaryrefslogtreecommitdiff
path: root/src/bun.js (follow)
AgeCommit message (Collapse)AuthorFilesLines
2023-07-20Pass constructor arguments to TextDecoder (#3692)Gravatar Julian 1-15/+50
* Make TextDecoder constructor use options parameter The constructor now actually sets TextDecoder properties using the options parameter. * Defer decoder allocation to end of constructor * Verify types of TextDecoder options * TextDecoder throw TypeError on failure * Tidying
2023-07-20set `_preload_modules` to empty array (#3709)Gravatar Dylan Conway 2-2/+2
2023-07-20fix start delay on Worker (#3707)Gravatar Ciro Spaciari 2-2/+14
* fix start delay on Worker * fmt * add delay test
2023-07-19Support streams in response.formData() & request.formData, introduce ↵Gravatar Jarred Sumner 5-7/+55
Bun.readableStreamToFormData() (#3697) * codegen * FormData.from * Fixes #3225 * Introduce `Bun.readableStreamToFormData` * Update bun.d.ts * Add examples * add --------- Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-07-19Inline`bun` object from workersGravatar Jarred Sumner 1-13/+9
2023-07-19Fix vite (#3694)Gravatar dave caruso 2-1/+349
* Fix ServerWebSocket.readyState * Add create_hash_table to our repo * Fix #3216
2023-07-19Implement `AsyncLocalStorage` (#3089)Gravatar dave caruso 33-3146/+3343
* work to get async local storage working. * a * a * everything but queueMicrotask * sdfghj * . * finish * tests * test * ok * done * im so stupid * Upgrade WebKit * refactor * refactor * changes requested * oops * cool * fix runInAsyncScope
2023-07-19Fix make headersGravatar Jarred Sumner 1-2/+3
2023-07-19update root certificates and add tls.rootCertificates (#3688)Gravatar Ciro Spaciari 1-0/+21
* implement tls.rootCertificates * add test * bump uws/usockets * bump uws + .len on certs
2023-07-19move constants module to cpp (#3683)Gravatar Ciro Spaciari 5-2/+273
2023-07-19fix `make headers`Gravatar Dylan Conway 1-7/+15
2023-07-18Fix crash in postMessage that repro'd after ~100,000 messagesGravatar Jarred Sumner 6-21/+57
2023-07-18more progress on fixing gc issueGravatar Jarred Sumner 6-61/+162
2023-07-18feature(constants) add constants/node:constants module and tests(prisma) use ↵Gravatar Ciro Spaciari 1-0/+5
prima 5.0.0 + use same connection for postgres, add prisma mssql (disabled for now) (#3672) * use prima 5.0.0 + use same connection for postgres * change mongodb test URL * constants module + mssql prisma test (disabled)
2023-07-18[jest] execute lifecycle hooks on empty blocks (#3663)Gravatar Alex Lam S.L 1-8/+26
fixes #3494
2023-07-18Fixes #3669Gravatar Jarred Sumner 4-13/+35
2023-07-18zig upgrade (#3667)Gravatar Dylan Conway 37-855/+856
* upgrade * more fixes * Bump Zig --------- Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-07-17Emit writeBarrier in `napi_module_register`Gravatar Jarred Sumner 1-6/+14
2023-07-17Fix potential crash in process.dlopen()Gravatar Jarred Sumner 1-5/+17
2023-07-17Implement `process.{stdout, stderr}.{columns, rows, getWindowSize}`Gravatar Jarred Sumner 1-1/+54
2023-07-17[tls] General compatibility improvements (#3596)Gravatar Ciro Spaciari 12-7/+2190
* wip * subjectaltname * more progress * bindings * fmt * getCert/getPeerCertificate * fix checkServerIdentity * fix checkServerIdentity * add a lot of TLSSocket functions * getEphemeralKeyInfo fix and comment * add alternative for getEphemeralKeyInfo * add get session and set session * fix isSessionReused * get back the raw data for MSSQL * fixeup * fixup getSession + tests * fix doc + fmt * getFinished/getPeerFinished * codegen * fixup * revert webkit * more fixes * ssl helper + revert test oops * asserts
2023-07-17workaround `readable-stream` compatibility (#3626)Gravatar Alex Lam S.L 1-3/+5
- update `bun link` tests - update `tests/bun.lockb` - drop unused import in test
2023-07-17Fix speculative crashes in console.log(formData) and console.log(headers)Gravatar Jarred Sumner 2-30/+24
2023-07-17Fix crash in console.log(urlSearchParams) on a URLSearchParams object with a ↵Gravatar Jarred Sumner 1-4/+12
lot of keys
2023-07-17Fix memory leak in `await new Response(latin1String).arrayBuffer()` and ↵Gravatar Jarred Sumner 13-102/+59
`await Response.json(obj).json()` (#3656) ❯ mem bun --smol response-arrayBuffer.mjs cpu: Apple M1 Max runtime: bun 0.6.15 (arm64-darwin) benchmark time (avg) (min … max) p75 p99 p995 --------------------------------------------------------------------------------------------------- ----------------------------- new Response().arrayBuffer() (new string each call, latin1) 12.9 µs/iter (625 ns … 4.18 ms) 1 µs 567.17 µs 711.79 µs new Response().arrayBuffer() (new string each call, utf16) 12.85 µs/iter (1.67 µs … 1.56 ms) 2.17 µs 462.75 µs 621.13 µs new Response().arrayBuffer() (existing string, latin1) 6.53 µs/iter (6.21 µs … 7.07 µs) 6.64 µs 7.07 µs 7.07 µs Peak memory usage: 49 MB bun on  jarred/memory-leak-fix took 2s ❯ mem bun response-arrayBuffer.mjs cpu: Apple M1 Max runtime: bun 0.6.15 (arm64-darwin) benchmark time (avg) (min … max) p75 p99 p995 --------------------------------------------------------------------------------------------------- ----------------------------- new Response().arrayBuffer() (new string each call, latin1) 1.2 µs/iter (1.04 µs … 1.42 µs) 1.22 µs 1.42 µs 1.42 µs new Response().arrayBuffer() (new string each call, utf16) 2.74 µs/iter (2.42 µs … 6.37 µs) 2.68 µs 6.37 µs 6.37 µs new Response().arrayBuffer() (existing string, latin1) 746.37 ns/iter (643.82 ns … 1.04 µs) 776.11 ns 1.04 µs 1.04 µs Peak memory usage: 104 MB bun on  jarred/memory-leak-fix took 2s ❯ mem ~/.bun/bin/bun response-arrayBuffer.mjs cpu: Apple M1 Max runtime: bun 0.6.15 (arm64-darwin) benchmark time (avg) (min … max) p75 p99 p995 --------------------------------------------------------------------------------------------------- ----------------------------- new Response().arrayBuffer() (new string each call, latin1) 1.69 µs/iter (1.56 µs … 2.1 µs) 1.73 µs 2.1 µs 2.1 µs new Response().arrayBuffer() (new string each call, utf16) 2.65 µs/iter (2.47 µs … 3.17 µs) 2.69 µs 3.17 µs 3.17 µs new Response().arrayBuffer() (existing string, latin1) 667.67 ns/iter (547.67 ns … 1.28 µs) 694.21 ns 1.28 µs 1.28 µs Peak memory usage: 2735 MB bun on  jarred/memory-leak-fix took 2s ❯ mem ~/.bun/bin/bun --smol response-arrayBuffer.mjs cpu: Apple M1 Max runtime: bun 0.6.15 (arm64-darwin) benchmark time (avg) (min … max) p75 p99 p995 --------------------------------------------------------------------------------------------------- ----------------------------- new Response().arrayBuffer() (new string each call, latin1) 13.51 µs/iter (541 ns … 3.2 ms) 1.92 µs 553.42 µs 709.92 µs new Response().arrayBuffer() (new string each call, utf16) 13.07 µs/iter (1.71 µs … 3.43 ms) 2.13 µs 451.21 µs 651.67 µs new Response().arrayBuffer() (existing string, latin1) 6.25 µs/iter (5.79 µs … 6.81 µs) 6.4 µs 6.81 µs 6.81 µs Peak memory usage: 292 MB Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-07-1720% faster `deserialize` (#3655)Gravatar Jarred Sumner 1-3/+85
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-07-16Fixes base64url encoding for crypto (#3654)Gravatar Jarred Sumner 1-11/+6
* Fixes base64url encoding for crypto * :green_apple: * Update nodejs-apis.md --------- Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-07-16Add `--smol` flagGravatar Jarred Sumner 1-1/+2
2023-07-16Implement Workers (#3645)Gravatar Jarred Sumner 33-65/+2400
* copy files * format * options * Introduce `Worker`, `onmessage`, `onerror`, and `postMessage` globals * Stub `Worker.prototype.ref` & `Worker.prototype.unref` * Update web_worker.zig * Worker works * Add "mini" mode * add wakeup * Partially fix the keep-alive issue * clean up refer behavior * Implement `serialize` & `deserialize` in `bun:jsc` & add polyfill for `node:v8` * Types & docs * Update globals.d.ts * Add mutex * Fixes --------- Co-authored-by: Dylan Conway <dylan.conway567@gmail.com> Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-07-16Support `napi_wrap` in constructors (#3614)Gravatar Jarred Sumner 2-18/+60
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-07-14structured clone (#3637)Gravatar Dylan Conway 17-9/+6411
* copy `SerializedScriptValue` * format * make `SerializedScriptValue` compile * add `transfer` option * tests * serialize/deserialize blobs * tests for blobs * serialize/deserialize file blobs * more tests * small cleanup * format * small changes + serialize offset * slice helper * map and set test
2023-07-13Implement `ping()`, `pong()`, `terminate()` for WebSocket client and server ↵Gravatar Ashcon Partovi 13-187/+965
(#3257)
2023-07-12Improve our internal typedefs (#3608)Gravatar dave caruso 1-4/+0
* types * some more * yeah * i think that fixes it * oop
2023-07-12feat(bun/test): Implement "bail" option for "bun test" (#3253)Gravatar Tiramify (A.K. Daniel) 1-0/+1
* Implement bun test --bail * Fixes * move printSummary() (more readable) * Fixes 2 * idk why it got deleted * Fixes 3 * fmt this better * Update test_command.zig * Fix "0 files" * track number of files so bailing out early prints the right number --------- Co-authored-by: dave caruso <me@paperdave.net>
2023-07-11Fix another crash in Error.captureStackTrace (#3611)bun-v0.6.14Gravatar Jarred Sumner 2-20/+10
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-07-11Fix crash on linux when throwing SystemError from C++Gravatar Jarred SUmner 3-31/+47
2023-07-11Update ZigGlobalObject.cppGravatar Jarred Sumner 1-1/+1
2023-07-11Implement `process.kill` and `process._kill`Gravatar Jarred Sumner 2-72/+152
2023-07-11Fixes #3595Gravatar Jarred Sumner 1-1/+19
2023-07-11Implement throwIfNoEntryGravatar Jarred Sumner 1-8/+43
2023-07-11process signal events (#3569)Gravatar Dylan Conway 9-90/+250
* signal events * simple tests * ignore SIGSTOP * better tests * use `EventEmitter` * use `Bun__getDefaultGlobal` * progress * don't use 'Bun__getDefaultGlobal` * fix tests * remove signals from map * update tests * don't overwrite event emitter methods * avoid two lookups * use `std::once` * releaseEarly() * Remove signal handler after use * Update call-raise.js * Create process-signal-handler.fixture.js * Don't register duplicates * Add missing lock * another test * update test * revert some changes --------- Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-07-11fix iterating stack trace (#3600)Gravatar Dylan Conway 1-3/+3
* `i + 1` and remove `defer` * a test * fix test
2023-07-11Fix: console.log with class constructors (#3602)Gravatar dave caruso 3-41/+52
* Fix console.log with class constructors * oops * fix it * lol * fix test
2023-07-10fix "readable" event being emitted incorrectly (#3475)Gravatar dave caruso 1-1/+0
* fix "readable" event being emitted incorrectly * fix impl and add test * changes * asdfghj * esm
2023-07-09Fixes #3530 (#3587)Gravatar Jarred Sumner 3-26/+63
* Fixes #3530 * Handle OOM * Add test --------- Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-07-09Implement process.memoryUsage() and process.cpuUsage() (#3586)Gravatar Jarred Sumner 5-58/+447
* Implement process.memoryUsage() and process.cpuUsage() * Avoid mi_process_info * Update bench * Update Process.cpp * fixup * More tests + linux fixup * Skip it for now since it seems less accurate --------- Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-07-09Implement nearly all of `process` object methods and properties (#3581)Gravatar Jarred Sumner 6-434/+756
* Add special case * Make process object load faster * Fix openStdin --------- Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-07-09fix metadata bits of uuid (`randomUUID()`) (#3583)Gravatar Ai Hoshino 4-10/+21
* fix uuid version Close: https://github.com/oven-sh/bun/issues/3575 * add unittest * small fix * avoid unnecessary copying
2023-07-08Implement `process.on("beforeExit", cb)` and `process.on("exit", cb)` (#3576)Gravatar Jarred Sumner 6-74/+272
* Support `process.on('beforeExit')` and `process.on('exit')` * [bun:sqlite] Always call sqlite3_close on exit * Update process.test.js --------- Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-07-07Use BunString in JSBundlerPlugin (#3557)Gravatar Jarred Sumner 3-41/+67
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>