Hanaasagi
8880bf1026
fix(node:buffer): fix Buffer.readUintBE ( #6770 )
...
Close : #6759
2023-10-30 00:07:27 -07:00
Liz
8f42d8c2dd
fix: emit close on stdin stream end ( #6720 )
...
* fix: emit close on stdin stream end
We where not emitting the `close` event when done reading stdin data.
It took me way too long to find this but i kept searching in zig/cpp code of the stream implementations...
Fixes: https://github.com/oven-sh/bun/issues/6713
* fix: don't emit close twice
2023-10-26 17:00:37 -07:00
Jarred Sumner
2b8aae05d1
Add test for custom thenables in AsyncLocalStorage and fix flaky test and make expect(fn).toThrow drain unhandled promise rejections ( #6701 )
...
* Copy Node.js test for async-local-storage thenables
* Fix flaky test
* Make expect(fn).toThrow() more reliable
* Fix setImmediate order
* Support restoring mocked modules with spyOn
* Fix vm test
* Fix more tests
* alright
* Upgrade WebKit
---------
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com >
2023-10-25 22:35:14 -07:00
Dylan Conway
042a6cdbce
Update worker_threads.test.ts
2023-10-24 17:07:48 -07:00
Jérôme Benoit
85a0d71c52
fix(worker_threads): off by one on threadId ( #6671 )
...
* fix(worker_threads): off by one on threadId
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com >
* test: refine worker_threads threadId consistency test
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com >
* test: improve worker_threads tests
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com >
* test: fix worker_threads threadId consistency test
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com >
* test: simplify worker_threads threadId consistency test
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com >
* test: refine worker_threads threadId consistency test
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org >
* refactor: cleanup import on worker_threads tests
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com >
* test: switch worker_threads worker to TS
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com >
* test: revert wrong refactoring
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com >
* test: format
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com >
* test: port worker_threads worker to ESM
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com >
* test: cleanup worker_threads test
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com >
* test: improve worker_threads coverage
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org >
---------
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com >
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org >
2023-10-24 17:05:22 -07:00
Ai Hoshino
1836ecd2ed
fix(node:buffer): fix Buffer.write stuck ( #6651 )
2023-10-22 13:42:05 -07:00
Ai Hoshino
0173571b19
fix(node:buffer): fix the behavior of totalLength in Buffer.concat ( #6574 )
...
* fix(node:buffer): fix the behavior of `totalLength` in `Buffer.concat`
Close : #6570
Close : #3639
* fix buffer totalLength type
---------
Co-authored-by: Ashcon Partovi <ashcon@partovi.net >
2023-10-18 14:30:53 -07:00
Ai Hoshino
e91436e524
fix(node:http): fix server.address() ( #6442 )
...
Closes #6413 , #5850
2023-10-17 13:18:14 -07:00
dave caruso
98d19fa624
fix(runtime): make some things more stable (partial jsc debug build) ( #5881 )
...
* make our debug assertions work
* install bun-webkit-debug
* more progress
* ok
* progress...
* more debug build stuff
* ok
* a
* asdfghjkl
* fix(runtime): fix bad assertion failure in JSBufferList
* ok
* stuff
* upgrade webkit
* Update src/bun.js/bindings/JSDOMWrapperCache.h
Co-authored-by: Jarred Sumner <jarred@jarredsumner.com >
* fix message for colin's changes
* okay
* fix cjs prototype
* implement mainModule
* i think this fixes it all
---------
Co-authored-by: Jarred Sumner <jarred@jarredsumner.com >
2023-10-16 21:22:43 -07:00
Yannik Schröder
0853e19f53
perf(node:events): optimize emit(...) function ( #5485 )
2023-10-16 16:18:40 -07:00
Jérôme Benoit
d9c0273421
fix(node:worker_threads): ensure threadId property is exposed on worker_threads instance ( #6521 )
...
* fix: ensure threadId property is exposed on worker_threads instance
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com >
* fix: rename lazy worker_threads module properties
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com >
* fix: add getter for threadId
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com >
* test: improve worker_threads UTs
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com >
* test: fix lazy loading
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com >
* test: fix worker_threads test
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org >
* fix: return the worker threadId
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com >
* test: refine worker_threads expectation on threadId
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org >
---------
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com >
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org >
2023-10-16 15:19:38 -07:00
Jarred Sumner
d7062eb367
[node:dns] Fix unnecessary array creation + prettier
2023-10-13 17:57:43 -07:00
João Alisson
851dc9aadc
fix(node): dns lookup deprecated behavior ( #6391 )
...
Co-authored-by: alisson <alisson@Ubuntu.myguest.virtualbox.org >
Co-authored-by: Jarred Sumner <jarred@jarredsumner.com >
2023-10-13 17:52:57 -07:00
Liz
a9e1792607
fix: support uint8 exit code range ( #6303 )
...
The exit code support is between 0-255 and not only in the signed positive range
(0-127).
Node.js does not seam to throw on a bigger integer and just wraps around,
but throwing a error is a good approach and makes the behaviour more defined.
This allows the range to be 0-255
Fixes: https://github.com/oven-sh/bun/issues/6284
2023-10-09 11:47:38 -07:00
Ciro Spaciari
35109160ca
feat(KeyObject) ( #5940 )
...
* oops
* createSecretKey but weird error
* use the right prototype, do not add a function called export lol
* HMAC JWT export + base64 fix
* Fix Equals, Fix Get KeySize, add complete export RSA
* fix RSA export
* add EC exports
* X25519 and ED25519 export + fixes
* fix default exports
* better asymmetricKeyType
* fix private exports
* fix symmetricKeySize
* createPublicKey validations + refactor
* jwt + der fixes
* oopsies
* add PEM into createPublicKey
* cleanup
* WIP
* bunch of fixes
* public from private + private OKP
* encrypted keys fixes
* oops
* fix clear tls error, add some support to jwk and other formats on publicEncrypt/publicDecrypt
* more fixes and tests working
* more fixes more tests
* more clear hmac errors
* more tests and fixes
* add generateKeyPair
* more tests passing, some skips
* fix EC key from private
* fix OKP JWK
* nodejs ignores ext and key_ops on KeyObject.exports
* add EC sign verify test
* some fixes
* add crypto.generateKeyPairSync(type, options)
* more fixes and more tests
* fix hmac tests
* jsonwebtoken tests
* oops
* oops2
* generated files
* revert package.json
* vm tests
* todos instead of failues
* toBunString -> toString
* undo simdutf
* improvements
* unlikely
* cleanup
* cleanup 2
* oops
* move _generateKeyPairSync checks to native
2023-10-07 15:22:45 -07:00
Dylan Conway
5a315f4df0
fix another os test failure
2023-10-04 22:45:11 -07:00
Ai Hoshino
f7618aba20
fix(node:process): fix return value of process.kill ( #6207 )
2023-10-01 12:55:38 -07:00
Jarred Sumner
54d25b8f6b
Update cp.test.ts
2023-09-30 17:09:27 -07:00
Jarred Sumner
c21be13be4
tweak github actions ( #6195 )
...
* Discord comments
* better
* better
* actions
---------
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com >
2023-09-30 02:50:38 -07:00
dave caruso
72bdd380af
add Socket.prototype; lol ( #5945 )
2023-09-29 15:42:06 -07:00
dave caruso
387f1260c9
Get Next.js Pages Router to work ( #6095 )
...
* hell
* make it so bun-debug-src
* teag
* wild
* yippee
* fas
* fix async hooks assertions
* yap
* yeah that's wild
* aa
* a
* increase time allowed
* so trivial
2023-09-28 03:53:24 -07:00
jhmaster
e60b3607c1
Complete rework of the majority of node:util, primarily util.inspect ( #4493 )
...
* 1st revision of new util.inspect impl. (not done)
* fix util.types.isArrayBuffer
* fix some utl tests and bugs
* fix node:tty missing primordials
* fix utl stackoverflow handling & some tests
* narrow down diff. context test
* util.inspect indirect circulars optimization
* temp workaround for buggy is...Function checks
* impl. Map/Set/Iterator entries inspection
* fix bigint & symbol objects inspection
* error inspection fixes
* misc util tests stuff
* inline getExternalValue stub
* leftovers
* util.inspect promise internals
* run bun fmt
* commit make js changes
* cut out unnecessary utl files
* reorganize utl folder structure
* remove browserify buffer check
* Try to revert git messing up uws somehow
This reverts commit 2c27e16e7d .
* commit src/js/out files again
* redo this edit too
* refresh js/out files
* Removed uws submodule
* tidy up
* unused primordials
* run fmt
---------
Co-authored-by: dave caruso <me@paperdave.net >
2023-09-27 23:51:49 -07:00
Ai Hoshino
a0081f9e29
fix(node:fs): fix fs.exists callback parameters ( #6097 )
...
Close : #6073
2023-09-27 03:40:45 -07:00
Dylan Conway
aec0d35f9b
no this value ( #6063 )
2023-09-25 23:27:55 -07:00
Jarred Sumner
6cde1d3b89
Add Module._extensions ( #5998 )
...
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com >
2023-09-25 16:09:09 -07:00
Jarred Sumner
e34ff61339
Don't use arena in node:fs ( #5863 )
...
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com >
2023-09-21 18:59:01 -07:00
Liz
b297fabd17
fix: correctly pass the encrypted(bool) property on "Socket" for express.js ( #5878 )
...
* fix: correctly pass the encrypted property on "Socket" for express.js
Express relies on this for setting the requests protocol.
Since this is on a dummy object, a property is simply set with the actual value.
Which seams okay as a workaround.
* chore: add generated files
* chore: add test
* refactor: set property directly rather then through a getter
2023-09-21 18:44:05 -07:00
dave caruso
b05e10cd8b
fix(node:fs): use the right copyFile constants ( #5874 )
2023-09-21 18:42:49 -07:00
Jarred Sumner
0b4a34bbd6
Fix test failures ( #5862 )
...
* Fix test failures
* Fixes #5851
---------
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com >
2023-09-21 07:56:44 -07:00
Jarred Sumner
d1e9b33cac
On Linux, respect memory limit from cgroups ( #5849 )
...
* Implement `process.constrainedMemory()`
* Add a comment
* Handle max
* Missing header
* We can use WTF::ramSize now
* Update WebKit
* Update ZigGlobalObject.cpp
* WebKit
* ✂️
---------
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com >
2023-09-21 07:25:18 -07:00
Ai Hoshino
7319142fd8
feat(node:dns): implement dns.lookupService ( #5613 )
...
* feat(node:dns): implement dns.lookupService
Close : #4347
* fix flags
* add `getSockaddr`
* fix sockaddr size
* flaky test
2023-09-20 18:43:08 -07:00
dave caruso
365fc0d39d
implement Module.prototype._compile ( #5840 )
2023-09-20 18:31:57 -07:00
dave caruso
34d191be67
feat(runtime): implement console._stdout ( #5842 )
...
* implement console._stdout
* nonenum
2023-09-20 18:28:07 -07:00
Ashcon Partovi
64a717ab33
Run bun fmt
2023-09-20 17:24:09 -07:00
Jarred Sumner
ff7f642099
Call Error.prepareStackTrace on new Error().stack ( #5802 )
...
* Always call `Error.prepareStackTrace`
* Support node:vm
* Remove this
* Handle more cases
---------
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com >
2023-09-20 05:52:59 -07:00
Jarred Sumner
1456c72648
Fixes #5800
...
Fixes #5800
2023-09-20 04:33:38 -07:00
Jarred Sumner
5defdf3e28
Fixes #5769 ( #5775 )
...
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com >
2023-09-19 18:16:51 -07:00
Jarred Sumner
9d3f60d44e
Prettier
2023-09-18 21:30:17 -07:00
dave caruso
eb1dc7eede
fix(runtime/node): Allow new Buffer.alloc() + Upgrade WebKit ( #5699 )
...
* make bufferconstructor a static hash table
* chore: Upgrade WebKit to 4d995edbc44062b251be638818edcd88d7d14dd7
* make it constructable now
* fix comment
* yippee
* update CI workflows
2023-09-18 17:33:58 -07:00
dave caruso
333e217c32
feat(runtime): Implement console.Console ( #5448 )
...
* prototype
* asdfg
* It works!
* okay its done now fr
* self review
* ok
* fix
* fix test
---------
Co-authored-by: Jarred Sumner <jarred@jarredsumner.com >
2023-09-18 16:29:56 -07:00
dave caruso
f77df12894
Fix HTTP listen behavior being non-compliant with node ( #5689 )
...
* Fix HTTP listen behavior being non-compliant with node
* Add error code for address in use
* use SystemError
---------
Co-authored-by: SuperAuguste <19855629+SuperAuguste@users.noreply.github.com >
2023-09-18 14:57:48 -07:00
Ciro Spaciari
4e0c589562
fix(child_process) unref next tick so exit/close event can be fired before application exits ( #5481 )
...
* unref next tick so exit callback can be called
* fmt + test
* oops
* add ref_count
* update pending
* comment and fix
2023-09-16 22:44:13 -07:00
MrPalixir
0a318ecca1
fix: node compatibility with empty path string ( #4693 )
...
Co-authored-by: MrPalixir <73360179+MrPalixir@users.noreply.github.com >
2023-09-16 18:51:18 -07:00
David Hewitt
43c463f078
fix(node/fs.watch): Check first char before trimming event filenames ( #5505 )
...
* Add failing test
* fix(node/fs.watch): Don't lose first char in event
* run prettier
2023-09-15 21:21:15 -07:00
dave caruso
29b22175bf
feat(runtime): add process.binding uv/natives/config + make global object properties lazy ( #5355 )
...
* binding uv
* we did that
* some more bindings
* fix doc
* fix uv
* yo
* static hash table nonsense <3
* huge refactor to the global object i am not ready for merge conflicts
* it works part 3
* lose
---------
Co-authored-by: Jarred Sumner <jarred@jarredsumner.com >
2023-09-15 08:22:06 -07:00
Jarred Sumner
75697890ce
Rename this file
2023-09-15 07:10:30 -07:00
Jarred Sumner
a39b0d86a0
Fixes #5465 ( #5468 )
...
* Fixes #5465
Fixes #5465
* Update tty.js
* Update InternalModuleRegistryConstants.h
---------
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com >
2023-09-15 06:53:39 -07:00
Dylan Conway
94e9f8bdca
fix http set cookie headers ( #5428 )
...
* allow multiple set-cookie values
* make it work for `getHeader`
* move `getHeader` to cpp
* remove set-cookie check
* move `setHeader` to cpp
---------
Co-authored-by: Jarred Sumner <jarred@jarredsumner.com >
2023-09-14 23:03:20 -07:00
Jarred Sumner
ced69d3818
async-ify all node:fs functions ( #5360 )
...
* async all node:fs functions
* draw the rest of the owl
* LLVM & Clang 16
---------
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com >
2023-09-14 21:26:37 -07:00
Dylan Conway
308237752a
v8 date parser tests ( #5332 )
...
* Create v8-date-parser.test.js
* one more test
* add permalinks and enable parser in bun
---------
Co-authored-by: Jarred Sumner <jarred@jarredsumner.com >
2023-09-14 19:43:11 -07:00