aboutsummaryrefslogtreecommitdiff
path: root/src/js_ast.zig (follow)
AgeCommit message (Collapse)AuthorFilesLines
2023-01-16[JS Parser] Don't inline rope stringsGravatar Jarred Sumner 1-14/+7
2023-01-14fix life-cycle script execution (#1799)Gravatar Alex Lam S.L 1-16/+7
- change current working directory for workspaces - add `node_modules/.bin` to `PATH` before running
2023-01-13move more thingsGravatar Jarred SUmner 1-3/+3
2023-01-13Split some things into more files and use bun namespace instead of import moreGravatar Jarred SUmner 1-2/+2
2023-01-10[js parser] Do not inline regexp literalsGravatar Jarred Sumner 1-1/+1
2023-01-10 use `strings.hasPrefixComptime()` (#1755)Gravatar Alex Lam S.L 1-1/+1
2023-01-01clean up `Promise` handling (#1697)Gravatar Alex Lam S.L 1-18/+2
2022-12-30More assertionsGravatar Jarred Sumner 1-21/+35
2022-12-28Upgrade to latest Zig (#1610)Gravatar Jarred Sumner 1-65/+74
* @min and @max * builtins and some trivial ones * Most of them * more * more! * More Progress * wip * Update tagged_pointer.zig * Update http_client_async.zig * Most of the iterable dir changes * alright * Remove usages of deprecated formatters * :camera: * fmt * Update shimmer.zig * wip * wip * wip * progress * more * Latest * stuck on error * latest * workaround stage2 * wip * Update string_immutable.zig * wip * Migrate `Dirent` and `require("fs')` to use JSC<>Zig bindings * Fix build errors * Fixup most of the test failures * Fix `make headers` * Fix "outside package path" error * Fixup aligned alloc * Add missing file * linux * More linux fixes * use latest peechy * Fix transpiler test failure * Forgot about these * Fixup test failure * Update node-timers.test.ts * [node:htt] Fix `undefined is not an object` error Fixes https://github.com/oven-sh/bun/issues/1618 * Update http.exports.js * Make this test less flaky * fix hashes * Fix hex formatting and zls issues * Download zig version * Update Dockerfile * Update Dockerfile * Update uws * Update Dockerfile * Set llvm version * Update README.md * Update uws * Update Dockerfile * Update io_linux.zig * Update bun.zig * Log output * workaround strange @cInclude error * Make ffi tests better * Don't use cImport * Update c.zig * Update c-bindings.cpp * call setOutputDir * Update Dockerfile * Use a longer name * latest * Update serve.test.ts Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> Co-authored-by: Veikka Tuominen <git@vexu.eu>
2022-12-17Delete Oniguruma (#1625)Gravatar Jarred Sumner 1-27/+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-11[internal] Change HashMap implementation for storing symbolsGravatar Jarred Sumner 1-7/+29
2022-12-10[transpiler] Improve constant propagationGravatar Jarred Sumner 1-0/+24
2022-12-10[transpiler] Fix issue with async macros in `bun build`Gravatar Jarred Sumner 1-0/+1
2022-12-10[transpiler] Fix bug with `===` on statically-known rope stringsGravatar Jarred Sumner 1-4/+10
2022-12-10Implement simple version of inlining single-use expressions and statementsGravatar Jarred Sumner 1-0/+19
2022-12-04[internal] Make string comparisons fasterGravatar Jarred Sumner 1-1/+1
2022-11-29Remove some dead bindings codeGravatar Jarred Sumner 1-7/+5
2022-11-29import everything from "bun" where possibleGravatar Jarred Sumner 1-5/+5
2022-11-27Fix `make headers`Gravatar Jarred Sumner 1-0/+1
2022-11-25Always watchGravatar Jarred Sumner 1-1/+1
2022-11-25Fix macros that return a PromiseGravatar Jarred Sumner 1-18/+43
2022-11-18bun test matchers and tests (#1526)Gravatar Dylan Conway 1-2/+2
* ignore webkit for cherry-pick * toContain and toBeTruthy * toBe null, undefined, falsy, toHaveProperty, .not * markBindings * remove toHaveProperty, undo ignore webkit, more tests * undo ignore webkit * remove bad tests * check if length property exists for toHaveLength() * fix call signature * handle argument that is not an integer * getLengthOfArray returns u64 * switch to truncate * toHaveLength() edge cases * add toBooleanSlow() * infinity, nan, negative
2022-11-07Add more tags to be usable with typeof (#1258)Gravatar Niles Salter 1-2/+2
2022-11-06Automatically install npm packages when running a script in Bun's runtime ↵Gravatar Jarred Sumner 1-1/+11
(#1459) * Update bundler.zig * WIP * Update README.md * Update README.md * wip * Support running scripts without package.json * Add `--no-auto-install` and `--prefer-offline` flags * WIP * wip * Update headers-handwritten.h * WIP * Build fixes * Fix UAF * Update install.zig * Must call .allocate() * Micro-optimization: only call .timestamp() once per tick when installing packages * Support progress bar * Extend the timestamp for package staleness checks to 1 day * Add `--prefer-latest`, `-i` CLI Flags * Fix crash * Support line text manually being set on an Error instance * Add a few more fields for error messages * Fix bug when counting 8 character strings in string builder * Implement error handling for automatic package installs! * Fix crash * Make it say module when there's a slash * Update module_loader.zig * Ban dependency versions in import specifiers when a package.json is present * Remove unused field * Update README.md * Update README.md * Update README.md * Update README.md Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2022-11-01typescript decorators round 2 (#1445)Gravatar Dylan Conway 1-0/+1
* __decorateClass, __decorateParam, lit test, wiptest test * decorator factories test * parameter decorator test * test for decorators with constructor parameter properties * Fix issue with `CryptoKey` and `SubtleCrypto` constructors * Limit concurrency for GitHub Actions due to issues with cache poisoning If multiple actions are running, sometimes the cache is poisoned from another action. We need to fix this, but this is an interim measure to make actions less flaky * Make these tests better * Move this to dependencies so the .a files upload * Fixup * temporary fix * Limit concurrency for MacOS Object actions * try againn * againn * Make `"tls"` an explicit object we pass instead of implicit top-level options cc @Electroid @colinhacks * Update server.zig * Prefer `BUN_PORT` over `PORT` * Fix typo in homebrew action * Run homebrew action when release is edited * Check published_at instead of draft in GitHub action * Implement `process.release` * Add missing dependencies to `make devcontainer` * Allow overriding node polyfills via `BUN_OVERRIDE_MODULE_PATH` * Add a stub for io_darwin on linux cc @sno2 hopefully this helps but i'm not sure * Add missing `break` * Download more RAM * feat(core): optimize zig slice (#1408) * feat(core): optimize zig slice * address concerns * Remove webcrypto from vendor-without-check * Update default tsconfig (#1418) Co-authored-by: Colin McDonnell <colinmcd@alum.mit.edu> * Enable `BUN_OVERRIDE_MODULE_PATH` in `bun wiptest` * Upgrade WebKit * space * Support getting cached values and pending activity in the bindings generator * Remove :scissors: function * constructor creation, initializers, handle static and computed fields with decorators * Updating libuwebsockets C API (#1423) * fix for repeated regex match calls and fix for '^' in character classes (#1419) * tests and formatting * fix for ^ in character class * formatting * test for repeated match and exec calls * create oniguruma regex for each exec/test * check errorCode from creating oniguruma regexp and always return {} on failure * oops * call onig_initialize once * fix incorrect escaping, removed unnecessary oniguruma settings * tests for "-" and "^" in character classes * free regex object before returns * force gc for some tests * Update React fizz server (#1432) * Update fizz server * Use production build Co-authored-by: Colin McDonnell <colinmcd@alum.mit.edu> * more decorator tests * optional setup function for loading elements, simulate clicks in lit test * fix createWriteStream (#1433) * fix createWriteStream * remove comment * Update build docs and commands for dev containers (#1438) * Update build documentation for dev containers * Add devcontainer-rebuild make target * Add make devcontainer-sh target * Fix missing .PHONY for vendor-without-check (#1437) * Fix check for ninja on Debian/Ubuntu (#1436) Even though the package is named ninja-build, the ninja binary is still named ninja, so use `which ninja` to check for it * Fix #1410 woops * await on DOMContentLoaded for elements instead of setup function * avoid lowering class if no decorators Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> Co-authored-by: Ashcon Partovi <ashcon@partovi.net> Co-authored-by: Carter Snook <cartersnook04@gmail.com> Co-authored-by: Colin McDonnell <colinmcd94@gmail.com> Co-authored-by: Colin McDonnell <colinmcd@alum.mit.edu> Co-authored-by: Ciro Spaciari <ciro.spaciari@gmail.com> Co-authored-by: Lawrence Chen <54008264+lawrencecchen@users.noreply.github.com> Co-authored-by: João Paquim <jpaquim@users.noreply.github.com>
2022-10-21Fix infinite loopGravatar Jarred Sumner 1-3/+13
2022-10-17add oniguruma for regex with variable length lookbehinds (#1329)Gravatar Dylan Conway 1-0/+17
* added pcre2 submodule * pcre2 regex boilerplate * tests for pcre2 regex * flag validation, getters, construct and compile mostly working * string escaping for source and toString(), exec, more tests * flag sorting, match, matchAll, search, split, replace * remove lib link * add destructor to PCRE2RegExp * header include * removed ternary * switched to oniguruma for regex library * revert sql changes * fix indices flag, add tests * revert settings * working error messages * more tests for lastIndex, fix logic for compile and lastIndex * move oniguruma lib to deps out dir
2022-09-30Remove extraneous calls to `.ref()`Gravatar Jarred Sumner 1-3/+3
2022-09-22Faster `Blob` + begin to implement `FileSink`Gravatar Jarred Sumner 1-5/+4
2022-09-21Increase macro stack sizeGravatar Jarred Sumner 1-1/+1
2022-09-11Resolve rope strings in dynamic import pathsGravatar Jarred Sumner 1-1/+1
Fixes https://github.com/oven-sh/bun/issues/1230
2022-09-05Support async `onLoad` callbacks in `Bun.plugin`Gravatar Jarred Sumner 1-0/+9
2022-08-25Fix `Request` and `Response` in macrosGravatar Jarred Sumner 1-19/+31
2022-08-17New Zig <> C++ bindings generator. +20% faster HTTP serverGravatar Jarred Sumner 1-11/+0
2022-08-04Implement `bun init` subcommandGravatar Jarred Sumner 1-1/+16
2022-08-03Fix test failures from `JSPropertyIterator` changeGravatar Jarred Sumner 1-4/+2
2022-08-03refactor: create a high-level property iterator (#972)Gravatar Carter Snook 1-35/+24
This also fixes multiple memory leaks double frees.
2022-07-02Rename `defaultErrorHandler` to `runErrorHandler`Gravatar Jarred Sumner 1-4/+4
2022-06-25Cleanup some of the require codeGravatar Jarred Sumner 1-8/+8
2022-06-22change the directory structurejarred/renameGravatar Jarred Sumner 1-3/+3
2022-06-07Web Streams API (#176)Gravatar Jarred Sumner 1-102/+7
* [bun.js] `WritableStream`, `ReadableStream`, `TransformStream`, `WritableStreamDefaultController`, `ReadableStreamDefaultController` & more * Implement `Blob.stream()` * Update streams.test.js * Fix sourcemaps crash * [TextEncoder] 3x faster in hot loops * reading almost works * start to implement native streams * Implement `Blob.stream()` * Implement `Bun.file(pathOrFd).stream()` * Add an extra function * [fs.readFile] Improve performance * make jsc bindings a little easier to work with * fix segfault * faster async/await + readablestream optimizations * WebKit updates * More WebKit updates * Add releaseWEakrefs binding * `bun:jsc` * More streams * Update streams.test.js * Update Makefile * Update mimalloc * Update WebKit * Create bun-jsc.test.js * Faster ReadableStream * Fix off by one & exceptions * Handle empty files/blobs * Update streams.test.js * Move streams to it's own file * temp * impl #1 * take two * good enough for now * Implement `readableStreamToArray`, `readableStreamToArrayBuffer`, `concatArrayBuffers` * jsxOptimizationInlining * Fix crash * Add `jsxOptimizationInline` to Bun.Transpiler * Update Transpiler types * Update js_ast.zig * Automatically choose production mode when NODE_ENV="production" * Update cli.zig * [jsx] Handle defaultProps when inlining * Update transpiler.test.js * uncomment some tests Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2022-05-20[solid] more progress, no fragments, but still not rightGravatar Jarred Sumner 1-0/+13
2022-05-19[solid] Move the post-process JSX stepGravatar Jarred Sumner 1-0/+21
2022-05-19[wip] Solid.js support for Bun!Gravatar Jarred Sumner 1-3/+16
2022-05-16`bun:sqlite` (#167)Gravatar Jarred Sumner 1-7/+11
* :scissors: * Add the slow version * draw the rest of the owl * Fix crash when allocating lots of memory * [Bun.Transipiler] Support passing objects * [JS Parser] Support passing objects to macros via Bun.Transpiler * Update JSSQLStatement.cpp * Embed SQLite * Add SQLite to Dockerfile * [sqlite] Add quick one-off queries without creating a whole object * [sqlite] Add `columnsCount`, rename raw() to `values()`, remove `rebind` * Implement `bun:sqlite` * return null * Fix updating query * Update bun.d.ts * more tests * Support variadic arguments, write tests and add types * Update sqlite.d.ts * Update sqlite.d.ts * latest * Implement `Database.loadExtension` and `Database.setCustomSQLite` * Support `require.resolve` * [napi] Improve string performance * [bun.js] Support some of `node:module` * another test * [sqlite] Support serialize & deserialize * [`bun:ffi`] Implement `CFunction` and `linkSymbols` * [bun.js] Fix crash in `Buffer.from` * Update sqlite.test.js * Document linkSymbols * docs * Update README.md
2022-05-09fixupGravatar Jarred Sumner 1-0/+1
2022-05-05E.String gets a RopeGravatar Jarred Sumner 1-74/+151
2022-04-09[JS Parser] Fix code simplification bug with `!` and unary expressionsGravatar Jarred Sumner 1-8/+23
2022-04-09stricter boolean checkGravatar Jarred Sumner 1-1/+1
2022-03-14fix crash when upgrade checker endsGravatar Jarred Sumner 1-1/+1