Jarred Sumner
4b00144211
Revert "decode regex if needed ( #5167 )"
...
This reverts commit 32664df254 .
2023-09-15 05:07:22 -07:00
Dylan Conway
32664df254
decode regex if needed ( #5167 )
...
* decode regex if non-ascii
* make it comptime
* add test
* use `bun.BabyList(u16)`
2023-09-13 01:26:18 -07:00
Ben Jervis
350403663e
Fix error message typo in js_ast.zig ( #4937 )
2023-09-11 11:03:45 -07:00
Jarred Sumner
51d3d43822
Support named imports for json & toml files at runtime ( #4783 )
...
* 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-10 23:15:35 -07:00
Dylan Conway
18767906db
initialize JSC for macros from cli
2023-09-03 20:49:06 -07:00
Dylan Conway
097ae4e982
fix build
2023-08-24 19:05:40 -07:00
Jason
19aa9d93de
update zig to 0.11.0 ( #4233 )
...
* WIP
* backup
* more change
* json related error sovled
* number related issue solved
* revert WriterType changed before
* destroy -> free
* jsonStringify related issues solved
* fix mem.free expected []T or *[_]T, passed [*]const u8
* fix expected []T or *[_]T, passed [*:0]const u8
* fix build script
* fix build script, for real
* replace 0.11.0-dev.4006+bf827d0b5 to 0.12.0-dev.161+6a5463951
* fix build on macOS, COPYFILE.DATA -> COPYFILE_DATA
* fix the last destroy on [*]ptr issue
---------
Co-authored-by: Dylan Conway <35280289+dylan-conway@users.noreply.github.com >
2023-08-24 16:13:14 -07:00
Jarred Sumner
1b8f569792
Fix memory leak in buffer.toString("hex") ( #4235 )
...
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com >
2023-08-21 03:31:33 -07:00
Jarred Sumner
943a664224
Remove most C API usages, add debugger pretty printers for Headers, URLSearchParams, FormData, Worker, EventTarget ( #4187 )
...
* Add pretty printers for `Headers`, `URLSearchParams`, and `FormData`
* [untested] Add way to code generate getInternalProperties
* bump
* Bump Webkit
* Ref the event loop while loaded
* wip
* checkpoint
* another checkpoint
* The code has been written
* Fixup exports
* Fix all the errors
* Fix bug
* [console.log] Fix bug when printing non-reified types missing values
* Fix loading hash table
* fix plugin
* Fix ref & unref
* auto-unref
* various fixes
* Update bun.zig
* Set toStringTag
* Delete code for macro JSX
* Delete code for `bun dev` HTTP JS
* Move Bun.serve to C++ API
* Delete JSC C API code
* ✂️ 💀 code
* Use JSC C++ for `confirm`, `Crypto`, `prompt`, `alert`
* more dead code
* Update exports.zig
* Use JSC C++ API for FFI
* Remove remaining usages
* Remove remaining usages
* Update ffi.ts
* Update InternalModuleRegistryConstants.h
* draw the rest of the owl
* Update webcore.zig
* bind it
* Fix performance regression in crypto.randomUIUD()
* Update js_parser.zig
---------
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com >
2023-08-18 19:58:03 -07:00
Jarred Sumner
ca26780b27
Deprecate loading node_modules.bun ( #4131 )
...
* 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-11 22:13:46 -07:00
Dylan Conway
2fe6a965af
implement fetching data urls ( #4000 )
...
* fetch data urls
* `byteSlice`
* deinit slice
* allocate `mime_type` string if needed
* `content_type_allocated` and uncomment tests
* `str_`
* createAtom and slice decode result
2023-08-07 20:15:53 -07:00
Jarred Sumner
f2f227720b
WASM test analyzer ( #4043 )
...
* wasm
* WASM test scanner
* Update Makefile
* Update Makefile
* Configurable heap limit
* slightly better error
* Update js_parser.zig
* Update path.test.js
* Update node.mjs
---------
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com >
2023-08-07 18:51:16 -07:00
dave caruso
3803d39840
Remove Bun.plugin transpiler hook, encourage usage of --preload instead ( #3987 )
...
* Remove Bun.plugin transpiler hook
* one missing case
2023-08-05 04:42:30 -07:00
Dylan Conway
6bdee80cfc
fix macro string escaping ( #3967 )
...
* handle macro escaping
* remove printer
* use `js_lexer.decodeEscapeSequences`
2023-08-04 19:34:09 -07:00
Jarred Sumner
9ecae59bbb
Fix memory leak in response.clone(), further reduce memory usage of Request & Response ( #3902 )
...
* Atomize respsone.url & response.statusText
* Fix warning
* Atomize Request & Response URLs when possible
* Fix memory leak in response.clone()
bun/bench/snippets on jarred/atomize
❯ mem bun --smol request-response-clone.mjs
cpu: Apple M1 Max
runtime: bun 0.7.2 (arm64-darwin)
benchmark time (avg) (min … max) p75 p99 p995
-------------------------------------------------------- -----------------------------
req.clone().url 77.3 ns/iter (40.35 ns … 222.64 ns) 91.53 ns 128.11 ns 172.78 ns
resp.clone().url 162.43 ns/iter (116 ns … 337.77 ns) 177.4 ns 232.38 ns 262.65 ns
Peak memory usage: 60 MB
bun/bench/snippets on jarred/atomize
❯ mem bun-0.7.1 --smol request-response-clone.mjs
cpu: Apple M1 Max
runtime: bun 0.7.1 (arm64-darwin)
benchmark time (avg) (min … max) p75 p99 p995
-------------------------------------------------------- -----------------------------
req.clone().url 115.85 ns/iter (80.35 ns … 247.39 ns) 128.19 ns 181.93 ns 207.23 ns
resp.clone().url 252.32 ns/iter (202.6 ns … 351.07 ns) 266.56 ns 325.88 ns 334.73 ns
Peak memory usage: 1179 MB
* Update tests
* Update js_ast.zig
* Update test
---------
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com >
2023-07-30 23:51:43 -07:00
Dylan Conway
1a558ef753
fix decorator and declare ( #3828 )
...
* return the prop if there are decorators
* test and comment
2023-07-26 16:31:08 -07:00
Dylan Conway
e154763e4d
fix rope string push ( #3796 )
...
* push to next next
* couple more tests
* end
2023-07-24 19:08:56 -07:00
Dylan Conway
661355546a
zig upgrade ( #3667 )
...
* upgrade
* more fixes
* Bump Zig
---------
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com >
2023-07-18 01:20:20 -07:00
Jarred Sumner
dc766eb18a
Add --smol flag
2023-07-16 21:17:47 -07:00
Jarred Sumner
6baa08313c
Fixes #3641 ( #3643 )
...
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com >
2023-07-16 20:32:18 -07:00
Jarred Sumner
284aaec3cd
Remove unnecessary @setRuntimeSafety(false)
2023-07-06 23:50:32 -07:00
Jarred Sumner
c42a00f9df
Fixes #3462 ( #3465 )
...
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com >
2023-06-29 20:14:12 -07:00
Dylan Conway
28d7507a5d
add todo comment
2023-06-27 14:55:13 -07:00
Dylan Conway
c78aa5a60f
fix macros
2023-06-27 13:23:01 -07:00
Dylan Conway
5fa13625a1
upgrade zig to v0.11.0-dev.3737+9eb008717 ( #3374 )
...
* 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 cc930ceb1c .
---------
Co-authored-by: Jarred Sumner <jarred@jarredsumner.com >
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com >
2023-06-21 23:38:18 -07:00
Jarred Sumner
3e84f18cc0
Implement __dirname and __filename, allow direct eval in CommonJS ( #3164 )
...
* Implement `__dirname` and `__filename`, allow direct eval in CommonJS
* Fixup dirname and add test
---------
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com >
2023-06-01 18:04:09 -07:00
Jarred Sumner
e2de1f5c13
Natively support CommonJS at runtime ( #3104 )
...
* 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-29 11:23:10 -07:00
Jarred Sumner
0f2a79b9c1
Fix crash in test.todo + remove JSC C API usages in bun:test ( #3079 )
...
* Fix crash in test.todo
* remove usages of JSC C API in bun:test
* Remove additional JSC-C API usages
* fix `make headers`
* URLSearchParams.length
* FormData length
* URLSearchParams length
* Fix `make headers`
* very fancy length
* Fix bug with exceptions being ignored sometimes
* Add tests for extension toHaveLength
---------
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com >
2023-05-26 03:32:28 -07:00
Jarred Sumner
88d9bac5ec
Support with { type: "macro"} in bun build ( #3059 )
...
* [bun macro] Support `assert { type: "macro" }` and `with {type: "macro"}`
* [bun macro] Pass through input as arguments instead of a JSNode
* Fix hang when loading many entry points simultaneously with macros
* do not clone
---------
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com >
2023-05-24 19:37:57 -07:00
dave caruso
83e7b9e198
fix extra/ArbitraryModuleNamespaceIdentifiers2 ( #3016 )
...
* fix extra/ArbitraryModuleNamespaceIdentifiers2
* remove assert
2023-05-22 20:59:25 -07:00
Dylan Conway
aa34529b5b
resolve rope string for multipart template ( #2963 )
...
* resolve rope for multipart template
* fix tests
* clone template part if it is `e_string` and folded
* clone string only
* don't clone data again
2023-05-19 16:04:38 -07:00
Dylan Conway
621232c197
use raw template contents for tagged templates ( #2937 )
...
* use raw template contents when tagged
* use union for template contents
* pointer to cooked contents
* raw if suffix
* fix and don't skip test
2023-05-18 10:52:34 -07:00
Jarred Sumner
25447426f1
Make BuildError and ResolveError use C++ instead of JSC C API
...
Fixes memory leak with private data never being cleared
Fixes a case where a ResolveError could actually be a BuildError
2023-05-17 18:51:50 -07:00
Dylan Conway
bf1216021e
resolve rope before pushing to previous string ( #2909 )
2023-05-16 17:19:56 -07:00
Dylan Conway
9c85483a81
handle printing missing expressions and add tests ( #2872 )
...
* handle missing expressions and add tests
* minify missing expression blocks in parser
2023-05-15 21:50:44 -07:00
Jarred Sumner
155110a03a
Fix our tree shaking optimization
2023-05-11 23:19:21 -07:00
dave caruso
6a163cf933
bundler tests and improve Bun.build return type ( #2833 )
...
* importstar_ts
* tests
* run acorn test suite
* bench tweaks
* test
* bun.build tests very incomplete
* remove dataurl and base64 loaders from tests since they dont work yet
* tests
* stuff
* stuff
* add errors and array of blobs
* work so far
* docs
* requested changes
* fix overwrite docs
* remove this file
2023-05-11 14:42:54 -07:00
Dylan Conway
8f4a5903ab
make sure vars can be hoisted in catch scope ( #2847 )
2023-05-10 23:55:27 -07:00
Dylan Conway
1f8c60123d
fix catch scope var declarations ( #2839 )
...
* use `catch_binding` kind and report errors
* make hash optional
2023-05-09 23:52:40 -07:00
Dylan Conway
eb2510170f
resolve rope string before returning ( #2838 )
2023-05-09 20:33:26 -07:00
Jarred Sumner
ff1edca9ee
Fix regression with bun test not recursively scanning the directory tree
2023-05-09 14:56:39 -07:00
Dylan Conway
e74207650b
Fix bug with float minification
2023-05-08 23:07:14 -07:00
Jarred Sumner
35685bbc86
Reduce the size of the JS AST to attempt to resolve the linux performance issue
2023-05-07 22:33:59 -07:00
Jarred Sumner
af1cd23b8c
Add tracy ( #2817 )
...
* Add tracy
* RTLD
* Linux needs LD_PRELOAD
* More tracing
* Inline this
---------
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com >
2023-05-07 21:08:32 -07:00
Jarred Sumner
d3ae9ac7ce
experiment to try to fix linux bundler perf regression
2023-05-07 01:51:05 -07:00
Jarred Sumner
4708835ae6
[minifier] Rewrite equality check logic
2023-05-06 18:23:37 -07:00
Jarred Sumner
5327940132
Fixes https://github.com/oven-sh/bun/issues/2810
2023-05-06 18:16:21 -07:00
Dylan Conway
8e18229d5d
parse and visit catch body scope ( #2796 )
2023-05-04 08:21:33 -07:00
Jarred Sumner
9b5caf7467
Implement synthetic default export
2023-05-03 00:55:06 -07:00
Jarred Sumner
1346293619
Add missing function
2023-05-02 22:12:56 -07:00