Skip to content

Conversation

@ewu63
Copy link
Collaborator

@ewu63 ewu63 commented Apr 13, 2025

Purpose

SWIG used to be an optional dependency, but nowadays it is hosted on pyPI and relatively easy to include. Therefore, I propose that we make SWIG a required build dep and therefore NSGA2 an optimizer that is built by default. This will also hopefully simplify some issues people have regarding installation.

Expected time until merged

A few days, preferably after #434.

Type of change

  • Bugfix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (non-backwards-compatible fix or feature)
  • Code style update (formatting, renaming)
  • Refactoring (no functional changes, no API changes)
  • Documentation update
  • Maintenance update
  • Other (please describe)

Testing

Checklist

  • I have run flake8 and black to make sure the Python code adheres to PEP-8 and is consistently formatted
  • I have formatted the Fortran code with fprettify or C/C++ code with clang-format as applicable
  • I have run unit and regression tests which pass locally with my changes
  • I have added new tests that prove my fix is effective or that my feature works
  • I have added necessary documentation

@ewu63 ewu63 requested a review from a team as a code owner April 13, 2025 01:06
@ewu63 ewu63 requested review from marcomangano and sanjan98 April 13, 2025 01:06
@codecov
Copy link

codecov bot commented Apr 13, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 85.97%. Comparing base (3b50b66) to head (353aa81).
⚠️ Report is 3 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #435   +/-   ##
=======================================
  Coverage   85.97%   85.97%           
=======================================
  Files          22       22           
  Lines        3315     3315           
=======================================
  Hits         2850     2850           
  Misses        465      465           

☔ 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.

@marcomangano
Copy link
Collaborator

I think this makes a lot of sense!
FYI, the tests are passing, but then the Azure runner encounters a segfault at the very end:

.github/test_real.sh: line 14:  1804 Segmentation fault      (core dumped) testflo --pre_announce --disallow_deprecations -v --coverage --coverpkg pyoptsparse $EXTRA_FLAGS

@eirikurj
Copy link
Contributor

eirikurj commented Apr 16, 2025

This is probably the same issue that I reported in #340. I did look into this a bit and have a branch here with a few fixes. I need to take a look at this again, but I think there might be still some work to do there. Feel free to debug this and add to this branch.

@ewu63
Copy link
Collaborator Author

ewu63 commented Apr 20, 2025

Waiting for #438 to be merged first.

@marcomangano marcomangano mentioned this pull request Apr 21, 2025
13 tasks
@ewu63 ewu63 requested a review from eirikurj April 28, 2025 03:45
@marcomangano
Copy link
Collaborator

@eirikurj do you have comments or can we merge this?

Copy link
Contributor

@eirikurj eirikurj left a comment

Choose a reason for hiding this comment

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

looks good

@eirikurj eirikurj merged commit 61d8b83 into main Apr 28, 2025
18 checks passed
@eirikurj eirikurj mentioned this pull request Jul 28, 2025
13 tasks
@kanekosh kanekosh deleted the make-swig-mandatory branch August 1, 2025 03:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants