WASM: use int64 in comb_jit for consistent overflow guards on wasm32 - #942
Open
kp992 wants to merge 9 commits into
Open
WASM: use int64 in comb_jit for consistent overflow guards on wasm32#942kp992 wants to merge 9 commits into
kp992 wants to merge 9 commits into
Conversation
Bare pytest from the repo root (as run by ci_np2.yml) died collecting ci/wasm/test_jupyterlite.py because playwright is not installed in the test environments. testpaths keeps bare pytest collecting exactly the package tests as before; ci/wasm stays opt-in via an explicit path. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
The wasm job exercises the released conda-forge package (quantecon is not on emscripten-forge-4x), so it cannot gate PR source and needs its own red/green iteration; it will be developed in a follow-up PR under issue QuantEcon#933 with the review fixes applied (drop --with-deps, add pytest-timeout, needs: native, no _site cache). The native gate stays on every PR and gets timeout-minutes so a hang cannot burn the 6-hour job limit again (the last run's Playwright browser install hung for the full limit). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Each cell is wrapped in try/finally printing a unique token and _run waits for that token in the output area. This removes the fragile kernel-status selector, the stale-idle race (the indicator may not have flipped to busy yet), and the traceback-prone substring assertions -- tests now assert on unique uppercase sentinels. insert_text replaces keyboard.type so multi-line cells are not mangled by the console's run-on-Enter binding and auto-indent. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Nothing ships smoke_test.py into the JupyterLite site yet, so pytest in the kernel env and the in-kernel run described by the docstring are deferred to the QuantEcon#933 wiring. The IS_EMSCRIPTEN/xfail branches stay: inert natively, they document the expected Emscripten behaviour. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Member
|
@kp992 Thanks, but I remember the ( |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes #929. Part of #925 (Phase 1).
comb_jitwas typedintp(intp, intp), making the overflow guard trip at2**31-1on wasm32 instead of2**63-1. This causedsimplex_gridto reject grids that fit comfortably in memory, and could silently wrap insimplex_indexfor near-boundary inputs.comb_jitsignature toint64(int64, int64)and update theINT64_MAXguard throughoutnum_compositions_jitdocstringTestCombJitto test againstnp.int64limits (platform-agnostic)test_gridtools.pytest_simplex_grid_comb_int64to the WASM smoke suiteAssumes #938 as baseline.