Skip to content

Commit

Permalink
Merging main
Browse files Browse the repository at this point in the history
  • Loading branch information
emma58 committed Mar 13, 2024
2 parents 5575464 + d7d8287 commit 7498781
Show file tree
Hide file tree
Showing 2,270 changed files with 235,591 additions and 96,127 deletions.
8 changes: 4 additions & 4 deletions .coin-or/projDesc.xml
Original file line number Diff line number Diff line change
Expand Up @@ -107,7 +107,7 @@ Carl D. Laird, Chair, Pyomo Management Committee, claird at andrew dot cmu dot e
license file directly.
-->
<projectLicenseURL>
https://github.com/Pyomo/pyomo/blob/main/LICENSE.txt
https://github.com/Pyomo/pyomo/blob/main/LICENSE.md
</projectLicenseURL>

<!-- Below, you can list other COIN projects your project -->
Expand Down Expand Up @@ -227,8 +227,8 @@ Carl D. Laird, Chair, Pyomo Management Committee, claird at andrew dot cmu dot e
Use explicit overrides to disable use of automated
version reporting.
-->
<stableVersionNumber>6.4.2</stableVersionNumber>
<releaseNumber>6.4.2</releaseNumber>
<stableVersionNumber>6.7.1</stableVersionNumber>
<releaseNumber>6.7.1</releaseNumber>

</developmentStatus>

Expand Down Expand Up @@ -287,7 +287,7 @@ Carl D. Laird, Chair, Pyomo Management Committee, claird at andrew dot cmu dot e

<platform>
<operatingSystem>Any</operatingSystem>
<compiler>Python 3.7, 3.8, 3.9, 3.10</compiler>
<compiler>Python 3.8, 3.9, 3.10, 3.11, 3.12</compiler>
</platform>

</testedPlatforms>
Expand Down
48 changes: 48 additions & 0 deletions .git-blame-ignore-revs
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
# PURPOSE: This file will ignore the included SHAs when
# running `git blame`.
# USAGE: To use this file, you can do one of the following:
# 1) git blame --ignore-revs-file .git-blame-ignore-revs
# 2) git config blame.ignoreRevsFile .git-blame-ignore-revs

# Most of these will be ignoring application
# of black to the repository
49fb44e8acb90b3019dbc21241515ae9789b9798
ce67d33762114de1bd31033b791ba38aca0360a4
6e8e1e879aa33e8917ab9ecb46371031e39c49ee
01d84aad72719f77270bc5fb15984663cc2692d3
38d7587c51c518ebf77948de43f1e7e4714b4b70
3fa9f893fc98e9c48de7652095ab815bb2a51310
bbc492a8f88a09868ba24ef99b8550cfb700d563
b991efa2916b8f2b1cdadde0f8bcc848b715db8f
7302ab9b2cbbe0792b7227c1a65298935021b874
c79e1e94f7ad28f6ddf83c3eec4db1071898b613
d0f5081da6621e45df1bed1543ebcca2fee7d2cf
bf37b8701ada7517193d9f270cc14235326ff95d
8d69faf286c623f02f48ab3bf0aa76a39bed158c
09687ab6297cb8cc2577030a8751d3b39470ef69
3acc0f41b699b57d0020fdbe44078bf36631a093
733289d6f80e2c7ea4d500be20919ffca80c452a
7102497c843e0687c4817b78f3939b1e1fff18d1
72b2dbfe34e59f60b2668e2b65bc1a439fb50b3e
3d8a9a058a548cee7716fea47d9a0e0712acb52f
ec2101738756789aa82a547013e9a345310409a7
8f53d6c3d82a42bd2324e3def60f54802f6394c1
2895da9ccb6248f41dcfe34ff23b9c5243ca2ff1
5a58691b11b6265af22bf83c4c9a88d6e76ec079
7c30d21fee6d305f30d3bc21fd7dff067951f662
d1338fa2e9015f59a0505c1561d8e12924187fd1
6ef8840eeb88978fa244c4837057e7a058756dda
597df3cf410d84f9a9f2aa91b905ef02d60d3013
f74ee5e4488e5df1dc6033226441c26e1d4a6d08
765b2fd671952bccf7f3ea78821a9267436429e0
4e811287b5695e92f8b860497f7f3336d10de787
ab66ddc816fbc7748b8ff7f5ccf29ed248e8f808
0b7b099f4578250b65cdba874dfd3a491e6007fe
69aaac0180bd4bb2088086d412f31f4a592298dd
ed13c8c65d6c3f56973887744be1c62a5d4756de
0d93f98aa608f892df404ad8015885d26e09bb55
63a3c602a00a2b747fc308c0571bbe33e55a3731
363a16a609f519b3edfdfcf40c66d6de7ac135af
d024718991455519e09149ede53a38df1c067abe
017e21ee50d98d8b2f2083e6880f030025ed5378

