Commit Graph

73 Commits

Author SHA1 Message Date
Gyeongjae Choi 9d874d588b
MAINT Update pre-commit config (#2890) 2022-07-19 16:43:12 +01:00
Roman Yurchak 7f19462759
Don't rerun tests if collection fails (#2875) 2022-07-16 17:45:36 +09:00
Jo Bovy 8642b09449
Add astropy tests (#2865)
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Gyeongjae Choi <def6488@gmail.com>
2022-07-13 11:19:29 +09:00
Hood Chatham cdb457bf5b
Add xbuildenv to github releases (#2850)
This adds a step that generates an xbuildenv to the circleci CI and
deploys it to github releases when we make a release. I also updated
the url in download_xbuildenv to point to github releases.
2022-07-10 10:58:39 +02:00
Gyeongjae Choi 7d7b7e899d
TST Make `pyodide-test-runner` installable (#2742) 2022-07-04 09:07:01 +02:00
Gyeongjae Choi 5935e5c7f9
Add sqlite3 binary to the docker image (#2807) 2022-06-30 13:22:03 +09:00
Hood Chatham 5fde2ae0a8
Add continuous deployment to npm (#2776) 2022-06-23 22:51:43 -07:00
Hood Chatham be331255f7
Pass -Zlink-native-libraries=no when building Rust (#2753) 2022-06-21 08:21:33 +02:00
Hood Chatham 734e91c4f5
MAINT Fix typo in bump-version (#2745) 2022-06-20 21:35:40 +02:00
Hood Chatham b427d36e58
Use nightly rust and simplify rust_emcc_wrapper (#2724) 2022-06-15 20:54:56 -07:00
Hood Chatham 6868d2e93c
Use -sSIDE_MODULE=2 when compiling rust (#2713) 2022-06-15 07:27:34 -07:00
Hood Chatham 9c305efc46
Fix cryptography build after emscripten update (#2683) 2022-06-14 14:54:07 +02:00
Hood Chatham dbbbbb67b2
Cryptography v36.0.2 w/ Rust (#2378) 2022-06-09 10:57:34 -07:00
Hood Chatham 6a0d66a5d7
MAINT Update gitignore for tools/symlinks (#2657) 2022-06-01 13:17:13 -07:00
Gyeongjae Choi a11f72e145
Simplify the version bump process (#2587) 2022-05-30 10:26:40 +09:00
Gyeongjae Choi b20b43bd66
MAINT Split conftest.py into modules (#2418) 2022-05-08 16:52:08 +09:00
Michael Droettboom 5700b867eb
Dependency checks for cmake (req. by emsdk) and libtool (req. by libffi) (#2423)
Earlier errors about these should make building smoother for new contributors.
2022-04-28 08:27:56 -07:00
Gyeongjae Choi 60d530801e
ENH Remove hard coded paths in `pyodide_build` (#2351)
We are pushing pyodide_build to PyPI as a Python package, but for now, 
installing pyodide_build from PyPI (i.e. pip install pyodide_build`) is almost 
useless because:

    there are bunch of hard-coded paths (e.g. Path(__file__).parents[2]),
    its dependencies are not specified in setup.cfg.

This PR is for mitigating this situation by removing hard-coded paths and
adding tests, and is also a preparation for our new CLI 
(https://github.com/pyodide/pyodide/issues/1977).
2022-04-09 13:41:10 -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
Henry Schreiner 4f8b0a0344
chore: more pre-commit checking (#2257) 2022-03-07 21:51:20 -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 ed22c06e07
chore: pyupgrade 3.9+ (#2195) 2022-02-20 17:13:37 -05:00
Hood Chatham 8323987b39
Use wheels instead of file_packager (#2027) 2022-01-23 17:47:04 -08:00
Gyeongjae Choi a255d54f3f
Fix typo in micropip.install() error [skip ci] (#2004) 2021-11-27 10:57:36 +01:00
Owen Ou 6f65795cba
Fix download path of f2c in buildf2c (#1866) 2021-09-29 11:13:17 -07:00
Hood Chatham b322d6727a
Update prettier precommit and ci rules (#1747) 2021-07-25 08:02:33 -07:00
Hood Chatham f0bd568a31
Set up pytest node tests (#1717) 2021-07-20 10:48:27 +02: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
Syrus Akbary 6168c4b674
Add md5sum to dependency-check script (#1622) 2021-06-04 09:36:46 +02:00
Hood Chatham 2e04752272
MAINT Improvements to node and file_packager invocations (#1600) 2021-05-29 10:31:56 -07:00
Hood Chatham 97d7dfcdf9
Some basic types (#1592) 2021-05-20 09:05:05 -07:00
Hood Chatham ab1b6c8d24
MAINT Use prettier to format javascript (#1554)
Co-authored-by: Roman Yurchak <rth.yurchak@gmail.com>
2021-05-01 10:17:32 -07:00
Hood Chatham 6bc94372aa
Shorten pytest summary table test names (from #1340) (#1346) 2021-03-22 09:16:16 +01:00
Dexter Chua e4c4702e6a
TST Don't print python traceback in pytest_wrapper (#1103) 2021-01-12 23:18:29 +01:00
Dexter Chua 4ae245855d
Install uglifyjs and lessc via npm (#1002)
The installation is very fast, and this avoids having two copies of node
around. In particular, this avoids the need to monkey-patch uglify-js to
use the system node.

This can be further streamlined when #792 is merged
2021-01-01 23:43:48 +08:00
Dexter Chua 27e2800120
Use upstream file packager instead of fork (#991) 2021-01-01 08:48:28 +01:00
Hood Chatham c9c4499a0d
Maint: precommit clang-format (#942)
This resolves #935. I also changed the lint make recipe to use find which is more resilient to changes in directory structure and doesn't output those annoying No such file or directory messages to stdout.

I changed the name of the apply-lints recipe to apply-lint for consistency, and I updated it to only apply lints to files with staged changes.
2020-12-31 09:57:41 +08:00
Dexter Chua 0c91434bb6
Rerun failed tests sequentially (#859) 2020-12-14 18:05:15 +01:00
Dexter Chua 0defcb3825
BLD Don't compile host python (#830) 2020-12-08 00:19:16 +01:00
Dexter Chua 0e36e71053
Remove external dependencies from file_packager.py (#809) 2020-12-02 14:42:03 +01:00
Roman Yurchak f7adad7eb3
Upgrade to emscripten 1.38.34 with fastcomp (#480)
Co-authored-by: Dexter Chua <dec41@srcf.net>
2020-11-30 18:54:35 +01:00
Roman Yurchak fc5495ffdb
Update to Python 3.8.2 (#712)
* Updating to CPython 3.8

* More fixes

* Skip python headers check in tools/dependency-check.sh

* Fix checksum

* Fix packages

* Fix syntax error

* Fix benchmark path

* Update CPython tests

* More test fixes

* Fix PyStone

* More Cpython test fixes

* Update docs

* Fix issue in conftest

* Add documentation

* Upload updated Docker image
2020-07-07 16:21:33 +02:00
Roman Yurchak e7dd4588ab
MNT Add pre-commit config (#698) 2020-06-27 14:57:48 +02:00
William Lachance c3ac3d3357
Document and check for a few more things when building pyodide (#593)
* cmake
* pkg-config
* fix check for pyyaml
2020-01-02 17:42:43 -05:00
Dorian Pula a1663e77e0 Add dependency check for the builds. (#568)
* Add dependency check for the builds.

* Use Python 3 specifically.

* Use the right target.
2019-11-19 16:51:45 -05:00
William Lachance cf6b8e11e5 Update README for building on Mac 2019-10-21 12:27:18 -04:00
Michael Droettboom 7ecb6b7340 Ignore the gfortran link 2019-01-23 19:58:45 -05:00
Madhur Tandon a704d5a04b Implement the ABI number functionality.
Modified ``Makefile`` and ``packages/Makefile`` to get ``PYODIDE_PACKAGE_ABI`` from ``Makefile.envs``
Made ``checkABI`` as a public API function.
Modified ``file_packager.py`` to check for the compatible ABI number.
Defined ABI number with which pyodide is built in Makefile.envs
Accepted ABI number in ``file_packager.py`` as an argument.
Modified ``buildpkg.py`` and ``buildall.py`` to account for the new argument.
Added the corresponding ``test_different_ABI`` test.
2019-01-23 00:07:39 +05:30