Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

pyoptsparse v2.11.0 #47

Merged
merged 6 commits into from
Apr 26, 2024
Merged

Conversation

regro-cf-autotick-bot
Copy link
Contributor

It is very likely that the current package version for this feedstock is out of date.

Checklist before merging this PR:

  • Dependencies have been updated if changed: see upstream
  • Tests have passed
  • Updated license if changed and license_file is packaged

Information about this PR:

  1. Feel free to push to the bot's branch to update this PR if needed.
  2. The bot will almost always only open one PR per version.
  3. The bot will stop issuing PRs if more than 3 version bump PRs generated by the bot are open. If you don't want to package a particular version please close the PR.
  4. If you want these PRs to be merged automatically, make an issue with @conda-forge-admin,please add bot automerge in the title and merge the resulting PR. This command will add our bot automerge feature to your feedstock.
  5. If this PR was opened in error or needs to be updated please add the bot-rerun label to this PR. The bot will close this PR and schedule another one. If you do not have permissions to add this label, you can use the phrase @conda-forge-admin, please rerun bot in a PR comment to have the conda-forge-admin add it for you.

Dependency Analysis

Please note that this analysis is highly experimental. The aim here is to make maintenance easier by inspecting the package's dependencies. Importantly this analysis does not support optional dependencies, please double check those before making changes. If you do not want hinting of this kind ever please add bot: inspection: disabled to your conda-forge.yml. If you encounter issues with this feature please ping the bot team conda-forge/bot.

Analysis by source code inspection shows a discrepancy between it and the the package's stated requirements in the meta.yaml.

Packages found by source code inspection but not in the meta.yaml:

  • dash
  • plotly
  • dash-core-components
  • matplotlib
  • dill
  • arm_pyart
  • dash-html-components

This PR was created by the regro-cf-autotick-bot. The regro-cf-autotick-bot is a service to automatically track the dependency graph, migrate packages, and propose package version updates for conda-forge. Feel free to drop us a line if there are any issues! This PR was generated by https://github.com/regro/cf-scripts/actions/runs/8837120817 - please use this URL for debugging.

@conda-forge-webservices
Copy link

Hi! This is the friendly automated conda-forge-linting service.

I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.

@conda-forge-webservices
Copy link

Hi! This is the friendly automated conda-forge-linting service.

I wanted to let you know that I linted all conda-recipes in your PR (recipe) and found some lint.

Here's what I've got...

For recipe:

  • Non noarch packages should have python requirement without any version constraints.

@marcomangano
Copy link
Contributor

@conda-forge-admin, please rerender

Copy link

Hi! This is the friendly automated conda-forge-webservice.

I tried to rerender for you, but it looks like there was nothing to do.

This message was generated by GitHub actions workflow run https://github.com/conda-forge/pyoptsparse-feedstock/actions/runs/8837836039.

@conda-forge-webservices
Copy link

Hi! This is the friendly automated conda-forge-linting service.

I wanted to let you know that I linted all conda-recipes in your PR (recipe) and found some lint.

Here's what I've got...

For recipe:

  • Selectors are suggested to take a <two spaces>#<one space>[<expression>] form. See lines [15]
  • Old-style Python selectors (py27, py35, etc) are only available for Python 2.7, 3.4, 3.5, and 3.6. Please use explicit comparisons with the integer py, e.g. # [py==37] or # [py>=37]. See lines [15]

@conda-forge-webservices
Copy link

Hi! This is the friendly automated conda-forge-linting service.

I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.

@marcomangano
Copy link
Contributor

@conda-forge-admin, please rerender

@ewu63
Copy link
Contributor

ewu63 commented Apr 25, 2024

Hmm so I didn't realize we require >3.8, which IMO is a little counter-intuitive. I personally don't think the minimum support/tested versions should be specified as minimum build/run requirements, especially for something like python where 3.8 has yet to reach EOL. I kind of just ignored mdolab/pyoptsparse#388 without really thinking about its consequences.

In general, I think these version specifications should not really be in setup.py or meta.yaml, since there's nothing wrong with running 3.8 and it should work. We can choose to not test or officially support such versions, but this is a little limiting. Also, I don't think we'll want to do this across the MACH stack with all the setup.py files. Maybe something to discuss with the lab first and then come back to this?

@marcomangano
Copy link
Contributor

Hmm so I didn't realize we require >3.8, which IMO is a little counter-intuitive. I personally don't think the minimum support/tested versions should be specified as minimum build/run requirements, especially for something like python where 3.8 has yet to reach EOL. I kind of just ignored mdolab/pyoptsparse#388 without really thinking about its consequences.

In general, I think these version specifications should not really be in setup.py or meta.yaml, since there's nothing wrong with running 3.8 and it should work. We can choose to not test or officially support such versions, but this is a little limiting. Also, I don't think we'll want to do this across the MACH stack with all the setup.py files. Maybe something to discuss with the lab first and then come back to this?

I see your point, but we had quite long conversations internally and afaik we are going towards enforcing minimum requirements (hence the new minor version) across the whole stack. Maybe @eirikurj can chime in, or we can have an offline conversation.

@ewu63
Copy link
Contributor

ewu63 commented Apr 26, 2024

I see that we adopted SPEC 0 for the lab, which I'm okay with. But then, shouldn't we be dropping py3.9 support also? See diagram here.

Anyway, we can discuss separately, I have no issues with this PR otherwise. Given that 2.11.0 has been released with these stated minimum versions, this PR looks good.

@marcomangano
Copy link
Contributor

I see that we adopted SPEC 0 for the lab, which I'm okay with. But then, shouldn't we be dropping py3.9 support also? See diagram here.

Anyway, we can discuss separately, I have no issues with this PR otherwise. Given that 2.11.0 has been released with these stated minimum versions, this PR looks good.

Good catch - we have a set of ad-hoc exemptions on SPEC 0. In this case we will keep supporting py39 because some of the HPC systems we have access to still use it as "latest" version available.

@ewu63 ewu63 merged commit b93d0ec into conda-forge:main Apr 26, 2024
22 checks passed
@regro-cf-autotick-bot regro-cf-autotick-bot deleted the 2.11.0_hc410b9 branch April 26, 2024 21:13
@eirikurj
Copy link
Contributor

Just to follow up briefly, as @marcomangano mentioned, we decided to deviate from SPEC 0 for python as we thought it was too limiting. For stable python specifically, we select the oldest of:

  • The most recent patch version of the latest official release 3 years ago
  • The most recent version available on HPC systems
    However, as you mentioned, we could differentiate build and test dependencies, and perhaps we should do that. I am more than happy to discuss this offline also.

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.

4 participants