Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
29 commits
Select commit Hold shift + click to select a range
fb7536a
Harden PHP Fiber execution and bridge value conversion
xtrime-ru Sep 12, 2026
3bd1d50
Add explicit bounded Promise job execution
xtrime-ru Sep 12, 2026
72ee573
Add direct batched dispatch without MessagePack round trips
xtrime-ru Sep 12, 2026
3513e24
Document source installation and support macOS extension builds
xtrime-ru Sep 12, 2026
73da3b1
Harden bridge conversion and execution deadlines
xtrime-ru Sep 12, 2026
7ba5eaf
Document data-only dispatch arguments
xtrime-ru Sep 12, 2026
09c44da
Add Docker Compose development environment
xtrime-ru Sep 29, 2026
8a428ba
Await JavaScript promises through Revolt suspensions
xtrime-ru Sep 29, 2026
70b7c7d
Stabilize async callbacks and native message API
xtrime-ru Sep 29, 2026
289c409
Use native JS-PHP bridge without MessagePack
xtrime-ru Sep 29, 2026
af0b4f8
fix: discard isolated runtime jobs when eval completes
xtrime-ru Sep 30, 2026
b447871
fix: create isolated runtime only during execution
xtrime-ru Sep 30, 2026
01ece7e
feat: allow eval to execute JavaScript without transpilation
xtrime-ru Sep 30, 2026
b4915f6
build: preserve stubs on generation failure and check signatures
xtrime-ru Sep 30, 2026
0831a11
fix: bound transpile cache retained strings to 32 MiB
xtrime-ru Sep 30, 2026
2088da0
refactor: share JavaScript resource error classification
xtrime-ru Sep 30, 2026
c9159b6
feat: configure transpile cache limits per QuickJS instance
xtrime-ru Sep 30, 2026
e44a35a
Run QuickJS on owned native workers with bidirectional PHP RPC
xtrime-ru Oct 26, 2026
a133302
Update Rust dependencies to latest stable releases
xtrime-ru Oct 26, 2026
f1284f2
Simplify worker waits and harden asynchronous bridge lifecycle
xtrime-ru Oct 26, 2026
5af9c2b
Remove redundant execution mode diagnostic
xtrime-ru Oct 26, 2026
e3c5ea6
Unify owned JS conversion and simplify worker receiver
xtrime-ru Oct 26, 2026
7c61dd1
Unify callback RPC and simplify nested request handling
xtrime-ru Oct 26, 2026
d76d2b4
Drive QuickJS promises with rquickjs futures and service jobs
xtrime-ru Oct 26, 2026
44435fb
Keep queued requests progressing across worker turns
xtrime-ru Oct 26, 2026
082381d
Route reentrant PHP callbacks while keeping JavaScript on its worker
xtrime-ru Oct 26, 2026
45e1617
Drive worker RPC and Promise completion through one event loop
xtrime-ru Oct 26, 2026
48ae0ea
Add schema in readme
xtrime-ru Oct 27, 2026
8150c4b
Update dev docker image
xtrime-ru Oct 27, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
.git
.cache
target
4 changes: 2 additions & 2 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ jobs:
php-version: ${{ matrix.php }}
env:
phpts: nts
- uses: dtolnay/rust-toolchain@1.96
- uses: dtolnay/rust-toolchain@1.99.1
# ubuntu-22.04 (kept for glibc 2.35 portability) defaults to clang 14,
# whose emmintrin.h trips a bindgen SSE2 intrinsics bug when parsing the
# PHP headers on x86_64. clang 15+ fixes it; aarch64 never hits it.
Expand Down Expand Up @@ -162,7 +162,7 @@ jobs:
- uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php }}
- uses: dtolnay/rust-toolchain@1.96
- uses: dtolnay/rust-toolchain@1.99.1
- run: cargo build --release
- name: Stage artifact
run: |
Expand Down
3 changes: 2 additions & 1 deletion .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ jobs:
phpts: nts

- name: Set up Rust
uses: dtolnay/rust-toolchain@1.96
uses: dtolnay/rust-toolchain@1.99.1
with:
components: rustfmt

Expand All @@ -54,6 +54,7 @@ jobs:

- name: PHP integration suite
run: |
composer install --no-interaction --prefer-dist
EXT="$(pwd)/target/debug/libphp_quickjs.so"
php -d extension="$EXT" -r 'exit(class_exists("QuickJS") ? 0 : 1);' \
|| { echo "extension failed to load"; exit 1; }
Expand Down
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
/target
/vendor
**/*.rs.bk
*.so
.*
Loading