Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
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
8 changes: 4 additions & 4 deletions deps/quickjs-release.env
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
QUICKJS_NG_REPO="quickjs-ng/quickjs"
QUICKJS_NG_TAG="v0.15.1"
QUICKJS_NG_TARBALL_URL="https://api.github.com/repos/quickjs-ng/quickjs/tarball/v0.15.1"
QUICKJS_NG_RELEASE_URL="https://github.com/quickjs-ng/quickjs/releases/tag/v0.15.1"
QUICKJS_NG_RELEASED_AT="2026-06-04T14:57:07Z"
QUICKJS_NG_TAG="v0.16.0"
QUICKJS_NG_TARBALL_URL="https://api.github.com/repos/quickjs-ng/quickjs/tarball/v0.16.0"
QUICKJS_NG_RELEASE_URL="https://github.com/quickjs-ng/quickjs/releases/tag/v0.16.0"
QUICKJS_NG_RELEASED_AT="2026-07-31T13:24:42Z"
83 changes: 52 additions & 31 deletions deps/quickjs/.github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ jobs:
codegen:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: actions/checkout@v7
- name: build
run: |
make codegen
Expand Down Expand Up @@ -67,7 +67,7 @@ jobs:
- { os: macos-14, configType: shared }
- { os: macos-14, configType: asan+ubsan, runTest262: true }
steps:
- uses: actions/checkout@v6
- uses: actions/checkout@v7
with:
submodules: true

Expand Down Expand Up @@ -178,17 +178,17 @@ jobs:
fail-fast: false
matrix:
config:
- { arch: x64, vsArch: x64, buildType: Debug, os: windows-latest }
- { arch: x64, vsArch: x64, buildType: Release, os: windows-latest }
- { arch: Win32, vsArch: x86, buildType: Debug, os: windows-latest }
- { arch: Win32, vsArch: x86, buildType: Release, os: windows-latest }
- { arch: ARM64, vsArch: arm64, buildType: Debug, os: windows-11-arm }
- { arch: ARM64, vsArch: arm64, buildType: Release, os: windows-11-arm }
- { arch: x64, vsArch: x64, buildType: Debug, os: windows-latest, msvc: 18 }
- { arch: x64, vsArch: x64, buildType: Release, os: windows-latest, msvc: 18 }
- { arch: Win32, vsArch: x86, buildType: Debug, os: windows-latest, msvc: 18 }
- { arch: Win32, vsArch: x86, buildType: Release, os: windows-latest, msvc: 18 }
- { arch: ARM64, vsArch: arm64, buildType: Debug, os: windows-11-arm, msvc: 17 }
- { arch: ARM64, vsArch: arm64, buildType: Release, os: windows-11-arm, msvc: 17 }
steps:
- uses: actions/checkout@v6
- uses: actions/checkout@v7
- name: build
run: |
cmake -B build -DQJS_BUILD_WERROR=ON -DQJS_BUILD_EXAMPLES=ON -G "Visual Studio 17 2022" -A ${{matrix.config.arch}}
cmake -B build -DQJS_BUILD_WERROR=ON -DQJS_BUILD_EXAMPLES=ON -G "Visual Studio ${{matrix.config.msvc}}" -A ${{matrix.config.arch}}
cmake --build build --config ${{matrix.config.buildType}}
- name: stats
run: |
Expand Down Expand Up @@ -227,7 +227,7 @@ jobs:
matrix:
buildType: [Debug, Release]
steps:
- uses: actions/checkout@v6
- uses: actions/checkout@v7
- name: install ninja
run: |
choco install ninja
Expand Down Expand Up @@ -260,11 +260,11 @@ jobs:
matrix:
buildType: [Debug, Release]
steps:
- uses: actions/checkout@v6
- uses: actions/checkout@v7
- name: build
run: |
git submodule update --init --checkout --depth 1
cmake -B build -DQJS_BUILD_WERROR=ON -DQJS_BUILD_EXAMPLES=ON -G "Visual Studio 17 2022" -T ClangCL
cmake -B build -DQJS_BUILD_WERROR=ON -DQJS_BUILD_EXAMPLES=ON -G "Visual Studio 18" -T ClangCL
cmake --build build --config ${{matrix.buildType}}
- name: stats
run: |
Expand Down Expand Up @@ -295,7 +295,7 @@ jobs:
matrix:
buildType: [Debug, Release]
steps:
- uses: actions/checkout@v6
- uses: actions/checkout@v7
- name: install ninja
run: |
choco install ninja
Expand Down Expand Up @@ -331,7 +331,7 @@ jobs:
arch: [x64, Win32]
buildType: [Debug, Release]
steps:
- uses: actions/checkout@v6
- uses: actions/checkout@v7
- name: Install windows sdk
uses: ChristopheLav/windows-sdk-install@v1
with:
Expand Down Expand Up @@ -374,7 +374,7 @@ jobs:
run:
shell: msys2 {0}
steps:
- uses: actions/checkout@v6
- uses: actions/checkout@v7
- name: Setup MSYS2
uses: msys2/setup-msys2@v2
with:
Expand Down Expand Up @@ -421,7 +421,7 @@ jobs:
run:
shell: msys2 {0}
steps:
- uses: actions/checkout@v6
- uses: actions/checkout@v7
- name: Setup MSYS2
uses: msys2/setup-msys2@v2
with:
Expand All @@ -443,7 +443,7 @@ jobs:
emscripten:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: actions/checkout@v7
- uses: mymindstorm/setup-emsdk@v16
- name: check emsdk
run: emcc -v
Expand All @@ -456,7 +456,7 @@ jobs:
wasi:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v6
- uses: actions/checkout@v7
- uses: jcbhmr/setup-wasmtime@v2
- name: setup wasi-sdk
run: |
Expand Down Expand Up @@ -489,7 +489,7 @@ jobs:
with:
packages: make cmake gcc-g++ bash

