Commit Graph

987 Commits

Author SHA1 Message Date
Ai Hoshino
7d0db82bb3 fix(proxy): allow empty string http_proxy env. (#5464)
Close: #5380
2023-09-15 05:24:03 -07:00
Ciro Spaciari
da7db2230f fix(nitro) fix sourcemaps and JSSink closing (#5422)
* fix JSSink progress on sourcemap checking

* fix sourcemaps

* update JSSink fix

* undo + tests

---------

Co-authored-by: Jarred Sumner <jarred@jarredsumner.com>
2023-09-14 23:25:01 -07:00
dave caruso
e8d58f24af fix(runtime): emit node:net connect error event vs throw (#5336)
* fix(runtime): emit `node:net` connect error event vs throw

* oops

* finally

* ok

* we are good
2023-09-14 17:30:30 -07:00
Ciro Spaciari
fa2ef0972b fix(Bun.serve) fix buffering edge case (#5152)
* fix buffering clean

* fix resolveMaybeNeedsTrailingSlash and try to fix ci/cd error

* fix resolveMaybeNeedsTrailingSlash and try to fix ci/cd error

* oops

---------

Co-authored-by: Jarred Sumner <jarred@jarredsumner.com>
2023-09-13 21:48:30 -07:00
dave caruso
9976e3f528 fix(runtime): make most globals configurable/deletable, allow resuming the console iterator (#5216)
* Fix #5177

* Fix #5175

* make most globals deletable/overridable

* not done

* cool

* a

* done

* fix test

* oops

* yippee
2023-09-13 21:39:36 -07:00
Ciro Spaciari
d37602f316 fix(BunFile.slice) fix slice when length is greater than the size (#5186)
* check the limits for file, when slicing

* check eof

* undo test
2023-09-13 19:49:43 -07:00
Ciro Spaciari
c9a0ea96cd fix(BunFile) .slice offset on macOS (#4991)
* fix offset

* simplify error
2023-09-11 17:19:43 -07:00
Chris Hutchinson
8139a20c9f fix: remove from bun-server.test.ts test case (#4709) 2023-09-09 19:03:28 -07:00
dave caruso
57a06745a4 Progress for Next.js (#4468)
* L

* ipc

* asdfghjkl

* dfghjk

* it works!

* types

* patches for next.js

* sdfghj

* wsdfgn,./

* this

* yolo

* okay loser

* asdfghjk

* add some more APIs

* MESS

* sdfghjkl

* remove native events from streams

* stuff

* remove lazy(primordials) test

* debugging

* okay

* less fake extensions object

* fix `Buffer.toString()` args logic

* fix deserialize

* make tests work

* add test for `Buffer.toString` args

* Update server.zig

* remove test

* update test

* Update spawn-streaming-stdin.test.ts

* fix linux build

* Update fs.test.ts

* cli message improvements

* dfshaj

* Fix fs.watch bug maybe?

* remove

---------

Co-authored-by: Dylan Conway <dylan.conway567@gmail.com>
2023-09-07 04:58:44 -07:00
Jarred Sumner
1bd5b245b8 Align process.nextTick execution order with Node (#4409)
* Align `process.nextTick` execution order with Node

* some tests

* formatting

* fixups

* fix the test failures

* simplify the logic here

* push it up

---------

Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
Co-authored-by: dave caruso <me@paperdave.net>
2023-09-05 17:52:57 -07:00
Ciro Spaciari
d268097ded fix SSL proxy tunneling on fetch (#4510) 2023-09-05 15:21:34 -07:00
Jarred Sumner
f269432d90 Listen on a unix domain socket with Bun.serve() (#4311)
* Update response.zig

* Comment this out for now

* Support unix domain socket in Bun.serve()

* Add test

* add types

* Update JSFetchHeaders.cpp

* comment this test out

* tls unix web socket serve options

---------

Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
Co-authored-by: dave caruso <me@paperdave.net>
2023-08-24 22:49:58 -07:00
Jarred Sumner
8a48e8bb0b Report extra memory more (#4289)
* Report memory allocated in fetch

* Memory size reporting to `Headers`

* Fixup memory reporting allocator

* Make these tests do more

* cleanup some of this

---------

Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-08-24 19:39:00 -07:00
Jarred Sumner
c60385716b Bunch of streams fixes (#4251)
* Update WebKit

* Don't do async hooks things when async hooks are not enabled

* Smarter scheduling of event loop tasks with the http server

* less exciting approach

* Bump WebKit

* Another approach

* Fix body-stream tests

* Fixes #1886

* Fix UAF in fetch body streaming

* Missing from commit

* Fix leak

* Fix the other leak

* Fix test

* Fix crash

* missing duperef

* Make this code clearer

* Ignore empty chunks

* Fixes #3969

* Delete flaky test

* Update bun-linux-build.yml

* Fix memory issue

* fix result body, and .done status before the last callback, dont touch headers after sent once

* refactor HTTPClientResult

* less flasky corrupted test

* oops

* fix mutex invalid state

* fix onProgressUpdate deinit/unlock

* fix onProgressUpdate deinit/unlock

* oops

* remove verbose

* fix posible null use

* avoid http null

* metadata can still be used onReject after toResponse

* dont leak task.http

* fix flask tests

* less flask close tests

---------

Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
Co-authored-by: cirospaciari <ciro.spaciari@gmail.com>
2023-08-23 14:05:05 -07:00
Jarred Sumner
bca1bcf29c import errors have code set to ERR_MODULE_NOT_FOUND and require errors have code set to MODULE_NOT_FOUND (#4244)
* ResolveMessage

* Fix it

---------

Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-08-21 21:11:27 -07:00
dave caruso
397182b400 feat: Implement Bun.inspect.custom (#4243)
* add Bun.inspect.custom

* test

* Add Types
2023-08-21 16:25:37 -07:00
Jarred Sumner
752e59f23c Fixes #4089 (#4105)
* Fixes #4089

* Update bindings.cpp

* address PR feedback

---------

Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-08-21 16:25:23 -07:00
Jarred Sumner
c99a9ba33a Implement File 2023-08-21 01:29:06 -07:00
Jarred Sumner
f75b949524 Fixes #1675 (#4230)
* Fixes https://github.com/oven-sh/bun/issues/1675

* Add fallback for Bun.write

* Update blob.zig

* Fix test

---------

Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-08-20 21:29:09 -07:00
Dylan Conway
d0664f8377 fix --bail test 2023-08-18 14:51:55 -07:00
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
dave caruso
0424fd8f6e Support Nitro (#4098)
* Add formatWithOptions

* tests and tweaks

* adjust

* changes

* hi

* add mark/measure stubs

* stuff

* allow unix absolute paths here

* typo

* rebase

* fix stats
2023-08-17 19:34:05 -07:00
Jarred Sumner
6c3dabd84e Fix leaking .ptr (#4181)
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-08-16 22:10:01 -07:00
Dylan Conway
af23dab833 Create domjit.test.ts (#4173) 2023-08-15 22:13:13 -07:00
dave caruso
b682e5bf59 Fix event loop issue with Bun.connect (#4157)
* Fix event loop issue with Bun.connect

* sorry

* add test and fix another edge case
2023-08-15 18:09:11 -07:00
dave caruso
1a6a52314f fix importing too long of strings (#4155) 2023-08-15 01:56:37 -07:00
dave caruso
78defe7a87 Fix worker event loop ref/unref + leak (#4114)
* make more tests pass

* worker changes

* fix some bugs

* remove this

* progress

* uh

* okay

* remove console log

* a

* comment assert for later

* mergable state

* remove test

* remove test
2023-08-12 13:51:03 -07:00
Jacques
e65535cc05 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>
2023-08-10 13:29:53 -07:00
Jarred Sumner
5d7c77aab0 Update main-worker-file.js 2023-08-08 23:02:45 -07:00
Jarred Sumner
2c70837ae7 Run prettier 2023-08-08 23:01:03 -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
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
Jarred Sumner
320ee6b6b7 import bun (#4055)
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-08-08 01:42:44 -07:00
jhmaster
182e600eb7 Fix Bun.hash functions (#4054)
* fix `Bun.hash` functions to behave as expected

* update Bun.hash tests
* properly test the returned hash
* include murmur32v2

* update Bun.hash docs

* run fmt
2023-08-07 23:30:05 -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
00a907c7de Fixes #4001 (#4034)
* Avoid a utf8 conversion in isDetached

* Fixes #4001

* hit the long url codepath

---------

Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-08-06 22:49:10 -07:00
Jarred Sumner
fa4e5d033e Fixes #3129 (#4018)
* Fixes #3129

* add CloseEvent

---------

Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-08-06 07:35:07 -07:00
Jarred Sumner
637a38f394 Fixes #3991
Fixes #3991
2023-08-04 18:54:08 -07:00
dave caruso
d196aa2de6 FFI typo (#3973)
* FFI typo

* add tests

* it was a newline
2023-08-04 16:08:50 -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
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
Tiramify (A.K. Daniel)
40a9ba6340 Improv. (#3885) 2023-07-30 01:17:02 -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
dave caruso
8a0152e129 Merge import.meta.require and require to be the same thing (#3732)
* Merge import.meta.require and require to be the same thing

* support `require` and BunPlugin (runtime plugin)

* plugins

* unused code

* revert launch.json
2023-07-24 19:32:04 -07:00
Jarred Sumner
4ebf858f43 Less flaky 2023-07-24 19:14:41 -07:00
Jarred Sumner
e1a59d355a slow test is allowed to be slow 2023-07-24 19:11:53 -07:00
Jarred Sumner
b02f097f4d Fix bugs with connecting to localhost (#3758)
* Fix bugs with connecting to localhost

* Update uws

* More logs

* Allow not setting a hostname

* Make server.hostname & server.protocol faster

* Fixup

* normalize listening host

* Fix test

---------

Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-07-23 05:13:48 -07:00
Jarred Sumner
bfaf095c2e Fixes https://discord.com/channels/876711213126520882/1131175053409656833/1131175053409656833
@tr1ckydev this fixes the issue you ran into, see the diff for an example usage of a Bun.plugin that makes a network request on import.
2023-07-22 16:59:54 -07:00
Alex Lam S.L
311dffc690 improve test (#3731)
- minor build diffs
2023-07-22 02:42:30 +03:00