Skip to content

Commit 21da9b9

Browse files
authored
Merge pull request #1432 from ERGO-Code/latest
Merge latest into master?
2 parents f691802 + 0a9b58d commit 21da9b9

File tree

161 files changed

+5257
-2085
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

161 files changed

+5257
-2085
lines changed

.github/workflows/build-linux.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: build-lunix
1+
name: build-linux
22

33
on: [push, pull_request]
44

.github/workflows/build-meson.yml

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
name: Meson Builds with Conda
2+
on: [push, pull_request]
3+
4+
jobs:
5+
buildmeson:
6+
runs-on: ${{ matrix.os }}
7+
strategy:
8+
matrix:
9+
os: [ubuntu-latest, macos-latest] # windows-latest takes to long
10+
steps:
11+
- uses: actions/checkout@v3
12+
with:
13+
submodules: "recursive"
14+
fetch-depth: 0
15+
- name: Install Conda environment
16+
uses: mamba-org/setup-micromamba@v1
17+
with:
18+
environment-name: highsdev
19+
create-args: >-
20+
python==3.8
21+
meson
22+
pkgconfig
23+
ninja
24+
zlib
25+
catch2
26+
cache-environment: true
27+
init-shell: >-
28+
bash
29+
zsh
30+
- name: Build and test
31+
shell: bash -l {0}
32+
run: |
33+
meson setup bbdir_test -Duse_zlib=enabled -Dwith_tests=True --prefix $CONDA_PREFIX
34+
meson test -C bbdir_test

.github/workflows/build-wheels.yml

Lines changed: 59 additions & 55 deletions
Original file line numberDiff line numberDiff line change
@@ -1,70 +1,74 @@
1-
name: Wheels
1+
# Python release WIP
2+
name: Build wheels
3+
on: []
4+
# release:
5+
# types:
6+
# - published
27

3-
on: [push, pull_request]
8+
concurrency:
9+
group: ${{ github.workflow }}-${{ github.ref }}
10+
cancel-in-progress: true
411

512
jobs:
613
build_wheels:
7-
name: Build wheels on ${{ matrix.os }}
8-
runs-on: ${{ matrix.os }}
14+
name: Build wheel for ${{ matrix.python }}-${{ matrix.buildplat[1] }}
15+
runs-on: ${{ matrix.buildplat[0] }}
16+
environment: pypi
917
strategy:
18+
# Ensure that a wheel builder finishes even if another fails
19+
fail-fast: false
1020
matrix:
11-
os: [macOS-12] # windows-2019 ubuntu-20.04,
21+
# From NumPy
22+
# Github Actions doesn't support pairing matrix values together, let's improvise
23+
# https://github.com/github/feedback/discussions/7835#discussioncomment-1769026
24+
buildplat:
25+
- [ubuntu-20.04, manylinux_x86_64]
26+
- [ubuntu-20.04, musllinux_x86_64] # No OpenBlas, no test
27+
- [macos-12, macosx_x86_64]
28+
- [macos-12, macosx_arm64]
29+
- [windows-2019, win_amd64]
30+
python: ["cp38", "cp39","cp310", "cp311"]
1231

