aboutsummaryrefslogtreecommitdiff
path: root/src/bun.js (follow)
AgeCommit message (Collapse)AuthorFilesLines
2023-07-23Upgrade WebKit (#3777)Gravatar Jarred Sumner 17-380/+262
* Upgrade to latest WebKit * Upgrade WebKit * hm * Fix failing tests * Delete utf8-encoding-fixture.bin.cmp --------- Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-07-23Fix bugs with connecting to localhost (#3758)Gravatar Jarred Sumner 2-31/+56
* Fix bugs with connecting to localhost * Update uws * More logs * Allow not setting a hostname * Make server.hostname & server.protocol faster * Fixup * normalize listening host * Fix test --------- Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-07-22Explicitly ref/unref blobs before extracting the value (#3755)Gravatar Jarred Sumner 1-0/+36
* Explicitly ref/unref blobs before extracting the value * :scissors: --------- Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-07-22in Bun.write(), defer creating the Promise until we're just about to ↵Gravatar Jarred Sumner 1-4/+6
schedule the task
2023-07-22[install] improve workspace substitution of npm dependencies (#3754)Gravatar Alex Lam S.L 1-1/+1
- respect semver ranges
2023-07-22ref() before creating the JSPromiseGravatar Jarred Sumner 1-9/+14
2023-07-22Fixes ↵Gravatar Jarred Sumner 1-6/+8
https://discord.com/channels/876711213126520882/1131175053409656833/1131175053409656833 @tr1ckydev this fixes the issue you ran into, see the diff for an example usage of a Bun.plugin that makes a network request on import.
2023-07-22fix path.format for `vite build` (#3734)Gravatar dave caruso 1-5/+5
* fix path.format for vite * Update path.test.js --------- Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-07-22Fix `writeFileSync` when the mode is greater than 0o777. (#3747)Gravatar Ai Hoshino 1-3/+3
Close: #3740
2023-07-22Fixes #3744Gravatar Jarred Sumner 1-15/+125
2023-07-22Unified event loop (#3741)Gravatar Jarred Sumner 14-31/+189
* Unified event loop * Update WebKit, add test for es-module-lexer * Update README.md * Use async wasm * Explicitly set whether concurrenttask should be deinit'd * Update package.json --------- Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-07-21Use WebKit's URL parser in fetch() and `bun install` (#3730)Gravatar Jarred Sumner 3-46/+249
* Use WebKit's URL parser in fetch() and `bun install` * Allocate less memory * Fix test --------- Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-07-21handle `latin1` in `Bun__encoding__toString`. (#3739)Gravatar Ai Hoshino 1-0/+1
Close: #3738
2023-07-21fix `isFIFO` (#3715)Gravatar Dylan Conway 1-3/+3
* check poll ref flags * Update WebCoreJSBuiltins.cpp
2023-07-20fix process.exit status code handling (#3714)Gravatar dave caruso 6-593/+617
2023-07-20fix directory caching with workaround (#3710)Gravatar dave caruso 1-1/+4
* ok * test
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>