Commit Graph

548 Commits

Author SHA1 Message Date
Jarred Sumner
be9efacf1b WebSocket is a global 2022-06-22 06:56:47 -07:00
Jarred Sumner
71025c8bcc Fix most of the errors 2022-06-22 06:56:47 -07:00
Jarred Sumner
89f08aae27 more code 2022-06-22 06:56:47 -07:00
Jarred Sumner
38cc869104 WIP WebSocket 2022-06-22 06:56:47 -07:00
Jarred Sumner
5eaf6d713e Import most of MessageEvent from WebKit 2022-06-17 04:10:21 -07:00
Jarred Sumner
9eaa427ec9 Update WebKit 2022-06-15 22:11:09 -07:00
Jarred Sumner
5b1eaa7719 [web standards] Add CloseEvent from WebKit 2022-06-15 22:10:57 -07:00
Jarred Sumner
e6fbbd48db Fix lazy loading internal streams 2022-06-15 22:10:12 -07:00
Jarred Sumner
56e88fb4dd direct streams mostly work 2022-06-15 07:17:42 -07:00
Jarred Sumner
d93f093313 wip direct streams 2022-06-15 02:00:45 -07:00
Jarred Sumner
dbde52504d ArrayBufferSink works and it's good. 2022-06-12 21:40:45 -07:00
Jarred Sumner
6d88a3d9c0 Fix build issue 2022-06-12 03:26:03 -07:00
Jarred Sumner
a5d0706c78 Update WebKit 2022-06-10 19:12:37 -07:00
Jarred Sumner
0740cecbfb Update event_loop.zig 2022-06-10 18:59:09 -07:00
Jarred Sumner
b86ca5f67b Missing errno on linux 2022-06-10 18:58:15 -07:00
Jarred Sumner
fc26e92b3e Update jest.zig 2022-06-10 02:26:45 -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
b8eea5cc4a fix some memory leaks with strings 2022-06-09 05:09:48 -07:00
Jarred Sumner
c88dd2c52c Support console.log(myBigInt) 2022-06-09 05:09:22 -07:00
Jarred Sumner
1467ec137a Update event_loop.zig 2022-06-07 22:47:28 -07:00
Jarred Sumner
609edc368f wip ReadableStream <> zig 2022-06-07 22:42:47 -07:00
Jarred Sumner
cdd1a2bdc0 Implement hashCode 2022-06-07 22:41:27 -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
Alexander Kuznetsov
ca21c00f86 Remove generated files from git index (#182) 2022-05-30 01:13:12 -07:00
Jarred Sumner
99d61877d6 [solid] more progress, no fragments, but still not right 2022-05-20 00:45:51 -07:00
Jarred Sumner
e114fca5ee Still not correct! 2022-05-16 19:33:19 -07:00
Jarred Sumner
37e4848c6f work around test failure 2022-05-16 19:25:49 -07:00
Jarred Sumner
78cd9e89f3 Update sqlite3.c 2022-05-16 19:15:10 -07:00
Jarred Sumner
15c40f5ea3 Fix build error on linux 2022-05-16 19:12:22 -07:00
Jarred Sumner
ba36f5db7e prepare for release 2022-05-16 18:45:46 -07:00
Jarred Sumner
a372a0dd6d Update JSSQLStatement.cpp 2022-05-16 18:24:55 -07:00
Jarred Sumner
aba032e176 Copy strings when binding to sqlite 2022-05-16 18:19:08 -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
b21d0f0b22 Fix several bugs in napi
Closes https://github.com/Jarred-Sumner/bun/issues/163
Closes https://github.com/Jarred-Sumner/bun/issues/162
Closes https://github.com/Jarred-Sumner/bun/issues/161
2022-05-11 17:49:18 -07:00
Jarred Sumner
aa87d40f4b [napi] Stub a couple more 2022-05-11 02:59:22 -07:00
Jarred Sumner
7d1eced8c6 [bun.js] eagerly convert to import.meta.require 2022-05-11 02:57:51 -07:00
Jarred Sumner
0bec7001ba [bun.js] Implement a polyfill for the detect-libc npm package 2022-05-11 00:57:06 -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
fd00950852 [bun.js] Implement import.meta.resolveSync 2022-05-11 00:54:42 -07:00
Jarred Sumner
92e8eaf581 [napi] Error on import .node 2022-05-10 20:47:38 -07:00
Jarred Sumner
e8e58a511f Update napi.cpp 2022-05-10 20:44:25 -07:00
Jarred Sumner
08e40efe11 [napi] Fix string bug 2022-05-10 20:24:07 -07:00
Jarred Sumner
8def37c14e [bun.js] Implement Buffer.byteLength 2022-05-10 19:09:28 -07:00
Jarred Sumner
1cb870be16 few more napi functions 2022-05-09 22:39:22 -07:00
Jarred Sumner
b834e21192 [napi] getters & setters work 2022-05-09 21:58:41 -07:00
Jarred Sumner
29b9ced11a Update bindings.cpp 2022-05-09 21:53:44 -07:00
Jarred Sumner
8ac108ba06 [napi] Move some code to C++ for perf 2022-05-09 04:11:48 -07:00
Jarred Sumner
8014a0b8d8 [napi] Support import and require of .node modules 2022-05-09 00:24:25 -07:00
Jarred Sumner
3850fc5b0b Make a lot more stuff work 2022-05-08 17:37:58 -07:00