These builds are on a knife's edge currently with respect to disk space.
I think it is worth logging `df` output so we can keep an eye on it.
Signed-off-by: Tom Jakubowski <tom@prospective.dev>
This modifies the CI to upload artifacts on every commit to master so
that we can store pull them nightly to release elsewhere.
Signed-off-by: Timothy Bess <timbessmail@gmail.com>
We were already using this plugin for the pyodide tests, now also use it
when running pytests in the monorepo and when testing the sdist in CI.
Signed-off-by: Tom Jakubowski <tom@prospective.dev>
Also updates the cargo patch-job so it uses the .crate files produced
earlier in the workflow instead of using git sources with metadata. This
is closer to what happens when building and installing from a release
sdist, which pulls .crate files from crates.io.
Signed-off-by: Tom Jakubowski <tom@prospective.dev>
caveat: a ~/.cargo/config.toml file is created when testing the sdist
which patches the perspective-python build so that it uses
perspective-server and perspective-client from the local git checkout.
This is so we can test unreleased changes to those crates together,
without including the client/server source in the sdist.
Builders who download sdist artifacts produced in CI between releases
may find they don't build or work correctly, since those sdists will
contain dependencies on release versions of perspective-server and
perspective-client published to crates.io.
Signed-off-by: Tom Jakubowski <tom@prospective.dev>
macos-14 is aarch64 with Apple silicon. This lets us test the aarch64
wheel in CI
Will try a follow up to see if the builds are any faster on macos-14.
Will want to double check we still have a good value for
`CMAKE_OSX_DEPLOYMENT_TARGET`/`MACOSX_DEPLOYMENT_TARGET` after upgrading
the builders
Signed-off-by: Tom Jakubowski <tom@prospective.dev>
new crack at build matrix
verified this one with a model of the behavior in github's docs. would
be cool if I knew how to get github to print the job configurations
before the job actually runs
Did this work a bit out of order so squashed it all into one commit.
Conda related:
- switch to BUNDLED arrow dependency source
- this lets us remove our direct deps on lz4, flatbuffers, zstd
- add abi3 feature to crate + enable unless CONDA_BUILD is set
- when CONDA_BUILD is set, pass PYTHON to maturin build
--interpeter flag
- remove vestigal use of CMAKE_ARGS from .txt.in files
- parse CMAKE_ARGS from environment (unrelated to above item)
- this is so we pick up the cross-compiling toolchain (i.e.
CMAKE_LIBTOOL) in conda
Not conda related:
- switch away from global include_directories() calls
- these add include paths to every target, including our dependencies
- instead, export lists of INCLUDE_DIRS from every dependency,
and then assemble them into a list to be passed to
`target_include_directories` on the psp and perspective_esm targets
- decouples order of psp_build_dep() calls and order of include
directories
- switch Boost from a system dependency to psp_build_dep
- eventually, to support Conda, we'll add a "use system dependency"
feature to psp_build_dep for all dependencies
- caveat: the boost download is a bit slow
Signed-off-by: Tom Jakubowski <tom@prospective.dev>
Integration/smoke tests for the Pyodide wheel, which run for the
perspective-pyodide virtual package and in the Pyodide CI actions.
Some changes which support installing the wheels in a pytest-pyodide
environment:
- Defer some third-party imports to "run time" by moving them deeper
than module scope
- Add try/except guards to widget re-exports so that wheel can be used
without Jupyter being installed
- Move Jupyter deps in pyproject.toml to an optional-dependencies group
Signed-off-by: Tom Jakubowski <tom@prospective.dev>
Signed-off-by: Davis Silverman <davis@thedav.is>
Signed-off-by: Andrew Stein <steinlink@gmail.com>
# Conflicts:
# Cargo.lock
Fixed Table(View) constructor
WIP
Test and some fixes to be squashed
wip
Signed-off-by: Andrew Stein <steinlink@gmail.com>
# Conflicts:
# rust/perspective-client/src/rust/client.rs