aboutsummaryrefslogtreecommitdiff
path: root/src/js_parser (follow)
AgeCommit message (Collapse)AuthorFilesLines
2022-01-19`fs.*Sync()`, `bun wiptest`, and More ™ (#106)Gravatar Jarred Sumner 1-0/+2
* very very wip * almost ready to fix the errors * Update identity_context.zig * Update base.zig * [bun test] It runs successfully * Remove unnecessary call * [Bun.js] Improve JS <> Zig unicode string interop This fixes longstanding unicode bugs with `console.log` & `fetch`. I believe @evanwashere reported this first awhile ago * [Bun.js] Implement `Object.is()` binding and a way to set a timeout for script execution * Update PLCrashReport.zig * [Bun.js] Make `console.log` more closely match Node.js and Deno * [Bun.js] Implement formatting specifier for console.* * Implement `console.clear()` * bug fix * Support console.clear() * Buffer stderr * [bun test] Begin implementing Node.js `fs` * Update darwin_c.zig * Implement more of `fs` * `mkdir`, `mkdir` recursive, `mkdtemp` * `open`, `read` (and pread) * Move some things into more files * Implement readdir * `readFile`, `readLink`, and `realpath` * `writeFile`, `symlink`, `chown`, `rename`, `stat`, `unlink`, `truncate` * `lutimes` * Implement `SystemError` and begin wiring up the `fs` module * `"fs"` - Most of the arguments / validation * `fs` - Rest of the arguments / validations * Begin wiring up the `fs` module * Fix all the build errors * support printing typed arrays in console.log * It...works? * Support `require("fs")`, `import fs from 'fs';`, `import * as fs from 'fs'` * Fix a couple bugs * get rid of the crash reporter for now * Update fs.exports.js * [bun.js] slight improvement to startup time * [bun.js] Improve error message printing * [Bun.js] Add `Bun.gc()` to run the garbage collector manually and report heap size * [Bun.js] Add Bun.generateHeapSnapshot to return what JS types are using memory * [Bun.js] Add `Bun.shrink()` to tell JSC to shrink the VM size * Improve encoding reader * [bun.js] Improve callback & microtask performance * Update node_fs.zig * Implement `console.assert` * simple test * [Bun.js] Prepare for multiple globals/realms to support testing * Create callbacks-overhead.mjs * Update http.zig * [Bun.js] Implement `queueMicrotask` * Add test for queueMicrotask * :sleepy: * [Bun.js] Implement `process.versions`, `process.pid`, `process.ppid`, `process.nextTick`, `process.versions`, * Implement `process.env.toJSON()` * [Bun.js] Improve performance of `fs.existsSync` * :nail_care: * [Bun.js] Implement `process.chdir(str)` and `process.cwd()`, support up to 4 args in `process.nextTick` * Make creating Zig::Process lazy * Split processi nto separte file * [Bun.js] Node.js Streams - Part 1/? * [Bun.js] Node.js streams 2/? * WIP streams * fix crash * Reduce allocations in many places * swap * Make `bun` start 2ms faster * Always use an apiLock() * libBacktrace doesn't really work yet * Fix crash in the upgrade checker * Clean up code for importing the runtime when not bundling * :camera: * Update linker.zig * 68! * backtrace * no, really backtrace * Fix * Linux fixes * Fixes on Linux * Update mimalloc * [bun test] Automatically scan for {.test,_test,.spec,_spec}.{jsx,tsx,js,cts,mts,ts,cjs}
2022-01-05[JS Parser] Reduce memory usage by ~8%Gravatar Jarred Sumner 1-4/+12
2022-01-04[Bun.js][bun dev] Support macros inside of Bun.jsGravatar Jarred Sumner 1-2/+9
Closes #36
2021-12-30Upgrade to latest Zig, remove dependency on patched version of Zig (#96)Gravatar Jarred Sumner 2-781/+531
* Prepare to upgrade zig * zig fmt * AllocGate * Update data_url.zig * wip * few files * just headers now? * I think everything works? * Update mimalloc * Update hash_map.zig * Perf improvements to compensate for Allocgate * Bump * :camera: * Update bun.lockb * Less branching * [js parser] Slightly reduce memory usage * Update js_parser.zig * WIP remove unused * [JS parser] WIP support for `with` keyword * Remove more dead code * Fix all the build errors! * cleanup * Move `network_thread` up * Bump peechy * Update README.md
2021-12-27Prepare to run unit tests & remove some dead code (#92)Gravatar Jarred Sumner 1-1/+0
* Remove some dead code * :skull: code * Fix the zig tests * [JS Printer] Print integers faster & less scientific notation on decimals * :skull: dead code * skip * Run all the unit tests
2021-12-16[transpiler] Partially support top-level await in HMRGravatar Jarred Sumner 1-17/+24
2021-12-16Enable top-level await in browsersGravatar Jarred Sumner 1-1/+4
2021-12-16[JS parser] Track import records that were converted to star imports due to ↵Gravatar Jarred Sumner 1-2/+12
`require`
2021-12-16[bundler][JS transpiler] Improve reliability of ESM <> CommonJS interopGravatar Jarred Sumner 1-101/+61
This fixes a number of issues caused by not using live bindings when referencing bundled code. This also fixes an issue with libraries looping over `Object.keys(moduleNamespace)`
2021-12-15wip fix live bindingsGravatar Jarred Sumner 1-170/+139
2021-12-15[JS Parser] Fix bug with template literals that create new scopes in the tag ↵Gravatar Jarred Sumner 1-4/+4
and the template literal value
2021-11-15[internal] `const` is faster than `var` (in Zig! not javascript)Gravatar Jarred Sumner 1-2/+2
2021-11-11slightly reduce reallocationsGravatar Jarred Sumner 1-4/+4
2021-11-02Fixes https://github.com/Jarred-Sumner/bun/issues/28Gravatar Jarred Sumner 1-3/+7
2021-11-01[internal] Tiny changes that will eventually make it easier to update zigGravatar Jarred Sumner 1-9/+10
2021-10-29[internal] Fix missing symbol errors when building JavaScriptCore bindings ↵Gravatar Jarred Sumner 1-0/+2
without already having the object files
2021-10-24finish Expr.alloc -> Expr.initGravatar Jarred Sumner 1-2/+2
2021-10-24Fix build errorGravatar Jarred Sumner 1-4/+4
2021-10-24[internal] Use isPresent() instead of checking slice lenGravatar Jarred Sumner 1-2/+2
2021-10-24[internal] some inliningGravatar Jarred Sumner 1-21/+25
2021-10-08Fix bug where occasionally unary expressions would simplify incorrectly due ↵Gravatar Jarred Sumner 1-27/+16
to an undefined memory issue
2021-10-06oopsGravatar Jarred Sumner 1-2/+2
2021-10-06Fix JSX transform edgecase with static childrenGravatar Jarred Sumner 1-25/+20
2021-10-04Improve Bun's performance by 5%Gravatar Jarred Sumner 1-7/+8
By making E.Identifier not a pointer, we improve performance by 5%. Heap allocations are bad
2021-09-30Fix potential infinite loop on calling macrosGravatar Jarred Sumner 1-14/+20
2021-09-30Fix jsxDEV transform bug that occurred when not including `source` and the ↵Gravatar Jarred Sumner 1-1/+10
component rendered an exception
2021-09-30Fix dead-code elimination edgecase with call expressionsGravatar Jarred Sumner 1-6/+9
2021-09-30Support remapping macro pathsGravatar Jarred Sumner 1-2/+57
2021-09-30Fix all the compile errorsGravatar Jarred Sumner 1-4/+14
2021-09-30Wire up macro-injected imports and move some structs above the gigantic ↵Gravatar Jarred Sumner 1-194/+267
parser type to reduce bun compile time a little
2021-09-29Most of the code & API changes necessary for supporting Relay (GraphQL)Gravatar Jarred Sumner 1-0/+3
2021-09-27Bundling ignores macrosGravatar Jarred Sumner 1-14/+22
2021-09-26Fix getting object propertiesGravatar Jarred Sumner 1-21/+46
2021-09-26Most of macro implementationGravatar Jarred Sumner 1-22/+125
2021-09-26Basic macro implGravatar Jarred Sumner 1-53/+25
2021-09-25Fix crashing edgecase when both JSX automatic and JSX classic imports are ↵Gravatar Jarred Sumner 1-28/+44
necessary and unbundled
2021-09-25Fix visiting bug when using JSX with a spread prop and a key and one of the ↵Gravatar Jarred Sumner 1-10/+4
props is an anonymous function More specifically, Bun shouldn't be visiting the same properties more than once. That was the cause.
2021-09-24skeleton codebun-v0.0.22Gravatar Jarred Sumner 1-202/+352
2021-09-23Handle more edgecases in our CJS2ESM conversion codeGravatar Jarred Sumner 1-2/+27
2021-09-23Safer export default transform for bundled codeGravatar Jarred Sumner 1-2/+45
2021-09-23Fix another simplification bugGravatar Jarred Sumner 1-23/+20
2021-09-23Fix a simplification bugGravatar Jarred Sumner 1-1/+1
2021-09-22Print how many lines of code was parsed in `bun bun`Gravatar Jarred Sumner 1-13/+18
2021-09-22Fix parsing bug with arrays that have default valuesGravatar Jarred Sumner 1-5/+8
2021-09-20Fix parsing/printing unicode identifiers, switch to UTF-8 for prefilled ↵Gravatar Jarred Sumner 1-11/+11
strings, remove eagerly loading identifier_name
2021-09-17Fix bugs with ESM -> CJS when not bundledGravatar Jarred Sumner 1-118/+270
2021-09-16Do not attempt to HMR export {value} from, just assume it will be HMR'd (or not)Gravatar Jarred Sumner 1-10/+38
2021-09-16Fix export * as fromGravatar Jarred Sumner 1-1/+2
2021-09-16Fix symbol name for cjs2esmGravatar Jarred Sumner 1-0/+1
2021-09-16Delete some dead codeGravatar Jarred Sumner 1-525/+0