Jarred Sumner
10be26f011
[CommonJS] Handle this better
2023-05-30 02:51:50 -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
2b04ef4fae
Convert module.exports = { foo: 'bar'} to ESM in bun build ( #3103 )
...
* Convert `module.exports = { foo: 'bar'}` to ESM in `bun build`
* De-opt for `module.exports = {}`
---------
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com >
2023-05-28 21:02:51 -07:00
Jarred Sumner
f870f97a94
Fixes #3091 ( #3092 )
...
* Fixes #3091
* Update build-id
---------
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com >
2023-05-27 00:21:54 -07:00
Dylan Conway
62f05ec103
avoid using null value
2023-05-25 23:07:18 -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
Jarred Sumner
63740a382b
Load .env.test, set NODE_ENV=test in bun test, load .env.{test,production,development}.local ( #3037 )
...
* Support `.env.test` & `.env.{test,production,development}.local`
* Fix bug preventing inlining of process.env.NODE_ENV by default
* Update env_loader.zig
* add env tests
---------
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com >
Co-authored-by: dave caruso <me@paperdave.net >
2023-05-24 18:52:50 -07:00
Dylan Conway
4972934189
fix setting jsxImportSource, jsxFactory, and jsxFragmentFactory ( #3057 )
...
* default automatic, merge jsx flags from multiple tsconfigs
* use entire package name
* some tests
* more tests
2023-05-24 18:33:28 -07:00
Dylan Conway
3de350b24d
only merge if kind is var
2023-05-22 11:33:01 -07:00
Dylan Conway
9306103949
make sure key is added to args ( #2968 )
2023-05-19 18:22:54 -07:00
Jarred Sumner
f3a1a3bb2b
Fixes #2946 ( #2949 )
...
* Fixes #2946
* Update string_mutable.zig
* Fixes #2948
---------
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com >
2023-05-18 13:27:05 -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
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
4d751db27a
More DCE
2023-05-15 02:36:43 -07:00
Jarred Sumner
d3a72a1254
Set more things to const
2023-05-15 00:00:13 -07:00
Jarred Sumner
8cce69e7c2
wip
2023-05-14 23:14:45 -07:00
Jarred Sumner
328d09129a
Fix scope chain bug
2023-05-14 20:56:06 -07:00
Jarred Sumner
8f3b648602
finish #2864
2023-05-12 08:53:23 -07:00
Dylan Conway
5f897589fc
disable sloppy mode block level functions when not bundling ( #2864 )
...
* enable only during bundling
* add `willUseNumberRenamer()`
2023-05-12 08:32:24 -07:00
Jarred Sumner
8340b98352
[bundler] Disable export star redirect code size optimization
2023-05-12 07:14:48 -07:00
Jarred Sumner
1e450dbcab
[bundler] Implement export * from code size optimization
2023-05-12 04:11:21 -07:00
Jarred Sumner
273ccbc241
[bundler] Fix bug with export default TypeScriptType
2023-05-12 02:02:35 -07:00
Jarred Sumner
5b3e18e028
Fix regression
2023-05-12 01:49:00 -07:00
Jarred Sumner
155110a03a
Fix our tree shaking optimization
2023-05-11 23:19:21 -07:00
Dylan Conway
8f4a5903ab
make sure vars can be hoisted in catch scope ( #2847 )
2023-05-10 23:55:27 -07:00
Jarred Sumner
5e0eedccb0
Fix test failure in scope order verification
2023-05-10 20:07:12 -07:00
Jarred Sumner
06a03df9a6
Fix assertion
2023-05-10 17:59:55 -07:00
Dylan Conway
e7d4f5fb16
use member from parent scope when hoisting ( #2840 )
2023-05-10 13:12:16 -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
232a25b77f
add the class name to the current scope
2023-05-08 23:34:36 -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
2aa4fba99d
💅
2023-05-06 19:09:14 -07:00
Jarred Sumner
cf4d13dcc0
Fixes #2811
2023-05-06 19:06:52 -07:00
Jarred Sumner
4708835ae6
[minifier] Rewrite equality check logic
2023-05-06 18:23:37 -07:00
Dylan Conway
8e18229d5d
parse and visit catch body scope ( #2796 )
2023-05-04 08:21:33 -07:00
Jarred Sumner
243dfc177a
Fix code splitting for server components
2023-05-03 23:48:18 -07:00
Jarred Sumner
101f0ee6ba
re-enable our CJS optimization
2023-05-03 10:35:55 -07:00
Jarred Sumner
6bdc158e9c
Use pretty
2023-05-02 11:58:14 -07:00
Jarred Sumner
c5df4e9477
Compress let f; f=123 => let f = 123;
2023-05-01 21:00:51 -07:00
Jarred Sumner
b3c7d0ea23
Small improvement to minifier
2023-05-01 21:00:31 -07:00
Jarred Sumner
44fbd7719e
Fix some splitting bugs
2023-05-01 15:04:46 -07:00
Jarred Sumner
8b53b3ed88
FIx esm -> cjs require interop with converted CJS
...
TODO: make `default` namespace object for these not load the entire wrapper
2023-04-30 23:17:25 -07:00
Dylan Conway
0490bd3d2e
Implement source maps ( #2770 )
...
* wip
* Begin computing source map tables
* source map progress
* external source maps
* fix merge
* remove `@as` coercion
* inline source maps and output source map shifts
* fix `codeWithSourceMapShifts()` after merge
* remove second call to `findReachableFiles()`
* use `worker.allocator`, remove comment
* don't reuse memory for source and sourceContents
* don't reuse `quote_buf`
* fix writing to stdout
* Add comment
* Don't include a sourcemap if the text was empty
* Make the parser faster
* +16% faster sourcemap generation
@dylan-conway I'll need you to look this over to make sure I didn't mess anything up
Though it currently doesn't generate the offsets in the right order...
* 30% performance improvement to Bun.build()
* Print `debugId` in source maps
cc @mitsuhiko @notzeeg
---------
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com >
2023-04-30 22:09:40 -07:00
Jarred Sumner
c3dc64d468
Fix a load order issue
2023-04-29 21:37:04 -07:00
Jarred Sumner
87921520e4
Add TODO note
2023-04-27 05:35:11 -07:00
Jarred Sumner
6142f6eb61
Wrap some things in minify_syntax flag
2023-04-26 22:32:48 -07:00
Jarred Sumner
316a75005b
Inline spreads of array literals
2023-04-26 22:32:31 -07:00
Dylan Conway
75e3546f3a
ensure super() is not merged with adjacent statements ( #2757 )
...
* ensure `super()` is not merged with adjacent statements
* add TODO
2023-04-26 21:46:35 -07:00
Jarred Sumner
6c6118e210
Fixes #2746 ( #2748 )
...
* Fixes #2746
* add test
---------
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com >
2023-04-26 21:07:40 -07:00
Jarred Sumner
ab447e4ff7
Implement file loader in Bun.build ( #2745 )
...
* Update bundle_v2.zig
* Implement `file` loader
* Hash in parallel
* Implement `publicPath`
* simplify
* Update bundle_v2.zig
* Implement `#!`
* Remove unnecessary optional
---------
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com >
2023-04-26 07:22:29 -07:00