1332
steps:
1433
- uses: actions/checkout@v3
34+
- name: Build wheels
35+
uses: pypa/[email protected]
36+
env:
37+
CIBW_BUILD: ${{ matrix.python }}-${{ matrix.buildplat[1] }}
38+
- uses: actions/upload-artifact@v3
39+
with:
40+
path: ./wheelhouse/*.whl
1541

16-
# Used to host cibuildwheel
17-
- uses: actions/setup-python@v2
18-
19-
- name: Install cibuildwheel
20-
run: python -m pip install cibuildwheel==2.7.0
21-
22-
- name: Install pyomo pybind
23-
run: python -m pip install pybind11 pyomo
24-
25-
- name: Create Build Environment
26-
run: cmake -E make_directory ${{runner.workspace}}/build
27-
28-
- name: Create install dir
29-
run: cmake -E make_directory ${{runner.workspace}}/installs/
30-
31-
- name: Configure CMake
32-
shell: bash
33-
working-directory: ${{runner.workspace}}/build
34-
run: cmake $GITHUB_WORKSPACE -DBUILD_SHARED_LIBS=ON -DCMAKE_INSTALL_PREFIX=${{runner.workspace}}/installs/highs -DFAST_BUILD=ON
35-
36-
- name: Build
37-
working-directory: ${{runner.workspace}}/build
38-
shell: bash
39-
# Execute the build. You can specify a specific target with "--target <NAME>"
40-
run: |
41-
cmake --build . --parallel
42-
cmake --install .
43-
44-
- name: Test
45-
working-directory: ${{runner.workspace}}/build
46-
shell: bash
47-
# Execute tests defined by the CMake configuration.
48-
# See https://cmake.org/cmake/help/latest/manual/ctest.1.html for more detail
49-
run: ctest --parallel 2 --timeout 300 --output-on-failure
42+
build_sdist:
43+
name: Build source distribution
44+
runs-on: ubuntu-latest
45+
steps:
46+
- uses: actions/checkout@v3
5047

51-
- name: Build wheels
52-
run: |
53-
cd $GITHUB_WORKSPACE
54-
export REPAIR_LIBRARY_PATH=${{runner.workspace}}/installs/highs/lib
55-
export LD_LIBRARY_PATH=$REPAIR_LIBRARY_PATH
56-
export DYLD_LIBRARY_PATH=$REPAIR_LIBRARY_PATH
57-
ls $REPAIR_LIBRARY_PATH
58-
python -m cibuildwheel --output-dir wheelhouse
48+
- name: Build sdist
49+
shell: bash -l {0}
50+
run: pipx run build --sdist
5951

60-
# to supply options, put them in 'env', like:
52+
- uses: actions/upload-artifact@v3
53+
with:
54+
path: dist/*.tar.gz
6155

62-
env:
63-
CIBW_ENVIRONMENT: REPAIR_LIBRARY_PATH=${{runner.workspace}}/installs/highs/lib LD_LIBRARY_PATH=$REPAIR_LIBRARY_PATH DYLD_LIBRARY_PATH=$REPAIR_LIBRARY_PATH
64-
CIBW_REPAIR_WHEEL_COMMAND_MACOS: >
65-
DYLD_LIBRARY_PATH=$REPAIR_LIBRARY_PATH delocate-listdeps {wheel} &&
66-
DYLD_LIBRARY_PATH=$REPAIR_LIBRARY_PATH delocate-wheel --require-archs {delocate_archs} -w {dest_dir} {wheel}
56+
upload_pypi:
57+
needs: [build_wheels, build_sdist]
58+
runs-on: ubuntu-latest
59+
# upload to PyPI on every tag starting with 'v'
60+
if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags/v')
61+
# alternatively, to publish when a GitHub Release is created, use the following rule:
62+
# if: github.event_name == 'release' && github.event.action == 'published'
63+
steps:
64+
- uses: actions/download-artifact@v3
65+
with:
66+
# unpacks default artifact into dist/
67+
# if `name: artifact` is omitted, the action will create extra parent dir
68+
name: artifact
69+
path: dist
6770

68-
- uses: actions/upload-artifact@v2
71+
- uses: pypa/gh-action-pypi-publish@release/v1
6972
with:
70-
path: ./wheelhouse/*.whl
73+
user: __token__
74+
password: ${{ secrets.PYPI_API_TOKEN }}

.github/workflows/build-windows.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@ jobs:
7575
shell: bash
7676
# Execute tests defined by the CMake configuration.
7777
# See https://cmake.org/cmake/help/latest/manual/ctest.1.html for more detail
78-
run: ctest --timeout 300 --output-on-failure -C Release
78+
run: ctest --timeout 10000 --output-on-failure -C Release
7979

8080
fast_build_debug:
8181
runs-on: windows-latest
@@ -109,7 +109,7 @@ jobs:
109109
shell: bash
110110
# Execute tests defined by the CMake configuration.
111111
# See https://cmake.org/cmake/help/latest/manual/ctest.1.html for more detail
112-
run: ctest --timeout 300 --output-on-failure -C Debug
112+
run: ctest --output-on-failure -C Debug
113113

114114
windows_debug:
115115
runs-on: windows-latest
@@ -143,7 +143,7 @@ jobs:
143143
shell: bash
144144
# Execute tests defined by the CMake configuration.
145145
# See https://cmake.org/cmake/help/latest/manual/ctest.1.html for more detail
146-
run: ctest --timeout 300 --output-on-failure -C Debug
146+
run: ctest --output-on-failure -C Debug
147147

148148
windows_release64:
149149
runs-on: windows-latest
@@ -211,4 +211,4 @@ jobs:
211211
shell: bash
212212
# Execute tests defined by the CMake configuration.
213213
# See https://cmake.org/cmake/help/latest/manual/ctest.1.html for more detail
214-
run: ctest --timeout 300 --output-on-failure -C Debug
214+
run: ctest --output-on-failure -C Debug

.github/workflows/documentation.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,10 @@ jobs:
99
build:
1010
runs-on: ubuntu-latest
1111
steps:
12-
- uses: actions/checkout@v2
12+
- uses: actions/checkout@v3
1313
- uses: julia-actions/setup-julia@latest
1414
with:
15-
version: '1.6'
15+
version: '1.9'
1616
- name: Build and deploy
1717
env:
1818
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

.github/workflows/test-python-api-mac.yml

Lines changed: 0 additions & 51 deletions
This file was deleted.

.github/workflows/test-python-api-ubuntu.yml

Lines changed: 0 additions & 54 deletions
This file was deleted.

.github/workflows/test-python-api-win.yml

Lines changed: 0 additions & 55 deletions
This file was deleted.

0 commit comments

Comments
 (0)