- uses: actions/checkout@v6
- uses: actions/checkout@v7

- name: build
run: make
Expand All @@ -515,7 +515,7 @@ jobs:
openbsd:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: actions/checkout@v7
- name: build + test
uses: vmactions/openbsd-vm@v1
with:
Expand All @@ -529,7 +529,7 @@ jobs:
freebsd:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: actions/checkout@v7
- name: build + test
uses: vmactions/freebsd-vm@v1
with:
Expand All @@ -544,7 +544,7 @@ jobs:
runs-on: ubuntu-latest
container: reactnativecommunity/react-native-android:v13.0
steps:
- uses: actions/checkout@v6
- uses: actions/checkout@v7
- name: Configure android arm64
# see build options you can use in https://developer.android.com/ndk/guides/cmake
run: |
Expand All @@ -559,7 +559,7 @@ jobs:
ios:
runs-on: macos-latest
steps:
- uses: actions/checkout@v6
- uses: actions/checkout@v7
- name: configure
run: |
cmake -B build -GXcode -DQJS_BUILD_WERROR=ON -DCMAKE_SYSTEM_NAME:STRING=iOS -DCMAKE_XCODE_ATTRIBUTE_CODE_SIGNING_ALLOWED:BOOL=NO -DQJS_BUILD_LIBC=ON
Expand All @@ -574,7 +574,7 @@ jobs:
QJS_BUILD_CLI_WITH_MIMALLOC: ON
MIMALLOC_SHOW_STATS: 1
steps:
- uses: actions/checkout@v6
- uses: actions/checkout@v7
- name: install dependencies
run: |
sudo apt update && sudo apt -y install libmimalloc-dev
Expand All @@ -594,7 +594,7 @@ jobs:
QJS_BUILD_CLI_WITH_STATIC_MIMALLOC: ON
MIMALLOC_SHOW_STATS: 1
steps:
- uses: actions/checkout@v6
- uses: actions/checkout@v7
- name: install dependencies
run: |
brew install mimalloc
Expand All @@ -617,7 +617,7 @@ jobs:
- { os: macos-latest }
runs-on: ${{ matrix.config.os }}
steps:
- uses: actions/checkout@v6
- uses: actions/checkout@v7
- name: build
run: |
make
Expand All @@ -637,15 +637,15 @@ jobs:
jscheck:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: actions/checkout@v7
- name: jscheck
run: |
make jscheck

parserless:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: actions/checkout@v7
- name: build
run: |
make QJS_DISABLE_PARSER=ON QJS_BUILD_EXAMPLES=ON
Expand Down Expand Up @@ -717,13 +717,20 @@ jobs:

