Commit Graph

1846 Commits

Author SHA1 Message Date
Hood Chatham 245e8e7a5c
Don't expose loadPyodide as global variable from ES6 module (#2249) 2022-03-15 18:59:35 -07:00
Gyeongjae Choi 5bd042f6f7
Refactor matplotlib tests (#2271)
* Fix dangling webdriver

* Embed humor sans font

* Refactor matplotlib testing codes

* Trigger CI

* Trigger CI

* Catch error when import from js fails

* Update changelog

* Apply suggestions from the review
2022-03-16 09:39:34 +09:00
Hood Chatham 8c5627fe4c
MAINT Fix emscripten patch paths (#2276)
Having to add `emsdk/upstream/emscripten` to all the emscripten patches is a
nuisance. If at some point we want to patch a file in a different folder, we can
separate the patches into multiple folders. In particular this should make it
easy to migrate patches using `git am`, `git rebase`, and `git format-patch`.
2022-03-15 13:52:21 -07:00
Henry Schreiner 18e664afb1
chore: isort avoid local build confusion, bump pre-commit (#2274) 2022-03-14 14:08:50 -07:00
Hood Chatham f7b0f8c5cb
No replay (#2256)
Our package build process currently has a significant flaw: we first run setup.py, recording all compilation commands, then we rewrite these compilation commands to invoke emcc and replay them, and then we pray that the cross compiled executables ended up in the right place to go into the wheel. This is not a good strategy because the build script is allowed to implement arbitrary logic, and if it moves, renames, etc any of the output files then we lose track of them. This has repeatedly caused difficulty for us.

However, we also make no particularly significant use of the two pass approach. We can just do the simpler thing: capture the compiler commands as they occur, modify them as needed, and then run the fixed command.

I also added a patch to fix the numpy feature detection for wasm so that we don't have to include _npyconfig.h and config.h, numpy can generate them in the way it would for a native build. I opened a numpy PR that would fix the detection for us upstream:
numpy/numpy#21154

This clears the way for us to switch to using pypa/build (as @henryiii has suggested) by removing our dependence on specific setuptools behavior.

This is on top of #2238.
2022-03-13 11:39:06 -07:00
Hood Chatham 6defff318f Update main branch changelog to include v0.19.1 2022-03-13 08:13:59 -07:00
Hood Chatham 0a9153e7c6
Add cryptography, openssl, and _ssl packages (#2263) 2022-03-11 22:05:36 -08:00
Henry Schreiner 37c8a70479
fix(build): lock around logging and archiving portions (#2262)
* fix: lock around logging and archiving portions

Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>

* refactor: fewer locks

Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
2022-03-11 21:13:29 +09:00
Jo Bovy 3002751887
Update astropy to 5.0.2 (#2268) 2022-03-10 21:14:49 -08:00
Hood Chatham 74e6809da1
Update lxml (#2239) 2022-03-09 21:36:01 -08:00
Hood Chatham c01ab547f0
Better package cross compilation (#2238)
Co-authored-by: Gyeongjae Choi <def6488@gmail.com>
2022-03-09 20:34:25 -08:00
Hood Chatham 17fdd6cf64
Fix typo in docs [skip ci] (#2264) 2022-03-09 20:33:25 -08:00
Gyeongjae Choi 114c24d018
Fix word splitting on run_docker script (#2260) 2022-03-08 09:29:10 -08:00
Henry Schreiner 4f8b0a0344
chore: more pre-commit checking (#2257) 2022-03-07 21:51:20 -08:00
Hood Chatham dd70b565f5
Remove numpy decorators patch (#2259) 2022-03-07 21:44:35 -08:00
Henry Schreiner 138c7a7a7c
chore: matplotlib 3.5.1, yt 4 (#2234)
Co-authored-by: Hood Chatham <roberthoodchatham@gmail.com>
2022-03-06 21:14:24 -08:00
Hood Chatham fff0f0e9b0
Add `default_converter` argument to `to_js` and `toJs` (#2208) 2022-03-05 12:32:04 -08:00
Hood Chatham 36d0e15300
MAINT Improve circleci cache rules (#2253) 2022-03-04 23:50:44 -08:00
Henry Schreiner 7763e0a8f1
fix: better error messages, fewer tracebacks (#2242)
This reduces the text output when an error is hit, removing the tracebacks for known errors. Tracebacks are for unknown/unexpected errors - if you expect an error, it's better to print out an actual error message. I've also made the patch applying a bit more verbose in case it helps, as it sometimes does.

Also improvements to `BashRunner`: it no longer hangs when an error is raised and it is now a context manager
2022-03-04 23:44:54 -08:00
Hood Chatham d6071d267f
Upload build logs zip as circleci artifact (#2254) 2022-03-04 16:10:06 -08:00
Hood Chatham 9feb50bb48
Remove numpy patches work around for chrome 89 bug (#2171) 2022-03-04 16:09:51 -08:00
Hood Chatham 5724bbc05c
MAINT use variables for Python version rather than hardcoding it (#2241)
* As much as possible, use variable for Python version rather than hardcoding it

This should make Python updates easier.
2022-03-03 19:13:58 -08:00
Henry Schreiner a725c6ce0f
chore: use GHA for linting (#2245)
* chore: use GHA for linting

Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>

* ci: always test even if lint fails
2022-03-04 11:12:12 +09:00
Hood Chatham 913d706090
xfail draw_math_text (#2243) 2022-03-02 14:29:02 -08:00
Hood Chatham 0687b1a8c7
Fix bug in loadDynlib (#2235) 2022-03-02 10:12:07 -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
Hood Chatham 5b22f5ed50
Add cache for lint CI to reduce timeouts (#2240) 2022-03-02 07:44:19 -08:00
Hood Chatham e0393b2c6b
Handle strings and other weird things that are thrown as errors (#2236)
Unfortunately it is legal Javascript to throw weird stuff. Also unfortunately,
emscripten likes to throw weird stuff. Our `fatal_error` handling routine used
to incorrectly assume that things thrown were errors. This fixes it.
2022-03-02 07:06:44 -08:00
Jo Bovy 63161b56f5
Fix Astropy: avoid failing top level imports 2022-03-02 07:05:49 -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
Liumeo e3760e8110
upgrade to jquery.terminal 2.32.0 (#2231) 2022-02-28 21:05:11 -08:00
Henry Schreiner e065454c35
chore: some package updates (#2230) 2022-02-28 20:55:28 -08:00
Hood Chatham bb36171334
Remove unneeded code from pywasmcross (#2224)
This was added by mistake in #2059
2022-02-28 20:31:29 +09:00
Henry Schreiner 8d00451142
chore: enable the rest of flake8 & bugbear (#2216) 2022-02-27 12:39:53 -05:00
gabrielfougeron 57a41af118
DOC Corrected sha256 doc (#2213) 2022-02-25 21:45:11 +09:00
Madhur Tandon 869b1bb0c3
benchmark html5 canvas renderer (#2151)
* benchmark html5 canvas renderer

* adhere to lint

* rectify condition

* increase timeout

* do suggested changes

* adhere to lint

* use correct backend for benchmarks

* reintroduce tests + fix futures callback

* adhere to lint

* increase timeout for tests

* use selenium_standalone for tests

* increase timeout for check_comparison

* add result() to Future

* add debugging print statement

* adhere to lint

* use draw() instead of draw_idle()

* add new reference image for math text

* return NaN for non-native

* replace math text image for chrome as well

* increase timeout

* selenium standalone for benchmarks

* only matplotlib benchmarks

* re-enable benchmarks for numpy

* adhere to lint

* increase timeout
2022-02-24 18:51:24 +09:00
Henry Schreiner edadd26439
chore: update pre-commit hooks (#2209) 2022-02-23 23:58:11 -05:00
Hood Chatham 08827661e1
Actually run wrapt tests (#2207) 2022-02-23 21:57:48 -05:00
Henry Schreiner 8385df36a4
tests: enabling mypy on untyped defs (#2204) 2022-02-23 17:10:53 -05:00
Henry Schreiner 66856a7427
MAINT isort (#2200) 2022-02-21 23:27:03 +01:00
Henry Schreiner ed22c06e07
chore: pyupgrade 3.9+ (#2195) 2022-02-20 17:13:37 -05:00
Henry Schreiner 1a8514d4a8
Add boost-histogram (#2174)
Co-authored-by: Hood Chatham <roberthoodchatham@gmail.com>
Co-authored-by: Roman Yurchak <rth.yurchak@gmail.com>
2022-02-19 10:18:46 +01:00
Roman Yurchak c11fabc479
Fix pre-commit CI (#2191) 2022-02-19 09:33:49 +01: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
Gyeongjae Choi 1041e8ebee
Pin markupsafe version (#2183) 2022-02-18 07:55:33 -05:00
Gyeongjae Choi fcc8c4889f
Strip whitespace from micropip.list() output (#2181) 2022-02-16 09:06:43 -05:00
Gyeongjae Choi 55fbd32ef3
ENH Show informative error message when fetching wheel fails (#2175)
Co-authored-by: Roman Yurchak <rth.yurchak@gmail.com>
2022-02-15 12:20:24 +01:00
Hood Chatham 32f9d791be
Add default_converter argument to to_py (#2170) 2022-02-14 15:15:28 -05:00
Henry Schreiner d6e9ddf1f5
fix(mkpkg): arguments were incorrect (#2176)
Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
2022-02-14 15:14:06 -05:00