Commit Graph

257 Commits

Author SHA1 Message Date
Jarred Sumner
be9efacf1b WebSocket is a global 2022-06-22 06:56:47 -07:00
Jarred Sumner
b4049016ca some more tests 2022-06-15 22:12:04 -07:00
Jarred Sumner
56e88fb4dd direct streams mostly work 2022-06-15 07:17:42 -07:00
Jarred Sumner
5ccf606107 new Response(stream).arrayBuffer() + 3 more
- `new Response(stream).arrayBuffer()`
- `new Response(stream).json()`
- `new Response(stream).text()`
- `new Response(stream).blob()`
2022-06-09 21:29:57 -07:00
Jarred Sumner
5b4dcb8d16 log esm import order 2022-06-07 22:42:12 -07:00
Jarred Sumner
43de33afc7 Web Streams API (#176)
* [bun.js] `WritableStream`, `ReadableStream`, `TransformStream`, `WritableStreamDefaultController`, `ReadableStreamDefaultController` & more

* Implement `Blob.stream()`

* Update streams.test.js

* Fix sourcemaps crash

* [TextEncoder] 3x faster in hot loops

* reading almost works

* start to implement native streams

* Implement `Blob.stream()`

* Implement `Bun.file(pathOrFd).stream()`

* Add an extra function

* [fs.readFile] Improve performance

* make jsc bindings a little easier to work with

* fix segfault

* faster async/await + readablestream optimizations

* WebKit updates

* More WebKit updates

* Add releaseWEakrefs binding

* `bun:jsc`

* More streams

* Update streams.test.js

* Update Makefile

* Update mimalloc

* Update WebKit

* Create bun-jsc.test.js

* Faster ReadableStream

* Fix off by one & exceptions

* Handle empty files/blobs

* Update streams.test.js

* Move streams to it's own file

* temp

* impl #1

* take two

* good enough for now

* Implement `readableStreamToArray`, `readableStreamToArrayBuffer`, `concatArrayBuffers`

* jsxOptimizationInlining

* Fix crash

* Add `jsxOptimizationInline` to Bun.Transpiler

* Update Transpiler types

* Update js_ast.zig

* Automatically choose production mode when NODE_ENV="production"

* Update cli.zig

* [jsx] Handle defaultProps when inlining

* Update transpiler.test.js

* uncomment some tests

Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2022-06-07 22:32:46 -07:00
Jarred Sumner
99d61877d6 [solid] more progress, no fragments, but still not right 2022-05-20 00:45:51 -07:00
Jarred Sumner
07e695da03 add a test 2022-05-16 23:05:21 -07:00
Jarred Sumner
e114fca5ee Still not correct! 2022-05-16 19:33:19 -07:00
Jarred Sumner
95daafee0f Update serve.test.ts 2022-05-16 19:26:57 -07:00
Jarred Sumner
0d12a1f9ee reset on stmt on error 2022-05-16 17:18:50 -07:00
Jarred Sumner
a37f86e89d bun:sqlite (#167)
* ✂️

* Add the slow version

* draw the rest of the owl

* Fix crash when allocating lots of memory

* [Bun.Transipiler] Support passing objects

* [JS Parser] Support passing objects to macros via Bun.Transpiler

* Update JSSQLStatement.cpp

* Embed SQLite

* Add SQLite to Dockerfile

* [sqlite] Add quick one-off queries without creating a whole object

* [sqlite] Add `columnsCount`, rename raw() to `values()`, remove `rebind`

* Implement `bun:sqlite`

* return null

* Fix updating query

* Update bun.d.ts

* more tests

* Support variadic arguments, write tests and add types

* Update sqlite.d.ts

* Update sqlite.d.ts

* latest

* Implement `Database.loadExtension` and `Database.setCustomSQLite`

* Support `require.resolve`

* [napi] Improve string performance

* [bun.js] Support some of `node:module`

* another test

* [sqlite] Support serialize & deserialize

* [`bun:ffi`] Implement `CFunction` and `linkSymbols`

* [bun.js] Fix crash in `Buffer.from`

* Update sqlite.test.js

* Document linkSymbols

* docs

* Update README.md
2022-05-16 15:46:20 -07:00
Jarred Sumner
47b6dc9eea Add test for import.meta.require 2022-05-11 03:19:29 -07:00
Jarred Sumner
3c87fbfd37 [bun.js] Implement import.meta.require
This allows synchronous dynamic loading of `.node`, `.json`, and `.toml` files.

It is not a CommonJS require, but it can be used that way so long as the content is not JavaScript.
2022-05-11 00:56:35 -07:00
Jarred Sumner
84e8d08ec6 Add test for Buffer.byteLength 2022-05-10 20:47:51 -07:00
Jarred Sumner
f4188b3ddc Add test for __dirname 2022-05-09 21:54:08 -07:00
Jarred Sumner
d613ba5fcd Update serve.test.ts 2022-05-08 01:14:21 -07:00
Jarred Sumner
61d548c7bf [bun.js] Fix bug with headers not being sent in fetch 2022-05-08 01:12:46 -07:00
Jarred Sumner
94637711b9 Update zlib.test.js 2022-05-07 13:27:23 -07:00
Jarred Sumner
bdf28e42f6 [bun.js] Support gzipSync, gunzipSync, inflateSync, deflateSync 2022-05-07 01:38:26 -07:00
Jarred Sumner
d629cfafd6 E.String gets a Rope 2022-05-05 21:32:19 -07:00
Jarred Sumner
0e3df25526 specifically check utf8 2022-05-04 07:03:55 -07:00
Jarred Sumner
66e8d7346f make our http test run more 2022-05-04 07:03:46 -07:00
Jarred Sumner
5b760fe7c4 Safer i64/u64 2022-05-04 00:16:36 -07:00
Jarred Sumner
8b1924f6c2 Add docs for FFI 2022-05-03 01:25:46 -07:00
Jarred Sumner
c6d732eee2 [bun:ffi] Improve uint64_t and int64_t performance 2022-05-02 20:26:18 -07:00
Jarred Sumner
21ab47d9fe [bun:ffi] Support i64 and u64 2022-05-02 06:26:03 -07:00
Jarred Sumner
d70e92e79f [bun:ffi] Support double and float 2022-05-02 04:37:24 -07:00
Jarred Sumner
125a4c747b [bun:ffi] cleanup 2022-05-02 03:40:14 -07:00
Jarred Sumner
69668d49e5 [bun.js] Add Bun.nanoseconds() to report time in nanos 2022-05-02 03:36:26 -07:00
Jarred Sumner
de23f2f8aa Buffer.compare & Buffer.equal 2022-05-01 04:36:17 -07:00
Jarred Sumner
b6aa988716 [bun.js] Improve Buffer creation perf a little 2022-05-01 03:43:52 -07:00
Jarred Sumner
a3b48b3229 [bun.js] Implement Buffer.concat 2022-05-01 02:22:13 -07:00
Jarred Sumner
ba999c9ac3 cleanup 2022-04-30 23:58:46 -07:00
Jarred Sumner
7e13d6cbfe wip 2022-04-30 08:35:48 -07:00
Jarred Sumner
7e6fe52c46 Update ffi-test.c 2022-04-30 05:57:25 -07:00
Jarred Sumner
893d245dca a 2022-04-30 05:56:46 -07:00
Jarred Sumner
516b54578d [bun:ffi] it works 2022-04-29 23:21:14 -07:00
Jarred Sumner
d49ba50289 [bun.js] Implement unsafe.{arrayBufferToPtr, arrayBufferFromPtr, bufferFromPtr} 2022-04-29 07:49:48 -07:00
Jarred Sumner
22f74756b4 [bun ffi] Support pointers 2022-04-29 06:08:36 -07:00
Jarred Sumner
f07463bdfd [bun ffi] support i32, i8, u8, u16, i16, u32, bool 2022-04-29 05:02:01 -07:00
Jarred Sumner
75374fdc32 more tests for buffer 2022-04-29 00:47:26 -07:00
Jarred Sumner
d531d0851f ffi test code 2022-04-29 00:47:26 -07:00
Jarred Sumner
8fa1c5ebf1 commit more 2022-04-29 00:47:26 -07:00
Jarred Sumner
ef18443b6e some tests but need more 2022-04-29 00:47:26 -07:00
Jarred Sumner
77fbfb3fbb Most of Buffer.toString 2022-04-26 01:12:28 -07:00
Jarred Sumner
2c6e5c3fc4 some of buffer 2022-04-25 07:09:18 -07:00
Jarred Sumner
683b171c3f 📷 2022-04-23 03:15:27 -07:00
Jarred Sumner
0137e5cf94 [JS Parser] Support explicit removing 2022-04-16 09:29:10 -07:00
Jarred Sumner
42414d5667 [JS Parser] API for removing & replacing exports 2022-04-16 04:36:00 -07:00