Skip to content

Update versions and add python3.14 - #137

Merged
larsevj merged 1 commit into
mainfrom
add_python3.14_support
Mar 4, 2026
Merged

Update versions and add python3.14#137
larsevj merged 1 commit into
mainfrom
add_python3.14_support

Conversation

@larsevj

@larsevj larsevj commented Mar 3, 2026

Copy link
Copy Markdown
Contributor

Resolves #130

Comment thread .github/workflows/bundle_with_dakota_macos.yml Outdated
@larsevj
larsevj force-pushed the add_python3.14_support branch 2 times, most recently from dbf806b to 60bff2b Compare March 3, 2026 14:36
@andreas-el andreas-el added this to SCOUT Mar 4, 2026
@andreas-el andreas-el removed this from SCOUT Mar 4, 2026
@andreas-el andreas-el added this to SCOUT Mar 4, 2026
@andreas-el andreas-el moved this to Ready for Review in SCOUT Mar 4, 2026
Comment thread .github/workflows/bundle_with_dakota_macos.yml
fi

pip install delocate==0.10.7
pip install delocate

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is very interesting and some story to it.
Perhaps this only affects the 'large' runners. 🤷
matthew-brett/delocate#214

Regardless, this would surface during the assembly of the wheels or testing for sure.

@larsevj larsevj Mar 4, 2026

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Think it looks correct with newest delocate:

carolina-2.0.3.dev3+ge2ebb967a-cp313-cp313-macosx_15_0_arm64.whl

, but with the update to macos-15-arm we will remove support for macos-14-arm (What previous version of Carolina required.)

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is also fine. Since there are no changes to Dakota itself, any user requiring older support could just use the current version of Carolina.

Comment thread dakota_manylinux_install_files/build_wheels_gha.sh Outdated
Comment thread dakota_manylinux_install_files/build_deps_docker.sh Outdated
@larsevj
larsevj force-pushed the add_python3.14_support branch from 29008ad to 855ad63 Compare March 4, 2026 13:10
@larsevj
larsevj requested a review from Copilot March 4, 2026 13:30
@larsevj larsevj self-assigned this Mar 4, 2026

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates the project’s build/release tooling to support newer environments (notably adding Python 3.14 to metadata/CI) and modernizes Dakota/Boost wheel-building workflows across macOS and Linux.

Changes:

  • Add Python 3.14 to project classifiers and CI build matrices.
  • Update macOS/Linux wheel build pipelines (new runner/image targets, newer action versions, improved scripting, C++17 standard).
  • Harden and adjust dependency/build scripts (quoting, set -e(u), cmake constraints, patch/fix application during Dakota builds).

Reviewed changes

Copilot reviewed 10 out of 10 changed files in this pull request and generated 5 comments.

Show a summary per file
File Description
setup.py Adjust linker flags: macOS header padding for delocate; Linux -z origin wiring.
script/build_boost_dakota.sh Script hardening (set -eu), URL/quoting fixes, C++17, JEGA hotfix, cmake constraint.
pyproject.toml Add Python 3.14 trove classifier.
dakota_manylinux_install_files/build_wheels_gha.sh Safer bash settings/quoting, venv setup improvements, auditwheel usage updates.
dakota_manylinux_install_files/build_deps_gha.sh Script hardening, uv-based Python install, patch application, C++17, GCC14 fix.
dakota_manylinux_install_files/build_deps_docker.sh Similar deps build improvements for local docker flow; patching + C++17.
dakota_manylinux_install_files/CMakeLists.txt.patch Adjust Dakota build system to include Python includes/threads and linker search paths.
.github/workflows/bundle_with_dakota_macos.yml Add Python 3.14 + macOS-15, update action versions, C++17, delocate install changes.
.github/workflows/bundle_with_dakota_linux.yml Add Python 3.14, update action versions, switch manylinux image, tweak test invocation.
.github/workflows/bundle_with_dakota_caller.yml Update caching/actions, adjust publish validation dependencies and PyPI publish action version.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

fi

pip install delocate==0.10.7
pip install delocate

Copilot AI Mar 4, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

delocate was previously pinned and is now installed unpinned. Because this is in the wheel build path, an upstream delocate release can break CI or change produced wheels unexpectedly; consider pinning to a known-good version (or at least a constrained range) for reproducible releases.

Suggested change
pip install delocate
pip install "delocate>=0.11.0,<0.12.0"

Copilot uses AI. Check for mistakes.
pip install -U pip
pip install twine
pip install packaging==25.0
pip install -U packaging

Copilot AI Mar 4, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Switching from a pinned packaging==... to pip install -U packaging makes the publish validation step non-reproducible and can break unexpectedly if a new packaging release changes behavior. Prefer pinning (or constraining) packaging to a tested version/range for release workflows.

Suggested change
pip install -U packaging
pip install "packaging==24.0"

Copilot uses AI. Check for mistakes.
Comment thread script/build_boost_dakota.sh
Comment thread dakota_manylinux_install_files/build_deps_gha.sh
Comment thread dakota_manylinux_install_files/build_deps_docker.sh
@larsevj
larsevj force-pushed the add_python3.14_support branch from 855ad63 to a062402 Compare March 4, 2026 13:39
@larsevj
larsevj requested a review from andreas-el March 4, 2026 13:40

@andreas-el andreas-el left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Mighty fine work sir! 🎖️

@github-project-automation github-project-automation Bot moved this from Ready for Review to Reviewed in SCOUT Mar 4, 2026
@larsevj
larsevj merged commit 1fdf252 into main Mar 4, 2026
14 checks passed
@github-project-automation github-project-automation Bot moved this from Reviewed to Done in SCOUT Mar 4, 2026
@larsevj
larsevj deleted the add_python3.14_support branch June 11, 2026 08:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Archived in project

Development

Successfully merging this pull request may close these issues.

Build fails on macOS due to CMake version

4 participants