dave caruso
6fd0043f6b
Add util.inspect.custom support to util.inspect/Bun.inspect/console.log ( #4194 )
...
* start work on util.inspect.custom
* asdf
* finish util inspect custom inspect
* inspect
* fix tests
* revert
* tidy
* revert
* oops
* test
* fix issues
2023-08-17 20:56:52 -07:00
Jarred Sumner
0486cea35a
bun --inspect (#4158 )
...
* Let the debugger to pause/resume the event loop
* Add initial support for Debug Adapter Protocol
* Add progress
* Update Worker.cpp
* Fix require("console") #3820 (#4073 )
* Fix #3820
* Add Module (#4074 )
* Set exports to {} in user-constructed CommonJSModuleRecords (#4076 )
* feat(bun/test): Implement "toSatisfy" & "toIncludeRepeated" (fwup) (#3651 )
* Fix merge issues
* oop
* make codegen
* Fix build issues
---------
Co-authored-by: dave caruso <me@paperdave.net >
* worker tests (#4058 )
Co-authored-by: Jarred Sumner <jarred@jarredsumner.com >
* feat(bun:test) add support for test.each() and describe.each() (#4047 )
* rename callback to func
* update testscope to handle function arguments
* works
* big cleanup
* works in debug, not release
* fix memory issue & update tests
* catch & str test
* write types for each() & switch tests to ts
* rm & typo
* move some code around & support describe
* review changes
* Fix one of the astro segfaults, also fix bun init version (#4079 )
* 4->16
* add assertions
* fix version stuff
* Remove unintentional logs from #4043
* Run prettier
* Update main-worker-file.js
* Update SIMDUTF (#4078 )
* Fix constructing buffer from a UTF16 string with the Latin1 encoding. (#4086 )
Close : #3914
* Add support for `bun --revision` (#4027 )
Co-authored-by: Yash Sharma <yashsharma@Yashs-MacBook-Air.local >
* Updates
* Update __global.zig
* remove non-node node-fallbacks (#4082 )
* remove non-node node-fallbacks.
* organize the imports
* Fix test
* Sync bun-polyfills branch (#4081 )
* bun-polyfills: initial impl. & baseline refactor
* move @types/ws dep from root to /test/
* bun-types: remove ReadableStream.forEach method
(this does not exist, probably added by mistake)
* bun-polyfills: remove extraneous stream utils
* bun-polyfills: add types syncing file
* bun-polyfills: re-arrange global polyfills
* bun-polyfills: fix FileBlob streams types again
* bun-polyfills: sync all of @types/node
* bun-polyfills: typeguard all current polyfills
* bun-polyfills: fix import paths
* bun-polyfills: switch to wasm impl. of farmhash
* bun-polyfills: support default import of bun obj
* bun-polyfills: transpiler placeholder file
* bun-polyfills: loaderless import.meta polyfill
* bun-polyfills: refactor import.meta polyfill
* bun-polyfills: repl entrypoint & todo list index
* bun-types: Add null to return type of Bun.which
* bun-types: match Bun.sha with Bun.hash.SHA512_256
* bun-polyfills: new "repl" package.json script
* bun-polyfills: full refactor of toplevel hashes
* bun-polyfills: these are fixed
* bun-types: NODE_ENV is optional
* bun-polyfills: fix Bun.env types
* bun-types+polyfills: fix HeapSnapshot.version type
* bun-polyfills: fix some web streams type conflicts
* bun-polyfills: update internal FileBlob.slice
* bun-polyfills: fix subproc stdin conversions
* bun-polyfills: better internal fileblob types
* bun-polyfills: try to sync global performance type
* bun-polyfills: working zig wasm polyfills setup
* bun-polyfills: update scripts
* bun-polyfills: fix wasm file location resolution
* bun-polyfills: goodbye farmhash (replaced by zig)
* bun-polyfills: move all Bun.hash polyfills to zig
* bun-polyfills: reimpl. seeding of seeded hashes
* bun-polyfills: impl. undocumented murmur32v2
* bun-polyfills: switch zighash from jsdoc to .d.ts
* bun-types: partial fix of Hash types
* bun-polyfills: documented Hash.murmur32v2
* bun-polyfills: misc updates
* bun-polyfills: enable sourcemaps
* bun-polyfills: handle empty inputs to hash funcs
* bun-types: narrow down hash func types
* bun-polyfills: remove unnecessary bigint casts
* bun-polyfills: impl. Bun.isMainThread
* bun-polyfills: impl. Bun.sleep and fix sleepSync
* bun-polyfills: impl. indexOfLine
* bun-polyfills: impl. Bun.peek.status
* bun-types: fix hashing test
---------
Co-authored-by: Jarred Sumner <jarred@jarredsumner.com >
* Add remix guide
* Fix title
* add util.formatWithOptions (#4090 )
* Add formatWithOptions
* tests and tweaks
* adjust
---------
Co-authored-by: Jarred Sumner <jarred@jarredsumner.com >
* bun test: format description of test.each (#4092 )
* bun test: format description
* add tests for tests
* only
---------
Co-authored-by: Jarred Sumner <jarred@jarredsumner.com >
* Fixes #4062 (#4106 )
* Fixes #4062
* Update encoding.zig
* Use faster C++ impl
* Update wtf-bindings.cpp
* undo
* Fixup
---------
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com >
* zig fmt
* Update remix guide
* fs.zig: create temp files with 0o700, not 0o007 (#4107 )
* Handle thundering herd of setInterval (#4109 )
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com >
* Fix memory leak in base64url (#4111 )
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com >
* run files without extensions (#4113 )
* run script without extension
* process stdio write fix
* don't check for trailing slash, var stream
* More lazily initialize these static strings
* Remove assertion
* wip
* Add --inspect flag
* Deprecate loading `node_modules.bun`
* realpath
* regenerate schema
* More
* more
* Update cli.zig
* Debugger JS loads
* have fun
* Most of the code
* Its starting to work.
* more progress
* win some, lose some
* Update dap.ts
* Async Context Tracking
* untested websocket
* Emit Console messages
* Error handling
* errors
* Make profiling work better
* [clap] CLI arguments with optional values ignore positional params
In `bun --inspect foo.js`, `foo.js` should not be the value of `--inspect`. It is a positional parameter. `--inspect=foo`
* Support multiple simultaneous clients, automatically unpause on disconnect
* regenerate
* Update Makefile
* Update WebKit
* Update cli.zig
* Update InternalModuleRegistry+createInternalModuleById.h
* BaseURL
* Update WebKit
* Add web-inspector-bun
* Update build.ts
* formatting, mostly
* Update debugger.ts
* Update InternalModuleRegistryConstants.h
* wrap
* Update test
* Update test
---------
Co-authored-by: Ashcon Partovi <ashcon@partovi.net >
Co-authored-by: Dylan Conway <dylan.conway567@gmail.com >
Co-authored-by: dave caruso <me@paperdave.net >
Co-authored-by: Tiramify (A.K. Daniel) <94789999+TiranexDev@users.noreply.github.com >
Co-authored-by: Jacques <25390037+jecquas@users.noreply.github.com >
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com >
Co-authored-by: Ai Hoshino <ambiguous404@gmail.com >
Co-authored-by: Yash Sharma <yashosharma@gmail.com >
Co-authored-by: Yash Sharma <yashsharma@Yashs-MacBook-Air.local >
Co-authored-by: Colin McDonnell <colinmcd94@gmail.com >
Co-authored-by: jhmaster <32803471+jhmaster2000@users.noreply.github.com >
Co-authored-by: Adhityaa Chandrasekar <github@adtac.in >
Co-authored-by: Dylan Conway <35280289+dylan-conway@users.noreply.github.com >
2023-08-16 19:40:20 -07:00
jhmaster
117cee5ca5
bun-wasm fixes & improvements (#4126 )
...
* automate Bun.version & revision polyfills
* polyfill Bun.gc
* bun:jsc module initial polyfills
* fixes & improvements to bun-wasm
2023-08-11 18:20:21 -07:00
jhmaster
40befd8770
Sync bun-polyfills branch ( #4081 )
...
* bun-polyfills: initial impl. & baseline refactor
* move @types/ws dep from root to /test/
* bun-types: remove ReadableStream.forEach method
(this does not exist, probably added by mistake)
* bun-polyfills: remove extraneous stream utils
* bun-polyfills: add types syncing file
* bun-polyfills: re-arrange global polyfills
* bun-polyfills: fix FileBlob streams types again
* bun-polyfills: sync all of @types/node
* bun-polyfills: typeguard all current polyfills
* bun-polyfills: fix import paths
* bun-polyfills: switch to wasm impl. of farmhash
* bun-polyfills: support default import of bun obj
* bun-polyfills: transpiler placeholder file
* bun-polyfills: loaderless import.meta polyfill
* bun-polyfills: refactor import.meta polyfill
* bun-polyfills: repl entrypoint & todo list index
* bun-types: Add null to return type of Bun.which
* bun-types: match Bun.sha with Bun.hash.SHA512_256
* bun-polyfills: new "repl" package.json script
* bun-polyfills: full refactor of toplevel hashes
* bun-polyfills: these are fixed
* bun-types: NODE_ENV is optional
* bun-polyfills: fix Bun.env types
* bun-types+polyfills: fix HeapSnapshot.version type
* bun-polyfills: fix some web streams type conflicts
* bun-polyfills: update internal FileBlob.slice
* bun-polyfills: fix subproc stdin conversions
* bun-polyfills: better internal fileblob types
* bun-polyfills: try to sync global performance type
* bun-polyfills: working zig wasm polyfills setup
* bun-polyfills: update scripts
* bun-polyfills: fix wasm file location resolution
* bun-polyfills: goodbye farmhash (replaced by zig)
* bun-polyfills: move all Bun.hash polyfills to zig
* bun-polyfills: reimpl. seeding of seeded hashes
* bun-polyfills: impl. undocumented murmur32v2
* bun-polyfills: switch zighash from jsdoc to .d.ts
* bun-types: partial fix of Hash types
* bun-polyfills: documented Hash.murmur32v2
* bun-polyfills: misc updates
* bun-polyfills: enable sourcemaps
* bun-polyfills: handle empty inputs to hash funcs
* bun-types: narrow down hash func types
* bun-polyfills: remove unnecessary bigint casts
* bun-polyfills: impl. Bun.isMainThread
* bun-polyfills: impl. Bun.sleep and fix sleepSync
* bun-polyfills: impl. indexOfLine
* bun-polyfills: impl. Bun.peek.status
* bun-types: fix hashing test
---------
Co-authored-by: Jarred Sumner <jarred@jarredsumner.com >
2023-08-10 12:17:39 -07:00
Jacques
63f58f4026
feat(bun:test) add support for test.each() and describe.each() ( #4047 )
...
* rename callback to func
* update testscope to handle function arguments
* works
* big cleanup
* works in debug, not release
* fix memory issue & update tests
* catch & str test
* write types for each() & switch tests to ts
* rm & typo
* move some code around & support describe
* review changes
2023-08-08 22:25:32 -07:00
dave caruso
009fe18fa2
worker tests ( #4058 )
...
Co-authored-by: Jarred Sumner <jarred@jarredsumner.com >
2023-08-08 22:19:46 -07:00
Tiramify (A.K. Daniel)
40d00a961e
feat(bun/test): Implement "toSatisfy" & "toIncludeRepeated" (fwup) ( #3651 )
...
* Fix merge issues
* oop
* make codegen
* Fix build issues
---------
Co-authored-by: dave caruso <me@paperdave.net >
2023-08-08 22:14:30 -07:00
dave caruso
5497accbdb
Add env option for node:worker_threads ( #4052 )
...
* almost works
* env stuff
* test fixes
* wtfmove
* ok
* ok
* ref by default
* it now does the ref stuff by default
* cool
2023-08-07 23:58:38 -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
Alex Lam S.L
8275b8ccd2
[types] fix blob.json() ( #3995 )
2023-08-04 17:30:38 -07:00
Colin McDonnell
63d265780f
Fix types ( #3963 )
...
* Fix types
* Add ws module
* Add *.toml module declaration
* Clean up
2023-08-04 12:56:34 -07:00
Colin McDonnell
d10860d272
Add type tests
2023-08-03 17:44:18 -07:00
Colin McDonnell
76fa3076cd
Add type tests, update modules.md
2023-08-03 17:41:47 -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
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
8aa5892f70
Update types
2023-08-01 16:44:16 -07:00
Dylan Conway
c68d9ae634
optional parameter
2023-07-28 18:04:00 -07:00
Dylan Conway
d432448ac8
fix types and add message channel/port gc test
2023-07-28 16:55:49 -07:00
Dylan Conway
d614fdfaac
MessageChannel and MessagePort (#3860 )
...
* copy and format
* copy
* copy
* cleanup
* some tests
* spellcheck
* add types
* don't lock getting contextId
* array buffer test
2023-07-28 16:44:28 -07:00
Tiramify (A.K. Daniel)
242d8655d8
feat(bun/test): Impl. expect().pass() & expect().fail() ( #3843 )
...
* Impl. pass & fail
* fix
* fix 2
* smol
2023-07-28 15:46:44 -07:00
Jarred Sumner
70b9bf743c
Add Bun.isMainThread
2023-07-27 22:28:28 -07:00
Jarred Sumner
dc0d767f27
Enable Promise.withResolvers()
...
https://github.com/tc39/proposal-promise-with-resolvers
Thanks @dcrousso
2023-07-26 23:52:57 -07:00
Colin McDonnell
34fd4df646
Fix broken anchors
2023-07-26 17:11:15 -07:00
Colin McDonnell
4686f5395e
Add number types for FFI ( #3706 )
2023-07-20 11:52:45 -07:00
Jarred Sumner
2dc90f3908
Update worker.test-d.ts
2023-07-19 23:59:37 -07:00
Colin McDonnell
53ad9b922f
Docs & types for 0.7 ( #3665 )
...
* Docs & types for 0.7
* Tweak
* Update
* Tweaks
* Tweak
* Tweaks
---------
Co-authored-by: Jarred Sumner <jarred@jarredsumner.com >
2023-07-19 23:59:15 -07:00
Jarred Sumner
0b365781a8
Bump version to Bun v0.7.0
2023-07-19 23:57:41 -07:00
Jarred Sumner
dd46c11273
Support streams in response.formData() & request.formData, introduce Bun.readableStreamToFormData() ( #3697 )
...
* codegen
* FormData.from
* Fixes #3225
* Introduce `Bun.readableStreamToFormData`
* Update bun.d.ts
* Add examples
* add
---------
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com >
2023-07-19 23:12:06 -07:00
Jarred Sumner
ed8be46a7b
Inlinebun object from workers
2023-07-19 22:53:28 -07:00
dave caruso
9b6dc49575
Implement AsyncLocalStorage ( #3089 )
...
* work to get async local storage working.
* a
* a
* everything but queueMicrotask
* sdfghj
* .
* finish
* tests
* test
* ok
* done
* im so stupid
* Upgrade WebKit
* refactor
* refactor
* changes requested
* oops
* cool
* fix runInAsyncScope
2023-07-19 17:20:00 -07:00
Jarred Sumner
99de971359
Fix incorrect name
2023-07-17 04:21:00 -07:00
Jarred Sumner
209dc981c0
Implement Workers ( #3645 )
...
* copy files
* format
* options
* Introduce `Worker`, `onmessage`, `onerror`, and `postMessage` globals
* Stub `Worker.prototype.ref` & `Worker.prototype.unref`
* Update web_worker.zig
* Worker works
* Add "mini" mode
* add wakeup
* Partially fix the keep-alive issue
* clean up refer behavior
* Implement `serialize` & `deserialize` in `bun:jsc` & add polyfill for `node:v8`
* Types & docs
* Update globals.d.ts
* Add mutex
* Fixes
---------
Co-authored-by: Dylan Conway <dylan.conway567@gmail.com >
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com >
2023-07-16 21:15:24 -07:00
Dylan Conway
e546e4064c
structuredClone types
2023-07-14 19:49:15 -07:00
Colin McDonnell
43abf2629f
Remove fdatasync from types
2023-07-13 17:48:46 -07:00
Colin McDonnell
325147261f
Update docs/types for process ( #3631 )
...
* Update docs/types for process
* Tweaks
* Tweaks
* Fix types
2023-07-13 17:40:46 -07:00
Ashcon Partovi
9eb8eea2a8
Implement ping(), pong(), terminate() for WebSocket client and server ( #3257 )
2023-07-13 09:39:43 -07:00
Jarred Sumner
c5f2280489
Implement process.kill and process._kill
2023-07-11 19:06:01 -07:00
simylein
4b333b2d35
docs(sqlite): database prepare types reflect runtime ( #3599 )
...
* docs(sqlite): database prepare types reflect runtime
* Update sqlite.d.ts
---------
Co-authored-by: Ashcon Partovi <ashcon@partovi.net >
2023-07-11 09:09:06 -07:00
Jarred Sumner
538bcef731
Update globals.d.ts
2023-07-10 01:33:46 -07:00
Colin McDonnell
affd06d05c
Update types, partially fix typecheck ( #3551 )
...
* Update types
* Remove caret
2023-07-07 15:10:33 -07:00
Colin McDonnell
d377265b67
Update trustedDeps doc
2023-07-06 15:44:48 -07:00
Colin McDonnell
109ebc14fd
Various docs updates ( #3437 )
...
* Various docs updates
* Add mocks page
* Fix make
* WebKit instructions
* Update instructions
* Updates
* Update nodejs compat table
* Document trusted deps
* Tweak trustedDependencies docs
* Document --exact
* Update test docs
* Tweaks
* Boring
* Remove redundant j
* Undo makefile changes
* Undo makefile changes
* Update page title
* Regen
* Undo changes
2023-07-06 13:02:29 -07:00
Jarred Sumner
3aaec120e7
Fixes #3512 ( #3526 )
...
* Fixes #3512
* Fix `clearTimeout` and `clearInterval` not cancelling jobs same-tick
---------
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com >
2023-07-05 03:46:10 -07:00
Jarred Sumner
f0a795b568
Stub out useFakeTimers and useRealTimers
2023-07-02 22:42:13 -07:00
Jarred Sumner
c3f8593f8c
[node:buffer] Implement isUtf8 and isAscii ( #3498 )
...
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com >
2023-07-02 18:06:21 -07:00
dave caruso
d356cd5d48
implement perf_hooks.constants ( #3476 )
2023-06-30 14:58:38 -07:00
dave caruso
b9460087e3
Fixes node:http and node:stream so ytdl-core works. ( #3452 )
...
* fix crash in readablestate
* make node:https request+get actually use https
* use a native readablestream in IncomingMessage
* tweaks
* fix abort crash
* emit close by default
* remove abort. this isnt a real function
* add validate functions, fixup some other requested changes. not done yet
* Update WebCoreJSBuiltins.cpp
* Update JSReadableState.cpp
* Add some missing exports
---------
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com >
2023-06-29 20:36:18 -07:00
Jarred Sumner
292647bd53
Introduce await Bun.file(path).exists() ( #3446 )
...
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com >
2023-06-28 16:09:08 -07:00
Ciro Spaciari
069b42a7cc
[feat] fs.watch ( #3249 )
...
* initial support
* add types
* fix comment
* fix types
* bigfix up
* more fixes
* fix some encoding support for watch
* fix rename event
* fixup
* fix latin1
* add fs_events, still failing some tests
* fixuup
* remove unecesary check
* readd tests ops
* this is necessary? just testing CI/CD weird errors
* just use dupe here
* cleanup and fix deinit
* fix zig upgrade
2023-06-23 23:24:34 -07:00
Ashcon Partovi
217501e180
expect().resolves and expect().rejects (#3318 )
...
* Move expect and snapshots to their own files
* expect().resolves and expect().rejects
* Fix promise being added to unhandled rejection list
* Handle timeouts in expect(<promise>)
* wip merge
* Fix merge issue
---------
Co-authored-by: Jarred Sumner <jarred@jarredsumner.com >
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com >
2023-06-22 22:27:00 -07:00