Commit Graph

4675 Commits

Author SHA1 Message Date
dave caruso
d196aa2de6 FFI typo (#3973)
* FFI typo

* add tests

* it was a newline
2023-08-04 16:08:50 -07:00
Yifei Wang
bdbc21ff7b Buffer.copy should ignore out-of-range sourceEnd (#3971) 2023-08-04 16:08:25 -07:00
Alex Lam S.L
ff315a3bf2 [install] store resolved workspace path in lockfile (#3974)
- resolve cwd consistently
- speed up package diff
- update `test/bun.lockb`

fixes #3685
fixes #3958
2023-08-04 23:28:42 +03:00
simylein
18a2e18ae1 feat(hot-clear-screen): clear terminal on hot reload (#3976)
* feat(hot-clear-screen): clear terminal on hot reload

* fix(hot-clear-screen): is now I n the correct place

* fix(hot-clear-screen): enable buffering after terminal clear
2023-08-04 04:01:10 -07:00
Jarred Sumner
9beccc3305 Fix thread safety issue in async fs functions file paths (#3964)
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-08-03 20:09:05 -07:00
Jarred Sumner
9ab2acced6 Implement Module.wrap() 2023-08-03 18:22:45 -07:00
Jarred Sumner
944fcebc2b Update build-id (#3940)
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-08-03 18:15:55 -07:00
Dylan Conway
9574db355f allow bundling builtins for browser (#3959)
* Update resolver.zig

* bundle resolve error for non-existent builtins

* tests
2023-08-03 16:27:45 -07:00
Ai Hoshino
a4d996c337 Fix edge case in path.relative. (#3952)
Close: #3924
2023-08-03 15:40:37 -07:00
Ashcon Partovi
08cf0d562a Bunch of fixes (#3516)
* 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-03 15:31:55 -07:00
Alex Lam S.L
9a2c3dea88 [install] fix stale bun.lockb on workspaces (#3945)
- handle workspaces under `--production` correctly
- fix `Makefile`
2023-08-03 12:37:29 -07:00
Ai Hoshino
2c9ff9584a Minor optimization: Avoid extra copying when the chunk has only one element. (#3946)
* Optimize the case where there is only one chunk.

* add generated code
2023-08-03 12:35:04 -07:00
Ai Hoshino
30dde62521 Fix the string encoding in path.extname. (#3949)
Close: #3948
2023-08-03 12:34:41 -07:00
Jarred Sumner
928816bef0 SvelteKit compatibility hack 2023-08-02 21:07:39 -07:00
dave caruso
f17655b2eb typo (#3941) 2023-08-02 20:43:39 -07:00
Ashcon Partovi
9f2dcb064d Fix formatting 2023-08-02 19:02:54 -07:00
dave caruso
6c176cb243 Dave/removedeprecation (#3938)
* hide deprecated stuff

* this edit

* hi
2023-08-02 18:57:11 -07:00
dave caruso
e83058cfe7 Fix http write (#3939)
* Fix encoding problem when uploading a binary file.
Close: #3116

* use BufferList

* Finish rebase

---------

Co-authored-by: Hanaasagi <ambiguous404@gmail.com>
2023-08-02 18:56:41 -07:00
dave caruso
aaaaf744a8 Remove module and browser conditions (#3935)
* fix astro compiler

* clean this up

* Update options.zig

---------

Co-authored-by: Dylan Conway <dylan.conway567@gmail.com>
2023-08-02 18:46:57 -07:00
Jarred Sumner
207c7eb509 Implement node:worker_threads (#3923)
* 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-02 18:12:12 -07:00
Ashcon Partovi
505e77c2d0 Implement node:diagnostics_channel (#3934)
* Add types for `node:async_hooks`

* Implement \`node:diagnostics_channel\`
2023-08-02 18:04:24 -07:00
dave caruso
c2a77cf7ec Rewrite built-in modules to use CommonJS over ESM (#3814)
* 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-08-02 16:27:36 -07:00
Jarred Sumner
7656b4b17e Fixes #3931 (#3933)
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-08-02 16:16:22 -07:00
Ciro Spaciari
25553e62c1 Fix path_watcher (#3920)
* fix callback and onError

* fix main watcher error return

* fixup

* rename to be more clear
2023-08-02 13:00:01 -07:00
Ciro Spaciari
d9f162ff95 clean declare structs (#3929) 2023-08-02 12:58:44 -07:00
Ciro Spaciari
9cb3f3386e Fix expanding on .env files (#3918)
* fix expanding

* refactor locks

* bound checks

* fix comment

* one more test

* oops
2023-08-01 19:04:05 -07:00
Dylan Conway
6c40d6f2f5 add BroadcastChannel (#3922)
* copy and format

* update `SerializedScriptValue.cpp`

* use `expect().fail()` in message channel tests

* rename `BroadcastChannelIdentifier.h`

* copy registries

* progress and tests

* cleanup

* worker and broadcast channel test

* `BroadcastChannel` ref and unref

* `MessagePort` ref, unref, and hasRef

* remove `SecurityContext.cpp/h`

* add types
2023-08-01 18:40:02 -07:00
Jarred Sumner
bd2563ef4c Update JSWorker.cpp 2023-08-01 16:43:48 -07:00
Jarred Sumner
214dc039e0 Implement Worker.prototype.threadId 2023-08-01 16:42:49 -07:00
Vlad Sirenko
7a8f57c4e5 throw error if node module does not exist (#3913) 2023-07-31 19:41:41 -07:00
Jarred Sumner
67599f97ad More logging 2023-07-31 06:50:55 -07:00
Jarred Sumner
8b715dee5b Fixes #1669 2023-07-31 06:39:19 -07:00
Jarred Sumner
f2983e50b7 Add a test for TransformStream 2023-07-31 06:17:56 -07:00
Jarred Sumner
e47a448434 Fixes #2935 2023-07-31 06:03:31 -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
Jarred Sumner
092ada6d2f Micro-optimize LineOffsetTable.generate
5.00 ms  100.0%	0 s	 	bun (81023)
2.00 ms   40.0%	2.00 ms	 	 WTF::HashTableAddResult<WTF::HashTableIterator<WTF::HashTable<WTF::Packed<WTF::StringImpl*>, WTF::Packed<WTF::StringImpl*>, WTF::IdentityExtractor, WTF::DefaultHash<WTF::Packed<WTF::StringImpl*>>, WTF::HashTraits<WTF::Packed<WTF::StringImpl*>>, WTF::HashTraits<WTF::Packed<WTF::StringImpl*>>>, WTF::Packed<WTF::StringImpl*>, WTF::Packed<WTF::StringImpl*>, WTF::IdentityExtractor, WTF::DefaultHash<WTF::Packed<WTF::StringImpl*>>, WTF::HashTraits<WTF::Packed<WTF::StringImpl*>>, WTF::HashTraits<WTF::Packed<WTF::StringImpl*>>>> WTF::HashTable<WTF::Packed<WTF::StringImpl*>, WTF::Packed<WTF::StringImpl*>, WTF::IdentityExtractor, WTF::DefaultHash<WTF::Packed<WTF::StringImpl*>>, WTF::HashTraits<WTF::Packed<WTF::StringImpl*>>, WTF::HashTraits<WTF::Packed<WTF::StringImpl*>>>::addPassingHashCode<WTF::HashSetTranslatorAdapter<WTF::BufferFromStaticDataTranslator<unsigned char>>, WTF::HashTranslatorCharBuffer<unsigned char> const&, WTF::HashTranslatorCharBuffer<unsigned char> const&>(WTF::HashTranslatorCharBuffer<unsigned char> const&, WTF::HashTranslatorCharBuffer<unsigned char> const&)
2.00 ms   40.0%	2.00 ms	 	 heap.StackFallbackAllocator(1024).free
2.00 ms   40.0%	0 s	 	  em.Allocator.rawFree
2.00 ms   40.0%	0 s	 	   em.Allocator.log2a
2.00 ms   40.0%	0 s	 	    em.Allocator.free__anon_1330765
2.00 ms   40.0%	0 s	 	     em.Allocator.resize__anon_1069235
2.00 ms   40.0%	0 s	 	      array_list.ArrayListAligned(i32,null).toOwnedSlice
2023-07-30 08:27:31 -07:00
Jarred Sumner
e636f1b026 skip flay test 2023-07-30 08:26:41 -07:00
Jarred Sumner
54a2d89bd2 Support bun . to run the entry point (#3891)
* Support `bun .`

* Fix tests

---------

Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-07-30 07:54:17 -07:00
Jarred Sumner
b0d3ea5a43 Fix issue with file loader (#3889)
* Fix issue with file loader

* Update jest-extended.test.js

---------

Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-07-30 05:59:54 -07:00
Jarred Sumner
a9dc5d51e3 Fixes #3884 2023-07-30 04:04:06 -07:00
Jarred Sumner
749194378a Bump 2023-07-30 04:04:06 -07:00
Jarred Sumner
794e657eb2 remove unnecessary move 2023-07-30 04:04:06 -07:00
Jarred Sumner
1db119ec11 Fix memory leak (#3887)
* Fix memory leak

* Remove an extra copy

* Further fixes

---------

Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-07-30 02:03:32 -07:00
Ai Hoshino
413fd28120 Fix coredump when reading an empty file(node:stream:createReadStream) (#3882)
* Fix coredump when reading an empty file.
Close: #3607

* It seems that the fd is closed when `auto_close` is true.
2023-07-30 01:18:13 -07:00
Tiramify (A.K. Daniel)
40a9ba6340 Improv. (#3885) 2023-07-30 01:17:02 -07:00
Jarred Sumner
681be10294 Make bun:jsc memoryUsage more accurate (#3876)
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-07-29 06:18:51 -07:00
Jarred Sumner
53cc4df191 Defer task destruction 2023-07-28 20:34:57 -07:00
Jarred Sumner
4f914cbfe8 Ignore when printing to stdout errors (#3869)
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-07-28 18:53:44 -07:00
Jarred Sumner
da7c1d84e9 Fix bug with /path/to/absolute/bun.lockb 2023-07-28 18:52:04 -07:00
Dylan Conway
aebec5b329 markBinding 2023-07-28 18:07:28 -07:00