Commit Graph

288 Commits

Author SHA1 Message Date
Gyeongjae Choi 829023c9af
MAINT Remove outdated commands in Makefile (#2576) 2022-05-19 15:09:24 +09:00
Hood Chatham 7fc1c2da8e
FIX Fix feature detection when `obj.constructor` is undefined (#2520)
Currently the following code fails:
```py
from js import eval
eval("Object.create(null)")
```
with:
```py
Traceback (most recent call last):
  File "<console>", line 1, in <module>
JsException: TypeError: Cannot read properties of undefined (reading 'name')
```
This fixes it.
2022-05-18 22:19:37 -07:00
Hood Chatham ccf97a9bc7
Remove npm-link step (#2480) 2022-05-04 14:06:55 -06:00
Mario Gersbach 0311cd1c20
ENH Add SHA-256 hash to packages.json entries (#2455) 2022-05-02 22:09:14 -06:00
Hood Chatham e5a46e520a
Fix npm package (#2394)
Various fixes to improve the npm package.

Switch to publishing the dist folder, fix indexURL for node, 
fix node commonJS import and ES6 import only publish core 
Pyodide interpreter to npm, download and cache other wheels 
on first use.
2022-04-17 21:10:03 -07:00
Hood Chatham 993940bbb9
Allow multiple loading of Pyodide instances (#2391) 2022-04-14 18:04:01 -07:00
Hood Chatham c4ebd374f7
Fix type declarations (#2396)
Co-authored-by: Gyeongjae Choi <def6488@gmail.com>
2022-04-14 10:55:42 +02:00
Hood Chatham 50af355e8c
Rename 'build' directory to 'dist' (#2387)
dist is both more accurate (the 'build' directory is normally where you do the build,
and normally consists of intermediate build artifacts no one cares about). dist also
occurs less frequently in the code base: after this change \bbuild\b has 466 matches,
whereas \bdist\b has 101 matches. build has 1072 matches whereas dist has 362.
2022-04-11 16:01:40 -07:00
Hood Chatham dfbf28856e
New keyboard interrupt patch from upstream (#2332) 2022-04-08 08:35:58 -07:00
Hood Chatham 0f2ce88edb
Rework core tests (#2265)
The goal of this commit is to add the capability of skipping specific tests by
glob pattern. Many core test sets have just one test that uses subprocess or
threads. Others have a few tests that are failing due to upstream problems in
emscripten. I went through and switched to skipping specific tests in as many
cases as I could. In modules where most or all tests use threading or
subprocess, I gave up and put a comment saying something like 35/50 tests fork
and I didn't want to bother to salvage the remaining ones.

In order to accommodate using patterns to skip specific tests (and also extra
comments) I switched the format of python_tests to a yaml file. This gives us
significantly more flexibility in the structure of the file and allows us to use
ruamel.yaml to update it. We gain a lot flexibility while reducing the length of
make_test_lists.py modestly from 108 to 78 loc.

In the future, hopefully we should be able to make fixes by deleting one skip
pattern and looking into why that particular test fails.
2022-03-22 13:41:43 -07:00
Hood Chatham a356fc4563
Fix requirejs compatibility (#2283) 2022-03-20 10:04:47 -07:00
Hood Chatham 0e1e2ac01c
Python 3.10 (#2225) 2022-03-17 15:48:56 -07:00
Hood Chatham 9feb50bb48
Remove numpy patches work around for chrome 89 bug (#2171) 2022-03-04 16:09:51 -08:00
Gyeongjae Choi fd8433a013
MAINT Refactor benchmark script (#2227)
One can select which benchmark (pystone, numpy, matplotlib, or all) to be run through command-line arguments.
We can divide each benchmark to separate CI jobs in the future if needed.
Moved pystone benchmark to benchmark directory, preventing it from being included in Pyodide release.
2022-03-02 10:11:36 -08:00
LeoPsidom 8798e1f2fd
Use ESM import in module type webworker (#2220)
Co-authored-by: root <root@ip-172-31-32-133.us-east-2.compute.internal>
2022-03-02 00:31:41 -08:00
Henry Schreiner 41b6db1bab
style: improve pre-commit (#2177) 2022-02-19 09:06:25 +01:00
Hood Chatham 30ea13fbbf
Support for C++ exceptions in packages (#2178) 2022-02-19 08:31:19 +01:00
Hood Chatham 391c43e662
MAINT Separate some things out of Module (#2144) 2022-01-30 11:08:44 -08:00
Hood Chatham 597857fb23
MAINT Reorder make lint to typecheck first before running formatters (#2139) 2022-01-29 20:00:52 -08:00
Hood Chatham 0e77ba439b
MAINT refactor js2python to allow future options (#2138) 2022-01-29 19:30:58 -08:00
Hood Chatham ad114b72a2
Fix typescript documentation (#2130) 2022-01-27 00:03:50 -08:00
Hood Chatham 9b5b6396ac
Use typescript (split from #2130, doesn't fix docs) (#2133) 2022-01-25 17:43:39 +01:00
Gyeongjae Choi 581e8fdde8
MAINT Do not print all archived files when building (#2134) 2022-01-25 21:58:43 +09:00
Hood Chatham 56cffbc647
Use error-stack-parser to make better stack traces (#2123) 2022-01-23 20:11:10 -08:00
Hood Chatham 8323987b39
Use wheels instead of file_packager (#2027) 2022-01-23 17:47:04 -08:00
Hood Chatham 1f4f3e2b85
MAINT Apply prettier to everything by default (#2095) 2022-01-10 13:47:59 -08:00
Hood Chatham 6065bcd532
MAINT Clean up environment variables and pywasmcross (#2053) 2021-12-20 11:26:27 -08:00
Hood Chatham af0daa2d9b
MAINT Load main pyodide package as a tar file (#2023) 2021-12-14 18:12:49 -08:00
Hood Chatham 19261f394c
Remove function pointer cast emulation (#2019) 2021-12-09 10:31:21 -08:00
Grimmer Kang da49fe57de
MAINT use npm ci to make sure the consistent dependencies installed (#1999) 2021-11-27 20:43:31 +01:00
Roman Yurchak 7f307afe29
Better test discovery (#1981)
* Better test discovery

* Remove make test and update docs

* More fixes

* Address review comment

* Documentation fixes
2021-11-21 18:26:33 +01:00
Hood Chatham 8870f67fef
MAINT remove `--memory-init-file 0` and consolidate link flags (#1974) 2021-11-18 23:37:47 +01:00
Jan Max Meyer ebb75cd334
ENH Makefile targets for cpython partial and full clean (#1969) 2021-11-16 20:22:50 +01:00
Hood Chatham 9621a9b078
MAINT Bring lib files together under src/py/lib directory (#1937) 2021-11-09 14:42:24 -08:00
Hood Chatham ddd83c4430
Fix makefile rule to produce pyproxy.gen.js (#1901) 2021-10-25 00:22:08 +02:00
Owen Ou 6f65795cba
Fix download path of f2c in buildf2c (#1866) 2021-09-29 11:13:17 -07:00
Hood Chatham 49b33b5442
Add package config for pyodide package (#1848) 2021-09-21 08:46:44 +02:00
Roman Yurchak ab53f6b06c
ENH Change to minimal build by default (#1804) 2021-09-02 22:19:23 +02:00
Hood Chatham 3eb82fd834
Improved micropip dependency resolution (#1756) 2021-07-29 18:25:18 +02:00
Hood Chatham b322d6727a
Update prettier precommit and ci rules (#1747) 2021-07-25 08:02:33 -07:00
Nicholas Bollweg f13f3340e0
Enable all emscripten file systems: IDBFS, NODEFS, PROXYFS and WORKERFS (#1596) 2021-07-16 14:33:25 -07:00
Nicholas Bollweg 60acd0089f
Expose Module.FS (#1692) 2021-07-10 14:57:01 -07:00
Hood Chatham a671943bad
Better bootstrap (#1681) 2021-07-08 14:16:05 +02:00
Paul m. p. P d4a705bde2
Use PYMAJOR/PYMINOR according to Python devguide (#1570)
Co-authored-by: Roman Yurchak <rth.yurchak@gmail.com>
2021-07-06 13:28:39 +02:00
Madhur Tandon 738651ea10
Revive html5 <canvas> based renderer for matplotlib (#1579) 2021-06-27 08:36:14 -07:00
Hood Chatham 450a2d21e3
Consolidate apply-lint into clang-format-precommit and fix test_asyncio test after linting html files (#1667) 2021-06-25 18:59:29 -07:00
Hood Chatham 043c9cf360
Use prettier to format html files (#1666) 2021-06-25 15:16:02 -07:00
Hood Chatham b4f4bcffdc
Update to Python 3.9.5 (#1637)
Co-authored-by: Roman Yurchak <rth.yurchak@gmail.com>
2021-06-19 15:49:25 -07:00
Hood Chatham c05c1cac78
Eliminate pyproxy leaks (#1616) 2021-06-07 09:23:47 +02:00
Hood Chatham 2e04752272
MAINT Improvements to node and file_packager invocations (#1600) 2021-05-29 10:31:56 -07:00