# default clang on GitHub hosted runners is from MSYS2.
# Use Visual Studio supplied clang-cl instead.
# clang-cl's AddressSanitizer does not support the debug CRT (/MDd),
# so force the release CRT (/MD) for both debug and release builds.
- name: clang-cl+sanitize
args: >-
"-Db_sanitize=address,undefined"
"-Db_lundef=false"
"-Db_vscrt=md"
extra_envs:
CC: clang-cl
CXX: clang-cl
# clang-cl's AddressSanitizer reports false positive
# global-buffer-overflows on pooled string literals on Windows,
# same as MSVC; disable global checks (covered on Linux).
ASAN_OPTIONS: report_globals=0:halt_on_error=1:abort_on_error=1:print_summary=1
platform:
- ubuntu-latest
- windows-latest
Expand Down Expand Up @@ -817,12 +824,26 @@ jobs:
# ... good job, microsoft :))))

- name: Checkout
uses: actions/checkout@v6
uses: actions/checkout@v7
- name: Activate MSVC and Configure
if: ${{ matrix.platform == 'windows-latest' }}
env: ${{ matrix.mode.extra_envs }}
run: |
meson setup build-${{ matrix.flavor }} --buildtype=${{ matrix.flavor }} ${{ matrix.mode.args }} ${{ matrix.features.args }} --vsenv
$extraArgs = @()
if ($env:CC -eq 'clang-cl') {
# Newer clang-cl no longer emits the asan runtime /defaultlib directives
# when -fsanitize is passed through /clang:, and meson links with lld-link
# directly (not the clang driver), so the asan/ubsan runtime is never pulled
# in. Link it explicitly and make its directory discoverable at link and run
# time (the dynamic runtime ships as a DLL).
$runtimeDir = (clang -print-runtime-dir).Trim()
$env:LIB = "$runtimeDir;$env:LIB"
"LIB=$env:LIB" | Out-File -FilePath $env:GITHUB_ENV -Append -Encoding utf8
$runtimeDir | Out-File -FilePath $env:GITHUB_PATH -Append -Encoding utf8
$libs = "clang_rt.asan_dynamic-x86_64.lib clang_rt.asan_dynamic_runtime_thunk-x86_64.lib"
$extraArgs = @("-Dc_link_args=$libs", "-Dcpp_link_args=$libs")
}
meson setup build-${{ matrix.flavor }} --buildtype=${{ matrix.flavor }} ${{ matrix.mode.args }} ${{ matrix.features.args }} --vsenv @extraArgs
- name: Configuring
if: ${{ matrix.platform != 'windows-latest' }}
env: ${{ matrix.mode.extra_envs }}
Expand Down
4 changes: 2 additions & 2 deletions deps/quickjs/.github/workflows/docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,8 @@ jobs:
name: Build Docusaurus
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: actions/setup-node@v6
- uses: actions/checkout@v7
- uses: actions/setup-node@v7
with:
node-version-file: 'docs/.nvmrc'
- name: Install dependencies
Expand Down
61 changes: 61 additions & 0 deletions deps/quickjs/.github/workflows/gc-stress.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
name: gc-stress

on:
pull_request:
paths:
- '**'
- '!.gitignore'
- '!LICENSE'
- '!README.md'
- '!docs/**'
- '!examples/**'
- '.github/workflows/gc-stress.yml'
push:
branches:
- master
paths:
- '**'
- '!.gitignore'
- '!LICENSE'
- '!README.md'
- '!docs/**'
- '!examples/**'
- '.github/workflows/gc-stress.yml'

jobs:
gc-stress:
runs-on: ${{ matrix.os }}
name: ${{ matrix.os }}
timeout-minutes: 30
defaults:
run:
shell: ${{ matrix.os == 'windows-latest' && 'msys2 {0}' || 'bash' }}
env:
ASAN_OPTIONS: halt_on_error=1:detect_leaks=0
strategy:
fail-fast: false
matrix:
include:
- { os: ubuntu-latest, asan: 'ON' }
- { os: macos-latest, asan: 'ON' }
- { os: windows-latest, asan: 'OFF' }
steps:
- uses: actions/checkout@v7
- name: Setup MSYS2
if: matrix.os == 'windows-latest'
uses: msys2/setup-msys2@v2
with:
install: >-
git
make
pacboy: >-
cmake:p
ninja:p
toolchain:p
- name: build & test
run: >-
make test
BUILD_TYPE=RelWithDebInfo
QJS_ENABLE_GC_STRESS=ON
QJS_ENABLE_ASAN=${{ matrix.asan }}
RUN262='build/run-test262 -x gc-stress-skip.txt'
Loading
Loading