aboutsummaryrefslogtreecommitdiff
path: root/src/bun.js/module_loader.zig (follow)
AgeCommit message (Collapse)AuthorFilesLines
2023-09-28Get Next.js Pages Router to work (#6095)Gravatar dave caruso 1-8/+14
* hell * make it so bun-debug-src * teag * wild * yippee * fas * fix async hooks assertions * yap * yeah that's wild * aa * a * increase time allowed * so trivial
2023-09-20fix(run): interpret extensionless files as typescript (#5711)Gravatar dave caruso 1-8/+15
* test * gadsgsagdsa * add better err msg * r * oops * ok
2023-09-20implement `Module.prototype._compile` (#5840)Gravatar dave caruso 1-2/+2
2023-09-20add `emitDecoratorMetadata` (#5777)Gravatar Dylan Conway 1-0/+2
* some progess * needs more tests * make tests easier to debug * get metadata for constructor arg decorators * fix some things * merge `emitDecoratorMetadata` option * remove `^` * bundler tests and get option from tsconfig earlier * remove spaces * fix tests
2023-09-13Make --watch instant (#5236)Gravatar Jarred Sumner 1-35/+24
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-09-10Support named imports for json & toml files at runtime (#4783)Gravatar Jarred Sumner 1-36/+39
* Support named exports in json imports * Support named imports for `*.json` files * Remove stale comments * Don't export arrays as non-default * Add test for default exports * Don't break webpack --------- Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-09-07Progress for Next.js (#4468)Gravatar dave caruso 1-183/+183
* L * ipc * asdfghjkl * dfghjk * it works! * types * patches for next.js * sdfghj * wsdfgn,./ * this * yolo * okay loser * asdfghjk * add some more APIs * MESS * sdfghjkl * remove native events from streams * stuff * remove lazy(primordials) test * debugging * okay * less fake extensions object * fix `Buffer.toString()` args logic * fix deserialize * make tests work * add test for `Buffer.toString` args * Update server.zig * remove test * update test * Update spawn-streaming-stdin.test.ts * fix linux build * Update fs.test.ts * cli message improvements * dfshaj * Fix fs.watch bug maybe? * remove --------- Co-authored-by: Dylan Conway <dylan.conway567@gmail.com>
2023-08-31only set initial debugger breakpoint once (#4441)Gravatar Dylan Conway 1-2/+11
* unset `set_breakpoint_on_first_line` on reload * move to `module_loader.zig`
2023-08-28just kernel32 things (#4354)Gravatar Jarred Sumner 1-3/+3
* just kernel32 things * more * Update linux_c.zig * Update windows_c.zig * Add workaround Workaround https://github.com/ziglang/zig/issues/16980 * Rename http.zig to bun_dev_http_server.zig * Rename usages * more * more * more * thanks tigerbeetle * Rename `JSC.Node.Syscall` -> `bun.sys` * more * woops * more! * hmm * it says there are only 37 errors, but that's not true * populate argv * it says 32 errors! * 24 errors * fix regular build * 12 left! * Still 12 left! * more * 2 errors left... * 1 more error * Add link to Tigerbeetle * Fix the remainign error * Fix test timeout * Update syscall.zig --------- Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-08-21Update module_loader.zigGravatar Jarred Sumner 1-1/+1
2023-08-20Implement `--inspect-brk` (#4222)Gravatar Jarred Sumner 1-0/+2
* Implement `--inspect-brk` * Bump WebKit --------- Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-08-20Fix test failures from 3a9a6c63a (#4231)Gravatar Jarred Sumner 1-3/+10
cc @Hanaasagi Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-08-20Fix(bundler): use different alias mappings based on the target. (#4163)Gravatar Ai Hoshino 1-13/+47
* Fix(bundler): use different alias mappings based on the target. Close: #3844 * chore: reduce duplicated code. * chore: split to two separate ComptimeStringMap.
2023-08-19Add inline sourcemaps when `--inspect` is enabled (#4213)Gravatar Jarred Sumner 1-3/+6
* Add inline sourcemaps when --inspect is enabled * Add some assertions * Update javascript.zig --------- Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-08-12Fix worker event loop ref/unref + leak (#4114)Gravatar dave caruso 1-6/+0
* make more tests pass * worker changes * fix some bugs * remove this * progress * uh * okay * remove console log * a * comment assert for later * mergable state * remove test * remove test
2023-08-11Deprecate loading `node_modules.bun` (#4131)Gravatar Jarred Sumner 1-18/+1
* Deprecate loading `node_modules.bun` * realpath * regenerate schema * More * more * Update cli.zig --------- Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-08-10remove non-node node-fallbacks (#4082)Gravatar dave caruso 1-65/+64
* remove non-node node-fallbacks. * organize the imports
2023-08-08Fix require("console") #3820 (#4073)Gravatar dave caruso 1-0/+1
* Fix #3820 * Add Module (#4074)
2023-08-08import bun (#4055)Gravatar Jarred Sumner 1-0/+3
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-08-05Remove Bun.plugin transpiler hook, encourage usage of `--preload` instead ↵Gravatar dave caruso 1-147/+1
(#3987) * Remove Bun.plugin transpiler hook * one missing case
2023-08-03Bunch of fixes (#3516)Gravatar Ashcon Partovi 1-0/+4
* Fix #3497 * Fix #3497 * Run prettier * Fix package.json * remove this too * yeah * Fix missing tests * Use native for utf-8-validate * Add module ID names to builtins * Defer evaluation of ESM & CJS modules until link time * Use builtin name for exports in plugins * Add module IDs to builtins * Update JSC build with new flag * WebKit upgrade fixes * Update WebKit * prettier * Upgrade WebKit * bump * Update once again * Add visitAdditionalChildren, remove .fill() usage * Update process.test.js * Update fs.test.ts --------- Co-authored-by: dave caruso <me@paperdave.net> Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-08-02Implement `node:worker_threads` (#3923)Gravatar Jarred Sumner 1-1/+1
* Start to implement `worker_threads` * more * more!! * more * Update bundle_v2.zig * delete outdated tests * `receiveMessageOnPort` * props test and export default * fix merge * not implemented tests * individual imports * `receiveMessageOnPort` tests --------- Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> Co-authored-by: Dylan Conway <dylan.conway567@gmail.com>
2023-08-02Rewrite built-in modules to use CommonJS over ESM (#3814)Gravatar dave caruso 1-131/+97
* stfdsafsd sadffdsa stuff finish commonjs stuff asdf not done but work not done but work not done yet but this is how far i am remove files lol update built files uncomment everything in events lol export default stuff * afdsafsd * its not perfect but almost done * okay * cool * remove temp file * finish rebase * revert settings.json * a * ch-ch-ch-ch-changes * okay * remove this check in release for now * sxdcfghnjm, * lkjhgf * fmt * filename can be null * Update NodeModuleModule.h * weee * fmt --------- Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-07-30skip flay testGravatar Jarred Sumner 1-4/+3
2023-07-30Support `bun .` to run the entry point (#3891)Gravatar Jarred Sumner 1-113/+10
* Support `bun .` * Fix tests --------- Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-07-30Fix issue with file loader (#3889)Gravatar Jarred Sumner 1-3/+22
* Fix issue with file loader * Update jest-extended.test.js --------- Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-07-28markBindingGravatar Dylan Conway 1-0/+1
2023-07-27Fix bug with // @bun annotation in main thread (#3855)Gravatar Jarred Sumner 1-2/+16
* Uncomment test * Fix bug with // @bun + async transpiler --------- Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-07-27Fix hot reloading in canary (#3848)Gravatar Jarred Sumner 1-0/+19
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-07-26Disable concurrent transpiler in macrosGravatar Jarred Sumner 1-1/+2
2023-07-26Don't hoist bun plugin in concurrent transpilerGravatar Jarred Sumner 1-1/+2
2023-07-26Concurrent Transpiler (#3816)Gravatar Jarred Sumner 1-16/+449
* Concurrent Transpiler * Fix bug with some improts and add jsc alias * Some comments * Fix crash * Update module_loader.zig --------- Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
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-19move constants module to cpp (#3683)Gravatar Ciro Spaciari 1-2/+1
2023-07-18Fix crash in postMessage that repro'd after ~100,000 messagesGravatar Jarred Sumner 1-0/+6
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-18zig upgrade (#3667)Gravatar Dylan Conway 1-5/+5
* upgrade * more fixes * Bump Zig --------- Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
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-01Fix leak in fd (#3487)Gravatar Jarred Sumner 1-0/+17
* Fix file descriptor leak * Skip unnecessary clone * Don't break --hot --------- Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-06-28[install] workaround run-time module loading issue (#3432)Gravatar Alex Lam S.L 1-6/+0
2023-06-26Runtime support for `__esModule` annotations (#3393)Gravatar Jarred Sumner 1-0/+21
* Runtime support for `__esModule` annotations * Ignore `__esModule` annotation when `"type": "module"` is set --------- Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-06-24Rewrite Bun's runtime CommonJS loader (#3379)Gravatar Jarred Sumner 1-10/+7
* wip changes for CommonJS * this rewrite is almost complete * even more code * wip * Remove usages of `import.meta.require` from builtins * Remove usages of require * Regenerate * :scissors: builtin rewrite commonjs in printer * Use lazy custom getters for import.meta * fixups * Remove depd * ugh * still crashing * fixup undici * comment out import.meta.require.resolve temporarily not a real solution but it stops the crashes * Redo import.meta.primordials * Builtins now have a `builtin://` protocol in source origin * Seems to work? * Finsih getting rid of primordials * switcharoo * No more function * just one more bug * Update launch.json * Implement `require.main` * :scissors: * Bump WebKit * Fixup import cycles * Fixup improt cycles * export more things * Implement `createCommonJSModule` builtin * More exports * regenerate * i broke some stuff * some of these tests work now * We lost the encoding * Sort of fix zlib * Sort of fix util * Update events.js * bump * bump * bump * Fix missing export in fs * fix some bugs with builtin esm modules (stream, worker_threads, events). its not perfect yet. * fix some other internal module bugs * oops * fix some extra require default stuff * uncomment this file but it crsahes on my machine * tidy code here * fixup tls exports * make simdutf happier * Add hasPrefix binding * Add test for `require.main` * Fix CommonJS evaluation order race condition * Make node:http load faster * Add missing exports to tls.js * Use the getter * Regenerate builtins * Fix assertion failure in Bun.write() * revamp dotEnv parser (#3347) - fixes `strings.indexOfAny()` - fixes OOB array access fixes #411 fixes #2823 fixes #3042 * fix tests for `expect()` (#3384) - extend test job time-out for `darwin-aarch64` * `expect().resolves` and `expect().rejects` (#3318) * Move expect and snapshots to their own files * expect().resolves and expect().rejects * Fix promise being added to unhandled rejection list * Handle timeouts in expect(<promise>) * wip merge * Fix merge issue --------- Co-authored-by: Jarred Sumner <jarred@jarredsumner.com> Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> * fixup min/memcopy (#3388) * Fix crash in builtins * Don't attempt to evaluate modules with no source code * Update WebCoreJSBuiltins.cpp * Update WebCoreJSBuiltins.cpp * Update WebCoreJSBuiltins.cpp * Fix crash * cleanup * Fix test cc @paperdave * Fixup Undici * Fix issue in node:http * Create util-deprecate.mjs * Fix several bugs * Use the identifier * Support error.code in `util.deprecate` * make the CJs loader slightly more resilient * Update WebCoreJSBuiltins.cpp * Fix macros --------- Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> Co-authored-by: dave caruso <me@paperdave.net> Co-authored-by: Alex Lam S.L <alexlamsl@gmail.com> Co-authored-by: Ashcon Partovi <ashcon@partovi.net> Co-authored-by: Ciro Spaciari <ciro.spaciari@gmail.com>
2023-06-21upgrade zig to `v0.11.0-dev.3737+9eb008717` (#3374)Gravatar Dylan Conway 1-1/+1
* 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 cc930ceb1c5b4db9614a7638596948f704544ab8. --------- Co-authored-by: Jarred Sumner <jarred@jarredsumner.com> Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-06-13Fix crash in CJS (#3294)bun-v0.6.9Gravatar Jarred Sumner 1-82/+140
* 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-11Support using `WTF::StringImpl` from Zig (#3279)Gravatar Jarred Sumner 1-113/+124
* Fix `make headers` * [JS parser] Fix bug with printing non-ascii import paths in ascii mode * Introduce `bun.String` * Add test for non-ascii imports & entry points * Add comment * Fix build issue * Support HTTP server * Make it print the same --------- Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-06-02fixes with hardcoded modules (#3182)Gravatar dave caruso 1-2/+3
* fixes with hardcoded modules * add make hardcoded to make dev * adjust this message * remove debugging logs * this * restore2
2023-06-01Bundle and minify `.exports.js` files. (#3036)Gravatar dave caruso 1-398/+72
* 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-01Fix streams breaking on reverted EventEmitter / Make Discord.js work (#2913)Gravatar dave caruso 1-1/+13
* 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-30Fixes #3115Gravatar Jarred Sumner 1-12/+33
2023-05-29Natively support CommonJS at runtime (#3104)Gravatar Jarred Sumner 1-0/+31
* 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>