3 changes: 3 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,9 @@ about: Suggest adding an enhancement of a current feature or a new feature in Py
labels: enhancement

---

<!-- BEFORE SUBMITTING AN ENHANCEMENT REQUEST - please browse the open issues and the [Archived Design Discussions wiki page](https://github.com/Pyomo/pyomo/wiki/Archived-Design-Discussions).-->

## Summary

<!-- Please add a concise summary of your suggestion here. -->
Expand Down
9 changes: 9 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,12 @@
<!-- ##################################################################### -->
<!-- PLEASE READ BEFORE OPENING THIS PULL REQUEST -->

<!-- All changes must adhere to PEP8 standards as enforced by Black. -->
<!-- If your changes do NOT adhere, the test suite will fail. -->
<!-- Please read our Contributing guide for instructions on how to apply these standards. -->
<!-- Contributing Guide: https://pyomo.readthedocs.io/en/stable/contribution_guide.html -->
<!-- ##################################################################### -->

## Fixes # .

## Summary/Motivation:
Expand Down
228 changes: 84 additions & 144 deletions .github/workflows/release_wheel_creation.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,96 +10,99 @@ on:
description: Git Hash (Optional)
required: false

concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true

env:
PYOMO_SETUP_ARGS: --with-distributable-extensions
PYOMO_SETUP_ARGS: "--with-cython --with-distributable-extensions"

jobs:
manylinux:
name: ${{ matrix.TARGET }}/wheel_creation
native_wheels:
name: Build wheels (${{ matrix.wheel-version }}) on ${{ matrix.os }} for native and cross-compiled architecture
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
fail-fast: true
matrix:
os: [ubuntu-latest]
os: [ubuntu-22.04, windows-latest, macos-latest]
arch: [all]
wheel-version: ['cp38*', 'cp39*', 'cp310*', 'cp311*', 'cp312*']

include:
- os: ubuntu-latest
TARGET: manylinux
python-version: [3.7]
- wheel-version: 'cp38*'
TARGET: 'py38'
- wheel-version: 'cp39*'
TARGET: 'py39'
- wheel-version: 'cp310*'
TARGET: 'py310'
- wheel-version: 'cp311*'
TARGET: 'py311'
- wheel-version: 'cp312*'
TARGET: 'py312'
steps:
- uses: actions/checkout@v2
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v3
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install twine wheel setuptools pybind11
- name: Build manylinux Python wheels
uses: RalfG/python-wheels-manylinux-build@v0.4.0-manylinux2010_x86_64
with:
python-versions: 'cp37-cp37m cp38-cp38 cp39-cp39 cp310-cp310'
build-requirements: 'cython pybind11'
package-path: ''
pip-wheel-args: ''
# When locally testing, --no-deps flag is necessary (PyUtilib dependency will trigger an error otherwise)
- name: Consolidate wheels
run: |
sudo test -d dist || mkdir -v dist
sudo find . -name \*.whl | grep -v /dist/ | xargs -n1 -i mv -v "{}" dist/
- name: Delete linux wheels
run: |
sudo rm -rfv dist/*-linux_x86_64.whl
- name: Upload artifact
uses: actions/upload-artifact@v2
with:
name: manylinux-wheels
path: dist
- uses: actions/checkout@v4
- name: Build wheels
uses: pypa/cibuildwheel@v2.16.5
with:
output-dir: dist
env:
CIBW_ARCHS_LINUX: "native"
CIBW_ARCHS_MACOS: "native arm64"
CIBW_ARCHS_WINDOWS: "native ARM64"
CIBW_SKIP: "*-musllinux*"
CIBW_BUILD: ${{ matrix.wheel-version }}
CIBW_BUILD_VERBOSITY: 1
CIBW_BEFORE_BUILD: pip install cython pybind11
CIBW_CONFIG_SETTINGS: '--global-option="--with-cython --with-distributable-extensions"'
- uses: actions/upload-artifact@v4
with:
name: native_wheels-${{ matrix.os }}-${{ matrix.TARGET }}
path: dist/*.whl
overwrite: true

manylinuxaarch64:
if: ${{ false }}
name: ${{ matrix.TARGET }}/wheel_creation
alternative_wheels:
name: Build wheels (${{ matrix.wheel-version }}) on ${{ matrix.os }} for aarch64
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest]
os: [ubuntu-22.04]
arch: [all]
wheel-version: ['cp38*', 'cp39*', 'cp310*', 'cp311*', 'cp312*']

include:
- os: ubuntu-latest
TARGET: manylinuxaarch64
python-version: [3.7]
- wheel-version: 'cp38*'
TARGET: 'py38'
- wheel-version: 'cp39*'
TARGET: 'py39'
- wheel-version: 'cp310*'
TARGET: 'py310'
- wheel-version: 'cp311*'
TARGET: 'py311'
- wheel-version: 'cp312*'
TARGET: 'py312'
steps:
- uses: actions/checkout@v2
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v3
with:
python-version: ${{ matrix.python-version }}
- uses: docker/setup-qemu-action@v1
name: Set up QEMU
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install twine wheel setuptools pybind11
- name: Build manylinux Python wheels
uses: RalfG/python-wheels-manylinux-build@v0.4.0-manylinux2014_aarch64
with:
python-versions: 'cp37-cp37m cp38-cp38 cp39-cp39'
build-requirements: 'cython'
package-path: ''
pip-wheel-args: ''
# When locally testing, --no-deps flag is necessary (PyUtilib dependency will trigger an error otherwise)
- name: Consolidate wheels
run: |
sudo test -d dist || mkdir -v dist
sudo find . -name \*.whl | grep -v /dist/ | xargs -n1 -i mv -v "{}" dist/
- name: Delete linux wheels
run: |
sudo rm -rfv dist/*-linux_aarch64.whl
- name: Upload artifact
uses: actions/upload-artifact@v2
with:
name: manylinux-aarch64-wheels
path: dist
- uses: actions/checkout@v4
- name: Set up QEMU
if: runner.os == 'Linux'
uses: docker/setup-qemu-action@v3
with:
platforms: all
- name: Build wheels
uses: pypa/cibuildwheel@v2.16.5
with:
output-dir: dist
env:
CIBW_ARCHS_LINUX: "aarch64"
CIBW_SKIP: "*-musllinux*"
CIBW_BUILD: ${{ matrix.wheel-version }}
CIBW_BUILD_VERBOSITY: 1
CIBW_BEFORE_BUILD: pip install cython pybind11
CIBW_CONFIG_SETTINGS: '--global-option="--with-cython --with-distributable-extensions"'
- uses: actions/upload-artifact@v4
with:
name: alt_wheels-${{ matrix.os }}-${{ matrix.TARGET }}
path: dist/*.whl
overwrite: true

generictarball:
name: ${{ matrix.TARGET }}
Expand All @@ -111,11 +114,11 @@ jobs:
include:
- os: ubuntu-latest
TARGET: generic_tarball
python-version: [3.7]
python-version: [3.8]
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v3
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
Expand All @@ -126,72 +129,9 @@ jobs:
run: |
python setup.py --without-cython sdist --format=gztar
- name: Upload artifact
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v4
with:
name: generictarball
path: dist
overwrite: true

osx:
name: ${{ matrix.TARGET }}py${{ matrix.python-version }}/wheel_creation
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [macos-latest]
include:
- os: macos-latest
TARGET: osx
python-version: [ 3.7, 3.8, 3.9, '3.10' ]
steps:
- uses: actions/checkout@v2
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v3
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install twine wheel setuptools cython pybind11
- name: Build OSX Python wheels
run: |
python setup.py --with-cython --with-distributable-extensions sdist --format=gztar bdist_wheel
- name: Upload artifact
uses: actions/upload-artifact@v2
with:
name: osx-wheels
path: dist

windows:
name: ${{ matrix.TARGET }}py${{ matrix.python-version }}/wheel_creation
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [windows-latest]
include:
- os: windows-latest
TARGET: win
python-version: [ 3.7, 3.8, 3.9, '3.10' ]
steps:
- uses: actions/checkout@v2
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v3
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
shell: pwsh
run: |
$env:PYTHONWARNINGS="ignore::UserWarning"
Invoke-Expression "python -m pip install --upgrade pip"
Invoke-Expression "pip install setuptools twine wheel cython pybind11"
- name: Build Windows Python wheels
shell: pwsh
run: |
$env:PYTHONWARNINGS="ignore::UserWarning"
Invoke-Expression "python setup.py --with-cython --with-distributable-extensions sdist --format=gztar bdist_wheel"
- name: Upload artifact
uses: actions/upload-artifact@v2
with:
name: win-wheels
path: dist
Loading

0 comments on commit 7498781

Please sign in to comment.