1
- name : CI
2
-
3
- # # This GitHub Actions workflow provides:
4
- # #
5
- # # - portability testing, by building and testing this project on many platforms
6
- # # (Linux variants and Cygwin), each with two configurations (installed packages),
7
- # #
8
- # # - continuous integration, by building and testing other software
9
- # # that depends on this project.
10
- # #
11
- # # It runs on every pull request and push of a tag to the GitHub repository.
12
- # #
13
- # # The testing can be monitored in the "Actions" tab of the GitHub repository.
14
- # #
15
- # # After all jobs have finished (or are canceled) and a short delay,
16
- # # tar files of all logs are made available as "build artifacts".
17
- # #
18
- # # This GitHub Actions workflow uses the portability testing framework
19
- # # of SageMath (https://www.sagemath.org/). For more information, see
20
- # # https://doc.sagemath.org/html/en/developer/portability_testing.html
21
-
22
- # # The workflow consists of two jobs:
23
- # #
24
- # # - First, it builds a source distribution of the project
25
- # # and generates a script "update-pkgs.sh". It uploads them
26
- # # as a build artifact named upstream.
27
- # #
28
- # # - Second, it checks out a copy of the SageMath source tree.
29
- # # It downloads the upstream artifact and replaces the project's
30
- # # package in the SageMath distribution by the newly packaged one
31
- # # from the upstream artifact, by running the script "update-pkgs.sh".
32
- # # Then it builds a small portion of the Sage distribution.
33
- # #
34
- # # Many copies of the second step are run in parallel for each of the tested
35
- # # systems/configurations.
36
-
37
- # on: [push, pull_request]
1
+ name : Build & Test
38
2
39
3
on :
40
4
pull_request :
@@ -51,45 +15,14 @@ concurrency:
51
15
cancel-in-progress : true
52
16
53
17
jobs :
54
- cygwin :
55
- runs-on : windows-latest
56
- strategy :
57
- fail-fast : false
58
- matrix :
59
- python-version-start : [python-3]
60
- python-version : [9]
61
- steps :
62
- - run : |
63
- git config --global core.autocrlf false
64
- git config --global core.symlinks true
65
- - name : Set up the repository
66
- uses : actions/checkout@v4
67
- with :
68
- submodules : recursive
69
- fetch-depth : 0
70
- - name : Set up Cygwin
71
- uses : egor-tensin/setup-cygwin@v4
72
- with :
73
- packages : gcc-core gcc-g++ python3${{ matrix.python-version }}-devel ninja pkgconf
74
- - name : Install dependencies
75
- shell : C:\tools\cygwin\bin\bash.exe --norc -eo pipefail -o igncr '{0}'
76
- run : |
77
- python3.${{ matrix.python-version }} -m pip install --upgrade pip
78
- python3.${{ matrix.python-version }} -m pip install --upgrade -r ./requirements.txt
79
- - name : Build and check
80
- shell : C:\tools\cygwin\bin\bash.exe --norc -eo pipefail -o igncr '{0}'
81
- run : |
82
- pip install --no-build-isolation --config-settings=builddir=builddir .
83
- meson test --print-errorlogs -C builddir
84
-
85
18
ci :
86
- name : CI ( ${{ matrix.os }} with Python ${{ matrix.python-version }})
19
+ name : ${{ matrix.os }} with python ${{ matrix.python-version }}
87
20
runs-on : ${{ matrix.os }}
88
21
strategy :
89
22
fail-fast : false
90
23
matrix :
91
24
os : ['macos-13', 'macos-latest', 'ubuntu-latest', 'windows-latest']
92
- python-version : ['3.10', '3.11', '3.12', '3.13-dev ']
25
+ python-version : ['3.10', '3.11', '3.12', '3.13']
93
26
steps :
94
27
- name : Set up the repository
95
28
uses : actions/checkout@v4
0 commit comments