Skip to content

Update get-extensions and setup-environment logic for new major release of extensions#1768

Open
mrmundt wants to merge 8 commits intoIDAES:mainfrom
mrmundt:new-idaes-ext
Open

Update get-extensions and setup-environment logic for new major release of extensions#1768
mrmundt wants to merge 8 commits intoIDAES:mainfrom
mrmundt:new-idaes-ext

Conversation

@mrmundt
Copy link
Copy Markdown
Contributor

@mrmundt mrmundt commented Apr 15, 2026

Fixes #1248, #1583 , #1562 , #1536

Summary/Motivation:

Who wants new extension versions?

WE DO!

This PR implements the changes necessary to support both old and new versions of IDAES extensions in a lovely, compatible way. There are probably a plethora of opportunities for debate on exact implementations, so go forth and argue.

That being said, this does currently work for both <4 and >=4 releases. NOTE that I know there are some failing tests, and I am going to need some guidance/help on how to fix them. I wanted this open for the visibility of those and to enable discussion.

Changes proposed in this PR:

  • Update supported OS' map
  • Make failure messages a bit stronger
  • No longer assume that all of the executables and libraries are in bin_directory; be more layout/release aware
  • Add in functionality to parse old and new license/version info files
  • Add in functionality to setup the environment correctly on all OS' for both old and new layout structures
  • Warn if someone is trying to install >= 4 release stuff but they still have < 4 items in their IDAES path
  • Make petsc-finding logic compatible for both old and new layouts
  • Tests tests tests

Legal Acknowledgement

By contributing to this software project, I agree to the following terms and conditions for my contribution:

  1. I agree my contributions are submitted under the license terms described in the LICENSE.txt file at the top level of this directory.
  2. I represent I am authorized to make the contributions and grant the license. If my employer has rights to intellectual property that includes these contributions, I represent that I have received permission to make contributions and grant the required license on behalf of that employer.

@codecov
Copy link
Copy Markdown

codecov bot commented Apr 15, 2026

Codecov Report

❌ Patch coverage is 52.20126% with 76 lines in your changes missing coverage. Please review.
✅ Project coverage is 73.81%. Comparing base (6258f28) to head (71a92c2).

Files with missing lines Patch % Lines
idaes/commands/extensions.py 7.27% 51 Missing ⚠️
idaes/commands/util/download_bin.py 79.31% 8 Missing and 4 partials ⚠️
idaes/config.py 70.00% 8 Missing and 1 partial ⚠️
idaes/core/solvers/petsc.py 75.00% 1 Missing and 3 partials ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1768      +/-   ##
==========================================
- Coverage   73.83%   73.81%   -0.02%     
==========================================
  Files         419      419              
  Lines       66225    66323      +98     
  Branches    11122    11156      +34     
==========================================
+ Hits        48894    48957      +63     
- Misses      14794    14821      +27     
- Partials     2537     2545       +8     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@ksbeattie ksbeattie added the Priority:High High Priority Issue or PR label Apr 16, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Priority:High High Priority Issue or PR

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Update IPOPT version to 3.14

2 participants