Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update portability tests to use Meson #37077

Open
wants to merge 256 commits into
base: develop
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
256 commits
Select commit Hold shift + click to select a range
1a9bff1
Downgrade checkout version
tobiasdiez Jan 17, 2024
0e91351
Update Python version check and interpreter setup
tobiasdiez Jan 17, 2024
2737e86
Update Linux distribution versions in CI workflow
tobiasdiez Jan 17, 2024
64538ea
Fix Python version check
tobiasdiez Jan 17, 2024
8bdd2fc
Manually detect system
tobiasdiez Jan 17, 2024
d5456d3
Install python manually
tobiasdiez Jan 17, 2024
60a23cb
Add jinja2 dependency for Linux CI workflow
tobiasdiez Jan 17, 2024
42776ac
Fix python version check
tobiasdiez Jan 17, 2024
ee62f9f
Remove config option for builddir
tobiasdiez Jan 17, 2024
1979b9b
Fix system package installation command to ignore missing packages
tobiasdiez Jan 17, 2024
9e34f7a
Use build-isolation to get build deps
tobiasdiez Jan 17, 2024
0b711d2
Add numpy dependency to pyproject.toml
tobiasdiez Jan 17, 2024
179d478
Fix Python installation command in ci-linux.yml
tobiasdiez Jan 17, 2024
70214e3
Update dependencies in pyproject.toml
tobiasdiez Jan 17, 2024
e91d0ed
Update pip install command to use pip3
tobiasdiez Jan 17, 2024
b0d384e
Fix installing dependencies
tobiasdiez Jan 17, 2024
435bed2
Fix cython dependency
tobiasdiez Jan 17, 2024
4412d16
Install pari manually for cypari2
tobiasdiez Jan 17, 2024
56215da
Install wget
tobiasdiez Jan 17, 2024
d4d6bff
Install latest version of cypari2 directly from github
tobiasdiez Jan 17, 2024
10b2947
Install git
tobiasdiez Jan 17, 2024
959496b
Add wheel installation for cypari2
tobiasdiez Jan 17, 2024
108476e
Fix name of linuxmintd/mint docker image
tobiasdiez Jan 17, 2024
898cb72
Add fallback to openblas
tobiasdiez Jan 17, 2024
feff530
Add non-interactive option for opensuse:install command
tobiasdiez Jan 17, 2024
3c8262d
Add fallback to fflas library to include fflas-ffpack
tobiasdiez Jan 17, 2024
ef9472c
Fix linuxmintd image name
tobiasdiez Jan 17, 2024
04c8769
Improve handling of missing dependencies in install command for ubunt…
tobiasdiez Jan 17, 2024
6cbf354
Proper fallback for fflas
tobiasdiez Jan 17, 2024
1cb4c07
Fix meson build file
tobiasdiez Jan 17, 2024
bf8c255
Fix library name in meson.build
tobiasdiez Jan 17, 2024
0b56451
Use pkg-config to find fflas
tobiasdiez Jan 17, 2024
ad1d7ae
Try to fix compile errors by compiling flint first
tobiasdiez Jan 17, 2024
b37ac14
Update zypper install command options
tobiasdiez Jan 17, 2024
84b1d9a
Install generic python
tobiasdiez Jan 17, 2024
49c43cf
Use newest version of pip
tobiasdiez Jan 17, 2024
2ad577f
Use break-system-packages to install on debian
tobiasdiez Jan 17, 2024
0ec90bb
Fix zypper command in sage-print-system-package-command
tobiasdiez Jan 17, 2024
8ff34dd
Fix installing python in archlinux
tobiasdiez Jan 17, 2024
19e2df8
Fallback to pip without break-system-package, for older pips
tobiasdiez Jan 17, 2024
01761c8
Use PIP_BREAK_SYSTEM_PACKAGES=1 instead of pip flag
tobiasdiez Jan 17, 2024
78fd822
Fix archlinux install command
tobiasdiez Jan 17, 2024
ac4c130
Another try to fix zypper
tobiasdiez Jan 17, 2024
f38590f
Remove redundant code in sage-print-system-package-command
tobiasdiez Jan 17, 2024
0a4f52f
Update dependencies in ci-linux.yml
tobiasdiez Jan 17, 2024
76fdd33
Add cliquer distro for arch
tobiasdiez Jan 17, 2024
56c675f
Fix opensuse ignore missing install
tobiasdiez Jan 17, 2024
8ec3aff
Add fplll dependency in meson
tobiasdiez Jan 17, 2024
6435099
Add fplll distro info for arch
tobiasdiez Jan 17, 2024
582d686
Merge remote-tracking branch 'antonio-rojas/flint-fplll' into meson-c…
tobiasdiez Jan 17, 2024
6cb636e
Add memory_allocator as build dependency
tobiasdiez Jan 18, 2024
04bb3fd
Add dependencies to pyproject.toml
tobiasdiez Jan 18, 2024
478d4e8
Add more fallback options for openblas
tobiasdiez Jan 19, 2024
1cc5503
Improve linbox detection on fedora
tobiasdiez Jan 19, 2024
91f0539
Install primecount and lrcalc to build dependencies
tobiasdiez Jan 19, 2024
40981cc
Remove unnecessary meson version constraint
tobiasdiez Jan 19, 2024
9a88820
Try with libbraiding-devel on fedora
tobiasdiez Jan 19, 2024
d0d49cd
Add distro info for maxima on fedora
tobiasdiez Jan 19, 2024
b79052d
Merge remote-tracking branch 'upstream/develop' into meson-ci-tests
tobiasdiez Jan 22, 2024
6255a3e
Add fix for Maxima help on archlinux
tobiasdiez Jan 22, 2024
df9bde7
Add debian package for primecount
tobiasdiez Jan 22, 2024
5dceea1
Fix primecount install
tobiasdiez Jan 22, 2024
8065486
Add debian experimental
tobiasdiez Jan 22, 2024
4adc124
Conditionalize archlinux fix
tobiasdiez Jan 22, 2024
9569699
Merge branch 'meson-compile' into meson-ci-tests
tobiasdiez Feb 13, 2024
a685ed5
Add flint library as subproject/wrap
tobiasdiez Feb 13, 2024
a10a701
Update meson version in build dependencies
tobiasdiez Feb 13, 2024
02a2449
Update CI script to create a virtual environment
tobiasdiez Feb 13, 2024
a255ed7
fix flint subproject
tobiasdiez Feb 13, 2024
63f60e4
Update venv activation command in ci-linux.yml
tobiasdiez Feb 13, 2024
3bdeaa3
Add python3-venv to system package installation and enable system sit…
tobiasdiez Feb 13, 2024
cea458e
Use upgraded pip in venv
tobiasdiez Feb 13, 2024
753b3bf
Create venv outside of source folder (otherwise meson complains about…
tobiasdiez Feb 13, 2024
64e2feb
Update pip3 installation command
tobiasdiez Feb 13, 2024
d4a2509
Try to fix wheelbuilding by disabling subprojects for installation
tobiasdiez Feb 13, 2024
ac37516
Disable outdated systems (for now?)
tobiasdiez Feb 13, 2024
cf26949
Try to fix build of lrcalc
tobiasdiez Feb 13, 2024
25acd6a
Manually install fplll for fpylll
tobiasdiez Feb 13, 2024
838f109
Fix typo
tobiasdiez Feb 13, 2024
081c1f3
Fix container comparison in ci-linux.yml
tobiasdiez Feb 13, 2024
974d789
Install wget as well
tobiasdiez Feb 13, 2024
0e0ad30
Remove sudo
tobiasdiez Feb 13, 2024
b678691
Fix fplll installation
tobiasdiez Feb 14, 2024
3c67e63
add lcalc subproject
tobiasdiez Feb 14, 2024
be710ad
fix lcalc subproject
tobiasdiez Feb 15, 2024
7a98937
Merge branch 'meson-compile' into meson-ci-tests
tobiasdiez Feb 15, 2024
f380981
Fix header file copying in lcalc/meson.build
tobiasdiez Feb 15, 2024
20bd351
Update CI configurations for Linux environments
tobiasdiez Feb 15, 2024
e383e24
Update CI configuration
tobiasdiez Feb 15, 2024
0efebdc
Update flint subproject and copy source files to build directory
tobiasdiez Feb 18, 2024
76af057
move flint compilation back down
tobiasdiez Feb 18, 2024
4c4d445
fix flint discovery
tobiasdiez Feb 18, 2024
1ec22a5
Merge branch 'meson-compile' into meson-ci-tests
tobiasdiez Feb 18, 2024
43b3696
Merge branch 'meson-compile' into meson-ci-tests
tobiasdiez Feb 19, 2024
456b129
Correct name of memory-allocator
tobiasdiez Feb 22, 2024
4cf639a
Merge branch 'meson-compile' into meson-ci-tests
tobiasdiez Feb 22, 2024
1a439e6
Merge branch 'meson-compile' into meson-ci-tests
tobiasdiez Feb 22, 2024
d661f1b
Import flint for arb and acb (instead of from deprecated arb)
tobiasdiez Feb 23, 2024
8a257ee
Merge branch 'meson-compile' into meson-ci-tests
tobiasdiez Feb 23, 2024
b7851d3
Merge branch 'meson-compile' into meson-ci-tests
tobiasdiez Feb 23, 2024
b270a38
try with arb call removed
tobiasdiez Feb 24, 2024
7f347b2
Add requirements files for testing, linting, and documentation
tobiasdiez Feb 25, 2024
4aa1121
Merge branch 'develop' into meson-ci-tests
tobiasdiez Feb 25, 2024
aeeec9c
Merge branch 'meson-compile' into meson-ci-tests
tobiasdiez Feb 28, 2024
f5d354e
Add basic meson devcontainer
tobiasdiez Mar 8, 2024
6ba74b5
Add jinja2 as build system requirement
tobiasdiez Mar 9, 2024
1d3460d
Add traitlets dependency
tobiasdiez Mar 9, 2024
fad5855
Improve devcontainer setup
tobiasdiez Mar 9, 2024
cbabd37
Update dependencies and remove unnecessary installation in meson ci
tobiasdiez Mar 9, 2024
c196745
Install sagelib during devcontainer creation
tobiasdiez Mar 9, 2024
be903c2
try to fix flint subproject build by disabling linbox
tobiasdiez Mar 9, 2024
fff554f
Build linbox properly
tobiasdiez Mar 9, 2024
cc79306
Update pip3 install command to use --editable flag
tobiasdiez Mar 9, 2024
67cf678
Add fflas-ffpack and givaro subprojects
tobiasdiez Mar 9, 2024
95ce83c
Add indirect version check for 'gap' library
tobiasdiez Mar 9, 2024
fa1349f
Add gap subproject as fallback
tobiasdiez Mar 9, 2024
a115d45
Don't build linbox subproject when not necessary
tobiasdiez Mar 9, 2024
b3bcea4
Remove obsolete workaround for cypari
tobiasdiez Mar 9, 2024
9996685
Use build isolation now
tobiasdiez Mar 9, 2024
5dea1a0
Fix gap discovery
tobiasdiez Mar 10, 2024
384b008
Generate __init__ file for interpreters
tobiasdiez Mar 10, 2024
9c3ebe7
Revert "Use build isolation now"
tobiasdiez Mar 10, 2024
23d961c
Partly revert "Remove obsolete workaround for cypari"
tobiasdiez Mar 10, 2024
462b0b6
Merge branch 'meson-compile' into meson-ci-tests
tobiasdiez Mar 10, 2024
780ee42
Add cypari dependency in Meson build script and CI workflow
tobiasdiez Mar 10, 2024
4984e65
Upgrade setuptools for lrcalc
tobiasdiez Mar 10, 2024
b0974a1
Merge branch 'meson-compile' into meson-ci-tests
tobiasdiez Mar 10, 2024
01b5c49
Do install subprojects
tobiasdiez Mar 10, 2024
d1109b4
Also install wheel for lrcalc
tobiasdiez Mar 10, 2024
040dd68
Update maxima program search in meson.build
tobiasdiez Mar 10, 2024
96767fd
Don't use editable install in ci-linux
tobiasdiez Mar 11, 2024
d837d84
Merge branch 'requirements-files' into meson-ci-tests
tobiasdiez Mar 11, 2024
52eaede
Use meson directly to build and install
tobiasdiez Mar 11, 2024
8d2ce08
Merge remote-tracking branch 'upstream/develop' into init_files
tobiasdiez Mar 11, 2024
e37a92e
Merge branch 'init_files' into meson-compile
tobiasdiez Mar 11, 2024
f4b7c65
Merge branch 'meson-compile' into meson-ci-tests
tobiasdiez Mar 11, 2024
186a8f8
Add virtual environment activation to build and test steps
tobiasdiez Mar 11, 2024
15e7b59
Add Meson Log for failed builds
tobiasdiez Mar 11, 2024
359bdff
Remove pip3 installation of virtualenv
tobiasdiez Mar 11, 2024
560d892
Use python3 -m pip
tobiasdiez Mar 11, 2024
cef5a63
Install into venv
tobiasdiez Mar 12, 2024
042c42e
Create venv without system site packages
tobiasdiez Mar 12, 2024
89d7cc5
Merge remote-tracking branch 'origin/conda-improv' into meson-win
tobiasdiez Oct 23, 2024
22c75a5
Generate conda environment files for windows
tobiasdiez Oct 23, 2024
0769f31
Mark a few dependencies as optional on windows
tobiasdiez Oct 23, 2024
149c569
Merge remote-tracking branch 'upstream/develop' into meson-win
tobiasdiez Oct 28, 2024
6cde21b
Minor improvements to meson build files
tobiasdiez Oct 28, 2024
b10e365
Meson: mark some dependencies as optional on Windows
tobiasdiez Oct 28, 2024
6846003
Require cysignals again
tobiasdiez Oct 28, 2024
e950d9d
Meson: Improve handling of dependencies
tobiasdiez Oct 28, 2024
6c70e45
Meson: add singular (factory) as subproject
tobiasdiez Oct 28, 2024
a5d70af
Meson: a few more minor revisions
tobiasdiez Oct 28, 2024
526eae4
Meson: improve handling of dependencies
tobiasdiez Oct 28, 2024
8fc3cb6
Exclude a few files from compilation due to errors on windows
tobiasdiez Oct 28, 2024
8f705dc
fix meson build
tobiasdiez Oct 28, 2024
1861ec0
fix singular factory declaration in meson
tobiasdiez Oct 28, 2024
bed071f
Provide wrappers srandom and random for Windows
tobiasdiez Oct 28, 2024
a5d85ce
Replace division by zero with +-inf
tobiasdiez Oct 28, 2024
0e70b7a
Fix Ginac cast error
tobiasdiez Oct 28, 2024
73e22d2
Replace deprecated/removed mem_fun_ref
tobiasdiez Oct 28, 2024
bb916ae
Remove `register` macro in Ginac
tobiasdiez Oct 28, 2024
694d86b
Fix `get_tinfo` specialization for Ginac
tobiasdiez Oct 28, 2024
5062be7
Replace `unistd.h` by `windows.h` on Windows
tobiasdiez Oct 28, 2024
a9e0cb1
Narrow down imports
tobiasdiez Oct 28, 2024
d8b6466
Replace `os.uname` by more universal `platform.system`
tobiasdiez Oct 28, 2024
5a885aa
hide some errors for now
tobiasdiez Oct 28, 2024
6014f7e
Fix syntax error
tobiasdiez Oct 28, 2024
bbd8b48
Catch missing singular dependency
tobiasdiez Oct 28, 2024
37934e0
Replace bootstrap-conda by grayskull and update conda lock files
tobiasdiez Nov 17, 2024
3f456d0
Merge branch 'pr/tobiasdiez/37447' into meson-win
tobiasdiez Nov 19, 2024
f2a2793
Update windows lock files
tobiasdiez Nov 19, 2024
ef8f97c
fix compilation
tobiasdiez Nov 19, 2024
5a8624e
Run ci also on windows
tobiasdiez Nov 19, 2024
c020b20
fix path to env
tobiasdiez Nov 19, 2024
822e408
fix cypari2 detection on linux
tobiasdiez Nov 19, 2024
44c53e7
delete git linker
tobiasdiez Nov 19, 2024
95182ae
fix meson file
tobiasdiez Nov 19, 2024
79d6cfe
Fix singular/factory subproject
tobiasdiez Nov 19, 2024
048fc93
don't use ccache on windows
tobiasdiez Nov 19, 2024
e5f69d0
use pathlib to generate init files
tobiasdiez Nov 19, 2024
6d95aa8
Git-ignore subproject
tobiasdiez Nov 19, 2024
7b73128
fix path
tobiasdiez Nov 19, 2024
625fa8f
Append conda to lib
tobiasdiez Nov 19, 2024
e560ce7
use editable install for now
tobiasdiez Nov 19, 2024
e7d37bd
Format meson files
tobiasdiez Nov 20, 2024
cbcf4a5
hide ci errors on windows
tobiasdiez Nov 25, 2024
c554a90
Compile giac part with c++11 on windows
tobiasdiez Nov 25, 2024
162f873
Install cysignals from upstream
tobiasdiez Nov 25, 2024
5494e8d
Fix type narrowing conversion exception on Windows
tobiasdiez Nov 25, 2024
52124ad
Fix Min/Max macro clash in symmetrica on Windows
tobiasdiez Nov 25, 2024
b93a287
Cleanup meson files
tobiasdiez Nov 25, 2024
1ad7a91
cleanup python
tobiasdiez Nov 25, 2024
5d70778
add change_ring also uses flint
tobiasdiez Nov 27, 2024
04baf44
improve meson build files of singular
tobiasdiez Nov 27, 2024
0f6ba3f
cleanup
tobiasdiez Nov 27, 2024
69c0cf6
compile complex_double as c++
tobiasdiez Nov 28, 2024
624ab32
Merge remote-tracking branch 'upstream/develop' into meson-ci-tests
tobiasdiez Nov 29, 2024
5d1b25d
require cysignals again on windows
tobiasdiez Nov 30, 2024
17b5178
Format meson files
tobiasdiez Nov 30, 2024
d4888f2
Use uv to manage ci dependencies
tobiasdiez Nov 30, 2024
01cbfbc
Merge branch 'use-uv' into meson-ci-tests
tobiasdiez Nov 30, 2024
39676c1
cleanup and use uv
tobiasdiez Nov 30, 2024
55a933f
use uv to install deps
tobiasdiez Nov 30, 2024
cbf1812
improve venv creation
tobiasdiez Nov 30, 2024
ec8bd25
Merge remote-tracking branch 'origin/pyproject-sagelib' into meson-ci…
tobiasdiez Nov 30, 2024
e124ac5
run sage package with uv
tobiasdiez Nov 30, 2024
760161a
update repo before install
tobiasdiez Nov 30, 2024
12276fe
update containers
tobiasdiez Nov 30, 2024
894cef7
don't try to build project
tobiasdiez Nov 30, 2024
70a87ec
fix update command
tobiasdiez Nov 30, 2024
18c3be3
fix repo
tobiasdiez Nov 30, 2024
a2c488f
update systems
tobiasdiez Nov 30, 2024
f9ae621
update ci
tobiasdiez Nov 30, 2024
e442755
disable ubuntu
tobiasdiez Nov 30, 2024
6007cf6
Use lock file
tobiasdiez Nov 30, 2024
462e169
Make brial optional to reenable ubuntu
tobiasdiez Nov 30, 2024
77b084b
frozen instead of locked?
tobiasdiez Nov 30, 2024
0f1634f
Merge remote-tracking branch 'upstream/develop' into meson-ci-tests
tobiasdiez Nov 30, 2024
b38b6a6
Use meson as backend for numpy.f2py
tobiasdiez Oct 29, 2024
9ac4650
Add dependency groups to `pyproject.toml`
tobiasdiez Nov 26, 2024
28583a3
Replace bootstrap-conda by grayskull and update conda lock files
tobiasdiez Nov 17, 2024
7d2a7f7
Add toml as requirement to running the `update-conda` script
tobiasdiez Nov 26, 2024
ab65ab1
Add prerequisites for bootstrap/configure to conda lock files
tobiasdiez Nov 26, 2024
f8b1d44
Downgrade macos again
tobiasdiez Nov 26, 2024
706af72
Manually add expat to conda lock files
tobiasdiez Nov 29, 2024
6a498f7
Add fortran compiler as host requirement
tobiasdiez Nov 29, 2024
baeb2ae
No editable on install on linux
tobiasdiez Dec 2, 2024
0892c0d
Merge remote-tracking branch 'origin/conda-grayskull' into meson-win
tobiasdiez Dec 4, 2024
2939535
Merge remote-tracking branch 'upstream/develop' into meson-win
tobiasdiez Dec 4, 2024
5bb211f
Fix script
tobiasdiez Dec 4, 2024
8ee1c4a
Add docs
tobiasdiez Dec 4, 2024
17e7910
Merge remote-tracking branch 'origin/conda-grayskull' into meson-win
tobiasdiez Dec 9, 2024
bd63f49
Fix non-editable install on windows
tobiasdiez Dec 9, 2024
e755a5a
Fix mtx/meataxe detection on Windows
tobiasdiez Dec 9, 2024
d4924b0
update win lock files to include cysignals and gmpy2
tobiasdiez Dec 9, 2024
20e46c9
No longer need to install cysignals and gmpy2 manually
tobiasdiez Dec 10, 2024
6190c31
Merge branch 'develop' into meson-ci-tests
tobiasdiez Dec 16, 2024
fc3e84c
Merge branch 'ship-init' into meson-win
tobiasdiez Dec 16, 2024
bb5b0fa
Merge branch 'meson-win' of https://github.com/tobiasdiez/sage into m…
tobiasdiez Dec 17, 2024
4b29be4
Merge branch 'develop' into meson-win
tobiasdiez Dec 23, 2024
1686052
Merge branch 'meson-win' of https://github.com/tobiasdiez/sage into m…
tobiasdiez Jan 4, 2025
21a896e
cleanup
tobiasdiez Jan 4, 2025
7877543
Fix linter
tobiasdiez Jan 4, 2025
ce040a3
Merge branch 'develop' into meson-ci-tests
tobiasdiez Jan 4, 2025
92cb387
Merge branch 'meson-win' into meson-ci-tests
tobiasdiez Jan 4, 2025
23ce171
Merge remote-tracking branch 'upstream/develop' into meson-ci-tests
tobiasdiez Jan 4, 2025
be91957
Install sagemath using pip
tobiasdiez Jan 5, 2025
b4f8c23
install meson
tobiasdiez Jan 5, 2025
3af4345
install build deps manually
tobiasdiez Jan 6, 2025
9f1b757
just install with build isolation
tobiasdiez Jan 6, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
36 changes: 36 additions & 0 deletions .devcontainer/onCreate-meson.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
#! /bin/sh
SYSTEM=$(build/bin/sage-guess-package-system)
eval $(build/bin/sage-print-system-package-command $SYSTEM "$@" update)
eval $(build/bin/sage-print-system-package-command $SYSTEM --yes --ignore-missing install $(build/bin/sage-get-system-packages $SYSTEM $(build/bin/sage-package list :standard:)))

# Create a virtual environment (some systems do not allow to install packages globally)
# Virtual envionment has to be created outside of the source directory for meson to work
python3 -m venv ../venv --system-site-packages
. ../venv/bin/activate
pip3 install --upgrade pip

# Needed for lrcalc
eval $(build/bin/sage-print-system-package-command $SYSTEM --yes --ignore-missing install wget)
wget math.rutgers.edu/~asbuch/lrcalc/lrcalc-2.1.tar.gz \
&& tar zxvf lrcalc-2.1.tar.gz \
&& cd lrcalc-2.1 \
&& ./configure \
&& make \
&& make install \
&& cd .. \
&& rm -fr lrcalc-2.1 lrcalc-2.1.tar.gz

# Needed for fpylll
FPLLL_VERSION=5.4.5
wget https://github.com/fplll/fplll/releases/download/${FPLLL_VERSION}/fplll-${FPLLL_VERSION}.tar.gz \
&& tar -xf fplll-${FPLLL_VERSION}.tar.gz \
&& cd fplll-${FPLLL_VERSION} \
&& ./configure \
&& make \
&& make install \
&& cd .. \
&& rm -fr fplll-${FPLLL_VERSION} fplll-${FPLLL_VERSION}.tar.gz

# Disable build isolation following the advice of https://mesonbuild.com/meson-python/how-to-guides/editable-installs.html#build-dependencies
pip3 install 'meson>=1.3.1' 'meson-python' 'cython>=3.0.0,!=3.0.3' 'numpy>=1.19' 'cypari2 >=2.1.1' 'cysignals>=1.10.2' 'gmpy2>=2.1.0' 'memory_allocator' 'jinja2 >=3.0'
pip3 install --no-build-isolation --config-settings=builddir=builddir --editable . -v
13 changes: 13 additions & 0 deletions .devcontainer/portability-fedora-35-meson/devcontainer.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
// See https://aka.ms/devcontainer.json for format details.
{
"name": "fedora-35-meson",
"image": "fedora:35",
"onCreateCommand": ".devcontainer/onCreate-meson.sh || true",
"features": {
"ghcr.io/devcontainers/features/git": {},
"ghcr.io/devcontainers/features/python:1": {}
},
"extensions": [
"ms-python.python"
]
}
17 changes: 10 additions & 7 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -242,8 +242,9 @@ jobs:
# The following command checks that all modules can be imported.
# The output also includes a long list of modules together with the number of tests in each module.
# This can be ignored.
./sage -python -m pip install pytest-xdist
./sage -python -m pytest -c tox.ini -qq --doctest --collect-only || true
./sage -python -m pip install uv
./sage -python -m uv sync --only-group test
./sage -python -m uv run pytest -c tox.ini -qq --doctest --collect-only || true
shell: sh .ci/docker-exec-script.sh BUILD /sage {0}

- name: Test changed files (sage -t --new)
Expand Down Expand Up @@ -453,8 +454,9 @@ jobs:
rm -rf /sage/.coverage
ln -s $(pwd)/.coverage /sage/
cd /sage
./sage -python -m pip install coverage
./sage -python -m coverage run --rcfile=src/tox.ini src/bin/sage-runtests --force-lib --long -p4 --format github --random-seed=286735480429121101562228604801325644303 ${{ matrix.tests }}
./sage -python -m pip install uv
./sage -python -m uv sync --only-group test
./sage -python -m uv run coverage run --rcfile=src/tox.ini src/bin/sage-runtests --force-lib --long -p4 --format github --random-seed=286735480429121101562228604801325644303 ${{ matrix.tests }}
shell: sh .ci/docker-exec-script.sh BUILD . {0}

- name: Combine coverage results
Expand Down Expand Up @@ -580,9 +582,10 @@ jobs:
rm -rf /sage/.coverage
ln -s $(pwd)/.coverage /sage/
cd /sage
./sage -python -m pip install coverage
./sage -python -m coverage combine --rcfile=src/tox.ini .coverage/coverage-*/.coverage
./sage -python -m coverage xml --rcfile=src/tox.ini --omit="/tmp/*"
./sage -python -m pip install uv
./sage -python -m uv sync --only-group test
./sage -python -m uv run coverage combine --rcfile=src/tox.ini .coverage/coverage-*/.coverage
./sage -python -m uv run coverage xml --rcfile=src/tox.ini --omit="/tmp/*"
mkdir -p .coverage/coverage-report
mv coverage.xml .coverage/coverage-report/
shell: sh .ci/docker-exec-script.sh BUILD . {0}
Expand Down
Loading
Loading