From d2c663b6d63723ea57a212bc96a40df0fe64c1c0 Mon Sep 17 00:00:00 2001 From: dpdani Date: Wed, 15 Oct 2025 18:22:15 +0200 Subject: [PATCH 01/15] Add fusil fuzzer to CI --- .github/workflows/fusil.yml | 52 +++++++++++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 .github/workflows/fusil.yml diff --git a/.github/workflows/fusil.yml b/.github/workflows/fusil.yml new file mode 100644 index 00000000..916914bf --- /dev/null +++ b/.github/workflows/fusil.yml @@ -0,0 +1,52 @@ +name: fusil.yml +on: + pull_request: + +jobs: + fuzz: + runs-on: ubuntu-latest + + strategy: + fail-fast: false + matrix: + python-version: + - 3.14t + + steps: + - name: Install pyenv + run: | + git clone --single-branch --depth=1 --no-tags \ + https://github.com/pyenv/pyenv.git "./.pyenv" + - name: build python with sanitizers + run: | + export PYENV_ROOT="./.pyenv" + export PYENV_BIN="$PYENV_ROOT/bin" + export PYENV_SHIMS="$PYENV_ROOT/shims" + export PYENV_CACHE="$PYENV_ROOT/cache" + mkdir "$PYENV_CACHE" + export CONFIGURE_OPTS="--disable-gil --with-pydebug --with-address-sanitizer --without-pymalloc --without-system-libmpdec --config-cache" + pyenv install --verbose --keep ${{ matrix.python-version }} + pyenv global ${{ matrix.python-version }} + export CUSTOM_PYTHON="$(pyenv which python)" + - uses: actions/checkout@v4 + - name: install dependencies + run: | + pip install python-ptrace git+https://github.com/devdanzin/fusil.git ".[dev]" + - name: prepare runs directory + run: | + mkdir -p -m 777 ./fusil/runs + - name: run fusil + run: | + export ASAN_OPTIONS=detect_leaks=0 + export PYTHON_GIL=0 + fusil-python-threaded \ + --python="$CUSTOM_PYTHON" \ + --force-unsafe \ + -v \ + --success=200 \ + --fast \ + --test-private \ + --packages=cereggii \ + --no-async \ + --no-numpy \ + --no-tstrings From 2c269053860d2b2657bbff0539bb44a4d4b9fc80 Mon Sep 17 00:00:00 2001 From: dpdani Date: Wed, 15 Oct 2025 18:25:58 +0200 Subject: [PATCH 02/15] fixes --- .github/workflows/fusil.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/workflows/fusil.yml b/.github/workflows/fusil.yml index 916914bf..f3349804 100644 --- a/.github/workflows/fusil.yml +++ b/.github/workflows/fusil.yml @@ -17,13 +17,14 @@ jobs: run: | git clone --single-branch --depth=1 --no-tags \ https://github.com/pyenv/pyenv.git "./.pyenv" - - name: build python with sanitizers - run: | export PYENV_ROOT="./.pyenv" export PYENV_BIN="$PYENV_ROOT/bin" export PYENV_SHIMS="$PYENV_ROOT/shims" export PYENV_CACHE="$PYENV_ROOT/cache" mkdir "$PYENV_CACHE" + alias pyenv='./.pyenv/bin/pyenv' + - name: build python with sanitizers + run: | export CONFIGURE_OPTS="--disable-gil --with-pydebug --with-address-sanitizer --without-pymalloc --without-system-libmpdec --config-cache" pyenv install --verbose --keep ${{ matrix.python-version }} pyenv global ${{ matrix.python-version }} From 16a37fab15ec771de0f8baf14d113e9f1efab75a Mon Sep 17 00:00:00 2001 From: dpdani Date: Wed, 15 Oct 2025 18:27:41 +0200 Subject: [PATCH 03/15] fixes --- .github/workflows/fusil.yml | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/.github/workflows/fusil.yml b/.github/workflows/fusil.yml index f3349804..f7a6bf5c 100644 --- a/.github/workflows/fusil.yml +++ b/.github/workflows/fusil.yml @@ -22,12 +22,11 @@ jobs: export PYENV_SHIMS="$PYENV_ROOT/shims" export PYENV_CACHE="$PYENV_ROOT/cache" mkdir "$PYENV_CACHE" - alias pyenv='./.pyenv/bin/pyenv' - name: build python with sanitizers run: | export CONFIGURE_OPTS="--disable-gil --with-pydebug --with-address-sanitizer --without-pymalloc --without-system-libmpdec --config-cache" - pyenv install --verbose --keep ${{ matrix.python-version }} - pyenv global ${{ matrix.python-version }} + ./.pyenv/bin/pyenv install --verbose --keep ${{ matrix.python-version }} + ./.pyenv/bin/pyenv global ${{ matrix.python-version }} export CUSTOM_PYTHON="$(pyenv which python)" - uses: actions/checkout@v4 - name: install dependencies From 85642ed11882e87fb80a238574caac4a9e890c74 Mon Sep 17 00:00:00 2001 From: dpdani Date: Wed, 15 Oct 2025 18:34:46 +0200 Subject: [PATCH 04/15] fixes --- .github/workflows/fusil.yml | 6 +++--- .github/workflows/lint.yml | 2 +- .github/workflows/tests.yml | 2 +- .github/workflows/tsan.yml | 2 +- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/fusil.yml b/.github/workflows/fusil.yml index f7a6bf5c..5852a6ee 100644 --- a/.github/workflows/fusil.yml +++ b/.github/workflows/fusil.yml @@ -27,11 +27,11 @@ jobs: export CONFIGURE_OPTS="--disable-gil --with-pydebug --with-address-sanitizer --without-pymalloc --without-system-libmpdec --config-cache" ./.pyenv/bin/pyenv install --verbose --keep ${{ matrix.python-version }} ./.pyenv/bin/pyenv global ${{ matrix.python-version }} - export CUSTOM_PYTHON="$(pyenv which python)" + export CUSTOM_PYTHON="$(./.pyenv/bin/pyenv which python)" - uses: actions/checkout@v4 - name: install dependencies run: | - pip install python-ptrace git+https://github.com/devdanzin/fusil.git ".[dev]" + "$CUSTOM_PYTHON" -m pip install python-ptrace git+https://github.com/devdanzin/fusil.git ".[dev]" - name: prepare runs directory run: | mkdir -p -m 777 ./fusil/runs @@ -39,7 +39,7 @@ jobs: run: | export ASAN_OPTIONS=detect_leaks=0 export PYTHON_GIL=0 - fusil-python-threaded \ + "$CUSTOM_PYTHON" -m fusil-python-threaded \ --python="$CUSTOM_PYTHON" \ --force-unsafe \ -v \ diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index bd52dd0e..5f5dbcff 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -4,7 +4,7 @@ on: push: branches: - main - pull_request: +# pull_request: jobs: lint: diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index baaec279..9a970796 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -4,7 +4,7 @@ on: push: branches: - main - pull_request: +# pull_request: jobs: test: diff --git a/.github/workflows/tsan.yml b/.github/workflows/tsan.yml index 4a84de48..1600f709 100644 --- a/.github/workflows/tsan.yml +++ b/.github/workflows/tsan.yml @@ -4,7 +4,7 @@ on: push: branches: - main - pull_request: +# pull_request: jobs: tsan: From 9b77bc561013b44a8ca9673448ac184886ed65a9 Mon Sep 17 00:00:00 2001 From: dpdani Date: Wed, 15 Oct 2025 18:42:08 +0200 Subject: [PATCH 05/15] fixes --- .github/workflows/fusil.yml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.github/workflows/fusil.yml b/.github/workflows/fusil.yml index 5852a6ee..523f37bd 100644 --- a/.github/workflows/fusil.yml +++ b/.github/workflows/fusil.yml @@ -22,12 +22,17 @@ jobs: export PYENV_SHIMS="$PYENV_ROOT/shims" export PYENV_CACHE="$PYENV_ROOT/cache" mkdir "$PYENV_CACHE" + echo "PYENV_ROOT=$PYENV_ROOT" >> $GITHUB_ENV + echo "PYENV_BIN=$PYENV_BIN" >> $GITHUB_ENV + echo "PYENV_SHIMS=$PYENV_SHIMS" >> $GITHUB_ENV + echo "PYENV_CACHE=$PYENV_CACHE" >> $GITHUB_ENV - name: build python with sanitizers run: | export CONFIGURE_OPTS="--disable-gil --with-pydebug --with-address-sanitizer --without-pymalloc --without-system-libmpdec --config-cache" ./.pyenv/bin/pyenv install --verbose --keep ${{ matrix.python-version }} ./.pyenv/bin/pyenv global ${{ matrix.python-version }} export CUSTOM_PYTHON="$(./.pyenv/bin/pyenv which python)" + echo "CUSTOM_PYTHON=$CUSTOM_PYTHON" >> $GITHUB_ENV - uses: actions/checkout@v4 - name: install dependencies run: | From 4e4dd4d4f65fc6e46dc4b3c838b64b99325acde0 Mon Sep 17 00:00:00 2001 From: dpdani Date: Wed, 15 Oct 2025 18:43:52 +0200 Subject: [PATCH 06/15] fixes --- .github/workflows/fusil.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/fusil.yml b/.github/workflows/fusil.yml index 523f37bd..13087f3f 100644 --- a/.github/workflows/fusil.yml +++ b/.github/workflows/fusil.yml @@ -21,7 +21,7 @@ jobs: export PYENV_BIN="$PYENV_ROOT/bin" export PYENV_SHIMS="$PYENV_ROOT/shims" export PYENV_CACHE="$PYENV_ROOT/cache" - mkdir "$PYENV_CACHE" + mkdir -p "$PYENV_CACHE" echo "PYENV_ROOT=$PYENV_ROOT" >> $GITHUB_ENV echo "PYENV_BIN=$PYENV_BIN" >> $GITHUB_ENV echo "PYENV_SHIMS=$PYENV_SHIMS" >> $GITHUB_ENV From 16e23dedbdd1390876f887cdf5db2f47399e1d3a Mon Sep 17 00:00:00 2001 From: dpdani Date: Wed, 15 Oct 2025 18:46:09 +0200 Subject: [PATCH 07/15] fixes --- .github/workflows/fusil.yml | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/.github/workflows/fusil.yml b/.github/workflows/fusil.yml index 13087f3f..d15eb34b 100644 --- a/.github/workflows/fusil.yml +++ b/.github/workflows/fusil.yml @@ -13,35 +13,35 @@ jobs: - 3.14t steps: + - uses: actions/checkout@v4 - name: Install pyenv run: | - git clone --single-branch --depth=1 --no-tags \ - https://github.com/pyenv/pyenv.git "./.pyenv" export PYENV_ROOT="./.pyenv" export PYENV_BIN="$PYENV_ROOT/bin" export PYENV_SHIMS="$PYENV_ROOT/shims" export PYENV_CACHE="$PYENV_ROOT/cache" + git clone --single-branch --depth=1 --no-tags \ + https://github.com/pyenv/pyenv.git "./.pyenv" mkdir -p "$PYENV_CACHE" - echo "PYENV_ROOT=$PYENV_ROOT" >> $GITHUB_ENV - echo "PYENV_BIN=$PYENV_BIN" >> $GITHUB_ENV - echo "PYENV_SHIMS=$PYENV_SHIMS" >> $GITHUB_ENV - echo "PYENV_CACHE=$PYENV_CACHE" >> $GITHUB_ENV - - name: build python with sanitizers - run: | +# echo "PYENV_ROOT=$PYENV_ROOT" >> $GITHUB_ENV +# echo "PYENV_BIN=$PYENV_BIN" >> $GITHUB_ENV +# echo "PYENV_SHIMS=$PYENV_SHIMS" >> $GITHUB_ENV +# echo "PYENV_CACHE=$PYENV_CACHE" >> $GITHUB_ENV +# - name: build python with sanitizers +# run: | export CONFIGURE_OPTS="--disable-gil --with-pydebug --with-address-sanitizer --without-pymalloc --without-system-libmpdec --config-cache" ./.pyenv/bin/pyenv install --verbose --keep ${{ matrix.python-version }} ./.pyenv/bin/pyenv global ${{ matrix.python-version }} export CUSTOM_PYTHON="$(./.pyenv/bin/pyenv which python)" echo "CUSTOM_PYTHON=$CUSTOM_PYTHON" >> $GITHUB_ENV - - uses: actions/checkout@v4 - - name: install dependencies - run: | +# - name: install dependencies +# run: | "$CUSTOM_PYTHON" -m pip install python-ptrace git+https://github.com/devdanzin/fusil.git ".[dev]" - - name: prepare runs directory - run: | +# - name: prepare runs directory +# run: | mkdir -p -m 777 ./fusil/runs - - name: run fusil - run: | +# - name: run fusil +# run: | export ASAN_OPTIONS=detect_leaks=0 export PYTHON_GIL=0 "$CUSTOM_PYTHON" -m fusil-python-threaded \ From 654f4a917d7e5885fc78a99dd697c836419405d1 Mon Sep 17 00:00:00 2001 From: dpdani Date: Wed, 15 Oct 2025 18:49:50 +0200 Subject: [PATCH 08/15] fixes --- .github/workflows/fusil.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/fusil.yml b/.github/workflows/fusil.yml index d15eb34b..47c21bb2 100644 --- a/.github/workflows/fusil.yml +++ b/.github/workflows/fusil.yml @@ -13,7 +13,7 @@ jobs: - 3.14t steps: - - uses: actions/checkout@v4 +# - uses: actions/checkout@v4 - name: Install pyenv run: | export PYENV_ROOT="./.pyenv" From 72733f97ae4db8994f2d3ccb3389e6f424627d77 Mon Sep 17 00:00:00 2001 From: dpdani Date: Wed, 15 Oct 2025 18:51:03 +0200 Subject: [PATCH 09/15] fixes --- .github/workflows/fusil.yml | 14 +------------- 1 file changed, 1 insertion(+), 13 deletions(-) diff --git a/.github/workflows/fusil.yml b/.github/workflows/fusil.yml index 47c21bb2..9daa04c7 100644 --- a/.github/workflows/fusil.yml +++ b/.github/workflows/fusil.yml @@ -13,7 +13,7 @@ jobs: - 3.14t steps: -# - uses: actions/checkout@v4 + - uses: actions/checkout@v4 - name: Install pyenv run: | export PYENV_ROOT="./.pyenv" @@ -23,25 +23,13 @@ jobs: git clone --single-branch --depth=1 --no-tags \ https://github.com/pyenv/pyenv.git "./.pyenv" mkdir -p "$PYENV_CACHE" -# echo "PYENV_ROOT=$PYENV_ROOT" >> $GITHUB_ENV -# echo "PYENV_BIN=$PYENV_BIN" >> $GITHUB_ENV -# echo "PYENV_SHIMS=$PYENV_SHIMS" >> $GITHUB_ENV -# echo "PYENV_CACHE=$PYENV_CACHE" >> $GITHUB_ENV -# - name: build python with sanitizers -# run: | export CONFIGURE_OPTS="--disable-gil --with-pydebug --with-address-sanitizer --without-pymalloc --without-system-libmpdec --config-cache" ./.pyenv/bin/pyenv install --verbose --keep ${{ matrix.python-version }} ./.pyenv/bin/pyenv global ${{ matrix.python-version }} export CUSTOM_PYTHON="$(./.pyenv/bin/pyenv which python)" echo "CUSTOM_PYTHON=$CUSTOM_PYTHON" >> $GITHUB_ENV -# - name: install dependencies -# run: | "$CUSTOM_PYTHON" -m pip install python-ptrace git+https://github.com/devdanzin/fusil.git ".[dev]" -# - name: prepare runs directory -# run: | mkdir -p -m 777 ./fusil/runs -# - name: run fusil -# run: | export ASAN_OPTIONS=detect_leaks=0 export PYTHON_GIL=0 "$CUSTOM_PYTHON" -m fusil-python-threaded \ From 46246524f1dcd39319b3eddcc99106f5288c78d4 Mon Sep 17 00:00:00 2001 From: dpdani Date: Wed, 15 Oct 2025 18:52:05 +0200 Subject: [PATCH 10/15] fixes --- .github/workflows/fusil.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/fusil.yml b/.github/workflows/fusil.yml index 9daa04c7..488c1519 100644 --- a/.github/workflows/fusil.yml +++ b/.github/workflows/fusil.yml @@ -19,10 +19,10 @@ jobs: export PYENV_ROOT="./.pyenv" export PYENV_BIN="$PYENV_ROOT/bin" export PYENV_SHIMS="$PYENV_ROOT/shims" - export PYENV_CACHE="$PYENV_ROOT/cache" +# export PYENV_CACHE="$PYENV_ROOT/cache" git clone --single-branch --depth=1 --no-tags \ https://github.com/pyenv/pyenv.git "./.pyenv" - mkdir -p "$PYENV_CACHE" +# mkdir -p "$PYENV_CACHE" export CONFIGURE_OPTS="--disable-gil --with-pydebug --with-address-sanitizer --without-pymalloc --without-system-libmpdec --config-cache" ./.pyenv/bin/pyenv install --verbose --keep ${{ matrix.python-version }} ./.pyenv/bin/pyenv global ${{ matrix.python-version }} From c18c918347cf3d09829602c1371e6c605b16f9c4 Mon Sep 17 00:00:00 2001 From: dpdani Date: Wed, 15 Oct 2025 18:53:53 +0200 Subject: [PATCH 11/15] fixes --- .github/workflows/fusil.yml | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/.github/workflows/fusil.yml b/.github/workflows/fusil.yml index 488c1519..80631c1b 100644 --- a/.github/workflows/fusil.yml +++ b/.github/workflows/fusil.yml @@ -19,17 +19,29 @@ jobs: export PYENV_ROOT="./.pyenv" export PYENV_BIN="$PYENV_ROOT/bin" export PYENV_SHIMS="$PYENV_ROOT/shims" -# export PYENV_CACHE="$PYENV_ROOT/cache" + export PYENV_CACHE="$PYENV_ROOT/cache" git clone --single-branch --depth=1 --no-tags \ https://github.com/pyenv/pyenv.git "./.pyenv" -# mkdir -p "$PYENV_CACHE" + mkdir -p "$PYENV_CACHE" + # echo "PYENV_ROOT=$PYENV_ROOT" >> $GITHUB_ENV + # echo "PYENV_BIN=$PYENV_BIN" >> $GITHUB_ENV + # echo "PYENV_SHIMS=$PYENV_SHIMS" >> $GITHUB_ENV + # echo "PYENV_CACHE=$PYENV_CACHE" >> $GITHUB_ENV + # - name: build python with sanitizers + # run: | export CONFIGURE_OPTS="--disable-gil --with-pydebug --with-address-sanitizer --without-pymalloc --without-system-libmpdec --config-cache" ./.pyenv/bin/pyenv install --verbose --keep ${{ matrix.python-version }} ./.pyenv/bin/pyenv global ${{ matrix.python-version }} export CUSTOM_PYTHON="$(./.pyenv/bin/pyenv which python)" echo "CUSTOM_PYTHON=$CUSTOM_PYTHON" >> $GITHUB_ENV + # - name: install dependencies + # run: | "$CUSTOM_PYTHON" -m pip install python-ptrace git+https://github.com/devdanzin/fusil.git ".[dev]" + # - name: prepare runs directory + # run: | mkdir -p -m 777 ./fusil/runs + # - name: run fusil + # run: | export ASAN_OPTIONS=detect_leaks=0 export PYTHON_GIL=0 "$CUSTOM_PYTHON" -m fusil-python-threaded \ From 270468dd0e74922f44574bc81730039931ef713b Mon Sep 17 00:00:00 2001 From: dpdani Date: Wed, 15 Oct 2025 18:54:37 +0200 Subject: [PATCH 12/15] fixes --- .github/workflows/fusil.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/fusil.yml b/.github/workflows/fusil.yml index 80631c1b..66c456bb 100644 --- a/.github/workflows/fusil.yml +++ b/.github/workflows/fusil.yml @@ -19,10 +19,10 @@ jobs: export PYENV_ROOT="./.pyenv" export PYENV_BIN="$PYENV_ROOT/bin" export PYENV_SHIMS="$PYENV_ROOT/shims" - export PYENV_CACHE="$PYENV_ROOT/cache" + # export PYENV_CACHE="$PYENV_ROOT/cache" git clone --single-branch --depth=1 --no-tags \ https://github.com/pyenv/pyenv.git "./.pyenv" - mkdir -p "$PYENV_CACHE" + # mkdir -p "$PYENV_CACHE" # echo "PYENV_ROOT=$PYENV_ROOT" >> $GITHUB_ENV # echo "PYENV_BIN=$PYENV_BIN" >> $GITHUB_ENV # echo "PYENV_SHIMS=$PYENV_SHIMS" >> $GITHUB_ENV From afc3633417836c9c030ccf6d1c21c57f9087f5e3 Mon Sep 17 00:00:00 2001 From: dpdani Date: Wed, 15 Oct 2025 19:04:34 +0200 Subject: [PATCH 13/15] fixes --- .github/workflows/fusil.yml | 37 ++++++++++++++++++++----------------- 1 file changed, 20 insertions(+), 17 deletions(-) diff --git a/.github/workflows/fusil.yml b/.github/workflows/fusil.yml index 66c456bb..94f9d35a 100644 --- a/.github/workflows/fusil.yml +++ b/.github/workflows/fusil.yml @@ -19,32 +19,35 @@ jobs: export PYENV_ROOT="./.pyenv" export PYENV_BIN="$PYENV_ROOT/bin" export PYENV_SHIMS="$PYENV_ROOT/shims" - # export PYENV_CACHE="$PYENV_ROOT/cache" + # export PYENV_CACHE="$PYENV_ROOT/cache" git clone --single-branch --depth=1 --no-tags \ https://github.com/pyenv/pyenv.git "./.pyenv" - # mkdir -p "$PYENV_CACHE" - # echo "PYENV_ROOT=$PYENV_ROOT" >> $GITHUB_ENV - # echo "PYENV_BIN=$PYENV_BIN" >> $GITHUB_ENV - # echo "PYENV_SHIMS=$PYENV_SHIMS" >> $GITHUB_ENV - # echo "PYENV_CACHE=$PYENV_CACHE" >> $GITHUB_ENV - # - name: build python with sanitizers - # run: | + # mkdir -p "$PYENV_CACHE" + echo "PYENV_ROOT=$PYENV_ROOT" >> $GITHUB_ENV + echo "PYENV_BIN=$PYENV_BIN" >> $GITHUB_ENV + echo "PYENV_SHIMS=$PYENV_SHIMS" >> $GITHUB_ENV + # echo "PYENV_CACHE=$PYENV_CACHE" >> $GITHUB_ENV + - name: build python with sanitizers + run: | export CONFIGURE_OPTS="--disable-gil --with-pydebug --with-address-sanitizer --without-pymalloc --without-system-libmpdec --config-cache" ./.pyenv/bin/pyenv install --verbose --keep ${{ matrix.python-version }} ./.pyenv/bin/pyenv global ${{ matrix.python-version }} export CUSTOM_PYTHON="$(./.pyenv/bin/pyenv which python)" echo "CUSTOM_PYTHON=$CUSTOM_PYTHON" >> $GITHUB_ENV - # - name: install dependencies - # run: | - "$CUSTOM_PYTHON" -m pip install python-ptrace git+https://github.com/devdanzin/fusil.git ".[dev]" - # - name: prepare runs directory - # run: | + - name: install dependencies + run: | + "$CUSTOM_PYTHON" -m pip install \ + python-ptrace \ + git+https://github.com/devdanzin/fusil.git \ + ".[dev]" + - name: prepare runs directory + run: | mkdir -p -m 777 ./fusil/runs - # - name: run fusil - # run: | + - name: run fusil + run: | export ASAN_OPTIONS=detect_leaks=0 export PYTHON_GIL=0 - "$CUSTOM_PYTHON" -m fusil-python-threaded \ + bash -c '"$CUSTOM_PYTHON" -m fusil-python-threaded \ --python="$CUSTOM_PYTHON" \ --force-unsafe \ -v \ @@ -54,4 +57,4 @@ jobs: --packages=cereggii \ --no-async \ --no-numpy \ - --no-tstrings + --no-tstrings' From 704b7cc00565efd683b1ec28d91a95a6ccd093de Mon Sep 17 00:00:00 2001 From: dpdani Date: Thu, 16 Oct 2025 22:19:15 +0200 Subject: [PATCH 14/15] add `--modules=cereggii` --- .github/workflows/fusil.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/fusil.yml b/.github/workflows/fusil.yml index 94f9d35a..f28c0508 100644 --- a/.github/workflows/fusil.yml +++ b/.github/workflows/fusil.yml @@ -55,6 +55,7 @@ jobs: --fast \ --test-private \ --packages=cereggii \ + --modules=cereggii \ --no-async \ --no-numpy \ --no-tstrings' From f2b3ced3bdf4132c76da952f9bf33eea0bc4110b Mon Sep 17 00:00:00 2001 From: dpdani Date: Thu, 16 Oct 2025 22:19:43 +0200 Subject: [PATCH 15/15] modify PATH for cmake --- .github/workflows/fusil.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/fusil.yml b/.github/workflows/fusil.yml index f28c0508..e1519d23 100644 --- a/.github/workflows/fusil.yml +++ b/.github/workflows/fusil.yml @@ -36,6 +36,9 @@ jobs: echo "CUSTOM_PYTHON=$CUSTOM_PYTHON" >> $GITHUB_ENV - name: install dependencies run: | + # CMake must be able to find the pyenv python installation + # before the system's python. + export PATH="$(dirname $CUSTOM_PYTHON)":$PATH "$CUSTOM_PYTHON" -m pip install \ python-ptrace \ git+https://github.com/devdanzin/fusil.git \