aboutsummaryrefslogtreecommitdiff
path: root/src/bun.js (follow)
AgeCommit message (Collapse)AuthorFilesLines
2023-04-07fix(node:events): correct `node:events.once`, add testsderrick/fix/event-emitter-async-iterGravatar Derrick Farris 8-84/+206
2023-04-06fix(node:events): fix abort behaviorGravatar Derrick Farris 2-25/+17
2023-04-06feat(node:events): finish `EE.AsyncIterator` and `node:events.on()`, add ↵Gravatar Derrick Farris 4-240/+144
some tests
2023-04-06wip(node:events): get async iter working, work through test flakinessGravatar Derrick Farris 4-201/+269
2023-04-06wip(node:events): fix `node:events.on` async iter to specGravatar Derrick Farris 13-40/+638
2023-04-06Fix `toEqual` when the second array has extra array holes (#2580)Gravatar Dylan Conway 2-18/+27
* iterate through remaining indexes, keep prop identifier * tests * format
2023-04-06Add last modify field "mtime" for FileBlob (#1431) (#2491)Gravatar Zhongwei Yao 4-33/+109
* Add lastModified field for FileBlob (#1431) lastModified value is epoch timestamp in millisecond unit. * update according to review comment.
2023-04-06fix(ws): export Server (#2575)Gravatar hiroki osame 1-13/+30
2023-04-05PrettierGravatar Jarred Sumner 2-2/+2
2023-04-05fix(fetch.proxy) fix proxy authentication (#2554)Gravatar Ciro Spaciari 1-2/+2
* fix proxy authentication * add auth tests * remove unused
2023-04-05fix: build warnings (#2562)Gravatar hiroki osame 4-4/+1
2023-04-05fix `deepEquals` with array holes and accessors (#2557)Gravatar Dylan Conway 1-10/+20
* `deepEqual` handles slow array indexes * another test * oops * remove bad test * compare indexes in non-strict mode * more tests
2023-04-05fix: modules to have null prototype (#2561)Gravatar hiroki osame 1-2/+5
2023-04-04Implement `import.meta.main` (#2556)Gravatar Jarred Sumner 5-4/+39
* Implement `import.meta.main` * Update main-test-1.js * Update fs.test.ts --------- Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-04-04Dylan/fix some failing tests (#2544)Gravatar Jarred Sumner 2-5/+34
* handle `umask()` invalid arguments * move `bktree-fast` to test root, fix postinstall * fix fs test * could be baseline * handle different timezones * accidentally deleted tests * fix hang in `AbortSignal.timeout` * bring abort tests back * Revert "bring abort tests back" This reverts commit 0ff2ad5bf408694ac719b8ba0a38b16070e10201. * bunx node-gyp * bun x * fix typecheck * test * Update inspect.test.js --------- Co-authored-by: Dylan Conway <dylan.conway567@gmail.com>
2023-04-01Add stubs for missing node builtins (#2534)Gravatar Jarred Sumner 18-41/+1206
* Stub `node:v8` * Stub `node:trace_events` * Stub `node:repl` * Stub `node:inspector` * Stub `node:http2` * Stub `node:diagnostics_channel` * Stub `node:dgram` * Stub `node:cluster` * Link stubs * cleanup * Clean up the test * Implement `node:vm` stub * Cleanup `v8` module stub * Add missing `promises` export to node:stream * Implement `node:stream/promise` * Implement `node:assert/strict` * cleanup * better errors * Increaase timeout * Update inspector.exports.js * Make the version consistent * Implement `process.binding("constants")` * Update runner.node.mjs --------- Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-03-29Fix date format (#2422) (#2474)Gravatar Adrien Zinger 1-1/+4
* Fix date format (#2422) * Add unit tests for #2422
2023-03-29Fixes #2499 (#2501)Gravatar Jarred Sumner 1-3/+11
* Fixes #2499 * This needs to be quoted --------- Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-03-28`bun --watch` and `bun test --watch` (#2500)Gravatar Jarred Sumner 3-31/+74
* --watch wip * Upgrade for latest zig * Implement `bun --watch` * Implement `bun test --watch` * Auto restart on crash in --watch * :clock1: :clock2: :clock3: :clock330: --------- Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-03-28More bug fixes (#2486)Gravatar Jarred Sumner 13-29/+152
* readline_promises test fix * fix `escapeHTML` for baseline builds * fs test fixes, use `tmpdir()` * add paths for `resolve.test.js` * isError with toString symbol and error prototype * comment about `toString` * skip async macro transform * test cleanup, skip stack format test * readline undo and redo fix * capture error from readline keypress * Update tcp-server.test.ts * use `removefileat` for recursive rmdir * use strong for `signal.reason` * initialize `m_flags` * directory with file fs test * recursive option * import expect * could be less than * move abort signal tests to another process * fix typecheck --------- Co-authored-by: Dylan Conway <dylan.conway567@gmail.com>
2023-03-27Fix for latest zig (#2495)Gravatar Jarred Sumner 1-1/+1
* Fix for latest zig * Revert "Use PATH instead of sudo to install bun for testing (#2460)" This reverts commit 5fd406ca2ffa0cb9c1cb98140bedf0a3ba9e5022. --------- Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-03-26fix https default port on http.request (#2490)Gravatar Ciro Spaciari 1-1/+1
* fix https default port on http.request * Update http.exports.js
2023-03-22A couple bug fixes (#2458)Gravatar Dylan Conway 11-51/+44
* fix valid status code range * update path * highwatermark option * throw DOMException * remove extra transpiler output * more transpiler tests * comment * get index not quickly * replace with `getDirectIndex` * update abort test * throw out of range status code * promisify test fix * move stdio test instance files * working crypto tests * allow duplicate set-cookie headers * different formatting * revert, fix will be in different pr * it is called * use min buffer size * fix url tests * null origin for other protocols * remove overload * add very large file test * await * coerce to int64 * 64 * no cast * add todo blob url tests * use `tryConvertToInt52`
2023-03-19remove unnecessary check (#2432)Gravatar Ciro Spaciari 1-3/+0
2023-03-19add some extra abort checks into streams (#2430)Gravatar Ciro Spaciari 1-3/+9
* add some checks to avoid UAF * avoid multiple calls to finalize if endFromJS is called more than once * fix no-op comment * mark as requested_end on abort * remove requested_end from abort
2023-03-19Prevent undefined memory accessGravatar Jarred Sumner 1-1/+1
2023-03-19Several bug fixes (#2427)Gravatar Jarred Sumner 10-207/+423
* Fix test * Fix segfault when unexpected type is passed in `expect().toThrow` * Fix issues with request constructor * Don't bother cloning headers when its empty * woops * more tests * fix incorrect test * Make the fetch error messages better * Update response.zig * Fix test that failed on macOS * Fix test * Remove extra hash table lookups * Support running dummy registry directly cc @alexlamsl * Update test * Update test * fixup * Workaround crash in test runner * Fixup test * Fixup test * Update os.test.js --------- Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-03-18[node:net] Fix issue with `listen` callback firing before it's listeningGravatar Jarred Sumner 1-1/+10
2023-03-18[fetch] Make the default body value `null` when unspecifiedGravatar Jarred Sumner 3-15/+19
This is better aligned with the fetch spec
2023-03-18Fix crash when rendering error page and the server or network is slowGravatar Jarred Sumner 1-0/+1
2023-03-18Fix several bugs (#2418)Gravatar Dylan Conway 4-4/+28
* utf16 codepoint with replacement character * Fix test failure with `TextEncoder("ascii')` * Add missing type * Fix Response.prototype.bodyUsed and Request.prototype.bodyUsed * Fix bug with scrypt error not clearing * Update server.zig * oopsie
2023-03-17Fix various fetch/response/request tests (#2416)Gravatar Dylan Conway 14-116/+234
* fix most fetch tests, skip a few * fastGet, toValueGC, and invalid init * bigint unreachable, range error, log process as process * remove extra fetch_headers * remove js_type parameter, check isObject() * throw invalid mime type error, use enum literal * switch back to promise rejection * RangeError pascal case
2023-03-17Feat(test): add toMatch (#2404)Gravatar zhiyuan 6-8/+112
2023-03-15Fix socket tests with connection errors (#2403)Gravatar Dylan Conway 1-0/+2
* release pending activity with connection error handler * unref poll_ref
2023-03-15feat(expect): update toBeInstanceOf (#2396)Gravatar zhiyuan 6-15/+42
* feat: update instanceof binding * fix: according to PR comments
2023-03-15Fixes #2399Gravatar Jarred Sumner 2-12/+14
2023-03-15allows Bun.serve to listen on IPV6 (#2400)Gravatar Ciro Spaciari 1-26/+63
2023-03-14calculated class name after name propGravatar Dylan Conway 1-11/+8
2023-03-14Implement `toMatchSnapshot()` (#2294)Gravatar Dylan Conway 22-59/+3168
* buggy snapshot * error output for failed snapshot * missing first * hints * open dir once, better cleanup * update flag * truncate on update * object and class snapshot formatting * array formatting * no function name, single item is empty array * string objects, maps, sets, promise * avoid using invalid memory * handle number objects * handle extending `Number` * boolean objects * snapshot tests and test updates * snapshot format for buffers * safer snapshot parsing * property matchers setup * strings and tests * generate classes with empty prototype * optional `propertyMatchers` parameter * new test folder structure * strings.eqlLong * globalObject.throwPretty() and expect.any tests * add updateSnapshot flag to help * move snapshot format out of `printErrorlikeObject` * empty object snapshot format * separate typed array, remove trailing comma * use `isCell`, object trailing commas * handle unicode * todo for primitive constructors * switch to `JSC.Node.Syscall.open` and `JSC.Maybe` * use js parser for snapshot files * deinit ast, log parse error * copy/paste most of `exports.ZigConsoleClient` * remove snapshot option * remove ordered properties option * remove snapshot format option from `exports.zig` * remove extra newlines * change mode * update test runner output * escape backticks faster * `bunx jest` in temp dir * remove buffered writer * add `toMatchSnapshot` to types * cleanup, switch to `pread` * cli `--update` flag * `--update-snapshots` * remove string object format
2023-03-14Add missing exportGravatar Jarred Sumner 1-6/+8
2023-03-14Fix missing `constants` export in zlibGravatar Jarred Sumner 1-2/+3
2023-03-14feat: add toBeInstanceOf matcher in expect (#2389)Gravatar zhiyuan 1-1/+64
2023-03-14Fix `node:https` being readonlyGravatar Jarred Sumner 2-8/+4
2023-03-14Fix text formatting in .remoteAddress in `ServerWebSocket` and `Socket`Gravatar Jarred Sumner 3-34/+26
Fixes #2387
2023-03-13feat(net.createServer) and adds socket.connect IPC support (#2337)Gravatar Ciro Spaciari 2-9/+316
* added net.Server * fix fmt * fix cast and move test * fix node-net.tests.ts but breaks server data receive * fix end and close only emitting when data or pipe was added * fix socket starting paused * add echo test * fix fmt * fix fmt * on close if the socket is paused, keep paused until the user resumes it to match node behavior * resume on connect * fix getConnections, error on close, make _Handler private and create symbols for SocketServerHandlers * add path support (IPC) * fix unix domains support, add connect unix tests * fix unix socket tests * emit listening and listening error on next tick * fix connection flask test * try fix connect error on macos test * merge connection and drop tests * added exclusive option * fix socket.zig fmt * fix validation for options and add test for it * pass prettier fmt
2023-03-12fix `require.resolve` with an empty options object #2370 (#2371)Gravatar dave caruso 1-3/+5
* fix #2370 and import-meta test * edit test to not allow transpiler optimization
2023-03-08fix(node:child_process): fix missing primordial `StringPrototypeSlice` (#2352)Gravatar Derrick Farris 1-0/+1
2023-03-08More spec compliant `Blob.prototype.type` (#2340)Gravatar Jarred Sumner 11-58/+145
* Make `Blob.prototype. type` more spec compliant * Add a few more checks for isNumber() * Fix `make headers` * Safer JSValue.isString() * More tests for blob.slice * Make `Blob.prototype.type` more spec compliant * Add isASCII check * Fix types * Fix failing type test * Update blob.zig * Update blob.zig * Fix .eql check on empty values --------- Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-03-07"binary" is an alias of "latin1"Gravatar Jarred Sumner 1-2/+5
Fixes https://github.com/oven-sh/bun/issues/2110
2023-03-07improve `Buffer` compatibility with Node.js (#2341)Gravatar Alex Lam S.L 12-944/+1055
* improve `Buffer` compatibility with Node.js * use `memmove()` allow `encoding` to be `undefined`