aboutsummaryrefslogtreecommitdiff
path: root/src/bun.js/builtins (follow)
AgeCommit message (Collapse)AuthorFilesLines
2023-06-01Bundle and minify `.exports.js` files. (#3036)Gravatar dave caruso 34-17514/+0
* move all exports.js into src/js * finalize the sort of this * and it works * add test.ts to gitignore * okay * convert some to ts just to show * finish up * fixup makefile * minify syntax in dev * finish rebase * dont minify all modules * merge * finish rebase merge * flaky test that hangs
2023-06-01random fixes that help vite/sveltekit (#3140)Gravatar dave caruso 4-14/+13
* existsSync with invalid paths should return false * partially support file urls (does not do percent encoding) * add utf16 support for Path.isAbsoluteString * Update src/resolver/resolver.zig Co-authored-by: Jarred Sumner <jarred@jarredsumner.com> * fixups * revert * prettier format --------- Co-authored-by: Jarred Sumner <jarred@jarredsumner.com>
2023-06-01Fix streams breaking on reverted EventEmitter / Make Discord.js work (#2913)Gravatar dave caruso 1-1/+1
* Revert "Revert "use a lazyily initialized stream for `node:crypto` `createHash` (#2652)"" This reverts commit 613bb4822ee8f4fbfd78aef391e2db8f07659a6f. * Revert "Revert "implement `node:events` in javascript (#2604)"" This reverts commit a4d0a1961abe0c6073e15cc6f7c0601b74f2e3f7. * oops * fix entrypoints stuff * fix hash copy * use native events for node streams and crypto * requested changes * oops * make discord.js work * fix webkit hash * headers tojson
2023-05-31Small improvements to `bun test` (#3071)Gravatar Ashcon Partovi 1-1/+1
* Change status icon for skipped tests from "-" to "»" * Show file path instead of filename in `bun test` * Emit collapsable logs when running `bun test` in Github Actions https://docs.github.com/en/actions/using-workflows/workflow-commands-for-github-actions#grouping-log-lines * Add fallback for test icons when emojis are not available * Only check for GITHUB_ACTIONS when running `bun test` * Emit error annotations when running `bun test` in Github Actions https://docs.github.com/en/actions/using-workflows/workflow-commands-for-github-actions#setting-an-error-message * Remove ANSI output from Github annotation, it doesn't work * Remove outdated code from internal test runner * Add GithubActionFormatter to handle cases where error name or message is already ANSI * Fix formatting of test * Fix #3070 * Implement `bun test --run-todo` By default, `test.todo()` is no longer run, unless `--run-todo` is specified. * Fix test that relies on test.todo() being run * Support vitest-style test options * Disable GITHUB_ACTION in test harness * Add types for TestOptions * Fix bug where test.skip() actually ran * Implement `test.skipIf()` and `describe.skipIf()` * Implement `test.runIf()` * Move DiffFormatter to its own file * Fix bug where Bun.inspect() would emit a Github annotation * Introduce `bun test --only`, rename `--run-todo` to `--todo` * Implement `test.if()`, `describe.if()`, and other test fixes * Remove unwanted files from last commit * Fix last reference to --run-todo * Fix memory issues with printing github actions text * Update bindings.zig * Fix bug with `test.only()` * Remove debug test * Make the github annotations better * Improve .vscode/launch.json * Implement `expect().toBeNil()` * Remove .only() from test * Implement toBeBoolean(), toBeTrue(), toBeFalse() * Add lots of matchers * toBeNil() * toBeBoolean() * toBeTrue() * toBeFalse() * toBeNumber() * toBeInteger() * toBeFinite() * toBePositive() * toBeNegative() * toBeWithin() * toBeSymbol() * toBeFunction() * toBeDate() * toBeString() * toInclude() * toStartWith() * toEndWith() * Fix #3135 * Reduce verbosity of test * Fix snapshot bug --------- Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-05-29Cleanup CommonJS changes (#3112)bun-v0.6.5Gravatar Jarred Sumner 3-6/+14
* Add more GC in test * Fix handling of functions and re-assignments in CommonJS * Increase timeout --------- Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-05-29Natively support CommonJS at runtime (#3104)Gravatar Jarred Sumner 2-5/+10
* Natively support CommonJS at runtime * cleanup how getters are handled, add fast path * more consistent with node * use * As * Remove thrown modules on exception * Handle exception better --------- Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-05-24Implement `require.cache` (#3045)Gravatar Jarred Sumner 3-0/+112
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-05-22Write out builtins with TypeScript + Minify them (#2999)Gravatar dave caruso 101-24953/+16304
* start work drafting how builtins will work * work on ts builtin * builtins stuff so far * builtins * done for today * continue work * working on it * bindings so far * well, it builds. doesnt run * IT RUNS * still lots of ts errors but it is functional * sloppy mode
2023-05-22[node:buffer] Add missing `inspect` functionbun-v0.6.3Gravatar Jarred Sumner 3-0/+29
cc @paperdave
2023-05-11oops (#2863)Gravatar dave caruso 2-3/+3
* oops * oops part 2
2023-05-11Allow reading config from within plugins, and partially implement esbuild ↵Gravatar dave caruso 3-4/+44
`initialOptions` (#2861) * Implement plugin build.config and initialOptions * update types * default initialoptions entrypoints
2023-05-09Re-run builtins generatorGravatar Jarred Sumner 1-2/+6
2023-05-08implement build api `define` and `loaders` (#2805)Gravatar dave caruso 1-0/+4
* parse error logs * clean up types * remove --jsx-production. use NODE_ENV instead * add define to js api * add loaders to js api * fixups * sourcemap * typo fix * remove label, comment dir just for now * test tweaks * test work * make optional enums actually optional. allows `sourcemap: undefined` * overload host ram test * string tests * tests * test for 2815 * requested changes * sort this list * remove this test file now that it passes * oops * add --format * finish ts tests * doc typos related to define and loader
2023-05-06[Bun.build] Add error when an `onResolve` plugin returns a `namespace` which ↵Gravatar Jarred Sumner 2-7/+21
has no loader
2023-05-06fix crash when there are lots of build errorsGravatar Jarred Sumner 1-3/+4
2023-04-29Fix plugin namespaces always being set to `"flie"`Gravatar Jarred Sumner 2-3/+4
2023-04-28bundler tests: rest of default.test.ts and starting jsx tests (#2765)Gravatar dave caruso 2-5/+37
2023-04-25now it worksGravatar Jarred Sumner 2-15/+13
2023-04-25typoGravatar Jarred Sumner 2-3/+7
2023-04-25Implement `onResolve` plugins in `Bun.build()`, support multiple onLoad and ↵Gravatar Jarred Sumner 56-53/+1088
onResolve plugins (#2739) * its 2023 * WIP `onResolve` plugins * more progress * it compiles * Lots of small fixes * Seems to work excluding entry points * Update BundlerPluginBuiltins.cpp --------- Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-04-13Upgrade WebKit (#2643)Gravatar Jarred Sumner 23-91/+22
* Missing export * Regenerate builtins * Fix crash in require() * Various breaking JSC changes * hopefully speed up C++ compilation a little * Skip failing test fo rnow * Update WebKit * Add a comment * Fix error in postinstall * Update WebKit --------- Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-04-04Implement `import.meta.main` (#2556)Gravatar Jarred Sumner 4-2/+30
* 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-01Add stubs for missing node builtins (#2534)Gravatar Jarred Sumner 3-0/+74
* 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-19Several bug fixes (#2427)Gravatar Jarred Sumner 1-1/+1
* 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-07improve `Buffer` compatibility with Node.js (#2341)Gravatar Alex Lam S.L 3-37/+661
* improve `Buffer` compatibility with Node.js * use `memmove()` allow `encoding` to be `undefined`
2023-03-06feat(tty): add some `tty.WriteStream` methods to `process.{stdout, stderr}` ↵Gravatar Derrick Farris 2-1/+47
(#2320) * feat(stdio): add some `tty.WriteStream` methods * chore(builtins): add process builtin gen'd code
2023-02-14don't break esbuildGravatar Jarred Sumner 4-38/+18
2023-01-31Re-run prettier after changesGravatar Jarred Sumner 1-30/+10
2023-01-28[buffer] Do not throw in gettersGravatar Jarred Sumner 1-4/+4
2023-01-28[buffer] Add missing `offset` propertyGravatar Jarred Sumner 3-1/+27
2023-01-27`Buffer.from` doesn't need to be the Buffer constructorGravatar Jarred Sumner 3-21/+16
2023-01-22stub out process.stdin.setRawModeGravatar Jarred Sumner 2-1/+3
2023-01-21Refactor `new Buffer` to pass Node.js testsGravatar Jarred Sumner 3-13/+14
2023-01-21[Buffer] Add deprecated `parent` propertyGravatar Jarred Sumner 2-0/+18
2023-01-21[buffer] Add faster path for Uint8ArrayGravatar Jarred Sumner 2-1/+13
2023-01-21[buffer] Make Buffer.from pass more testsGravatar Jarred Sumner 3-91/+119
2023-01-18Fixes #1831Gravatar Jarred Sumner 4-17/+48
2023-01-10attempt (unsuccessfully) to improve c++ build timeGravatar Jarred Sumner 1-2/+0
2023-01-10Changes from upgrading webkitGravatar Jarred Sumner 1-1/+1
2023-01-0410x faster `new Buffer` (#1717)Gravatar Jarred Sumner 5-114/+147
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2022-12-28Move some code upGravatar Jarred Sumner 2-15/+9
2022-12-28Fix `ReadableStream.pipeTo`Gravatar Jarred Sumner 2-3/+3
2022-12-18Regenerate builtinsGravatar Jarred Sumner 1-4/+27
2022-12-17bug compatible with `stdin.on("readable")` (#1626)Gravatar Alex Lam S.L 1-3/+26
2022-12-17Delete Oniguruma (#1625)Gravatar Jarred Sumner 51-1509/+0
* Update .gitmodules * Delete oniguruma * Delete Oniguruma * Make this test less flaky * :scissors: Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2022-12-17Regenerate builtinsGravatar Jarred Sumner 1-7/+2
2022-12-16add tests for `process.stdin` (#1621)Gravatar Alex Lam S.L 1-1/+1
2022-12-15[process.stdin] Support reading from process.stdin in the same tickGravatar Jarred Sumner 2-5/+35
2022-12-15fix(stream): make Readable.read work w/o _construct implemented (#1613)Gravatar Derrick Farris 1-5/+0
* fix(stream): put Readable._readableState.constructed default in spec (true, not false) * cleanup(readable): remove unnecessary _construct methods * test(stream): add test for Readable w/o _construct method
2022-12-13Avoid creating closureGravatar Jarred Sumner 2-55/+53