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

Rebuild for python 3.13 #49

Open
wants to merge 5 commits into
base: main
Choose a base branch
from

Conversation

regro-cf-autotick-bot
Copy link
Contributor

This PR has been triggered in an effort to update python313.

Notes and instructions for merging this PR:

  1. Please merge the PR only after the tests have passed.
  2. Feel free to push to the bot's branch to update this PR if needed.

Please note that if you close this PR we presume that the feedstock has been rebuilt, so if you are going to perform the rebuild yourself don't close this PR until the your rebuild has been merged.


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.

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 - please use this URL for debugging.

@conda-forge-webservices
Copy link
Contributor

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/meta.yaml) and found it was in an excellent condition.

I do have some suggestions for making it better though...

For recipe/meta.yaml:

  • No valid build backend found for Python recipe for package biopython using pip. Python recipes using pip need to explicitly specify a build backend in the host section. If your recipe has built with only pip in the host section in the past, you likely should add setuptools to the host section of your recipe.

@peterjc
Copy link
Contributor

peterjc commented Sep 8, 2024

ModuleNotFoundError: No module named 'setuptools'

@peterjc
Copy link
Contributor

peterjc commented Sep 9, 2024

This is still not finding setuptools.

Note even if it did get further, we have an expected failure in the C code now on Biopython 1.84 with Python 3.13, see biopython/biopython#4706 (comment)

Copy link
Member

@jakirkham jakirkham left a comment

Choose a reason for hiding this comment

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

Thanks Peter! 🙏

We need to move setuptools to requirements/host. Included suggestions below

More details in issue: conda-forge/conda-forge.github.io#2252

recipe/meta.yaml Show resolved Hide resolved
recipe/meta.yaml Outdated Show resolved Hide resolved
@conda-forge-admin
Copy link
Contributor

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/meta.yaml) and found it was in an excellent condition.

@jakirkham
Copy link
Member

Thanks Peter! 🙏

Looks like that helped 😄


We are now seeing a new error on CI:

import: 'Bio.cpairwise2'
Traceback (most recent call last):
  File "/home/conda/feedstock_root/build_artifacts/biopython_1729769090684/test_tmp/run_test.py", line 152, in <module>
    import Bio.cpairwise2
ImportError: /home/conda/feedstock_root/build_artifacts/biopython_1729769090684/_test_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placeh/lib/python3.13/site-packages/Bio/cpairwise2.cpython-313-x86_64-linux-gnu.so: undefined symbol: PyEval_CallObject

The error is pointing out that PyEval_CallObject was removed in Python 3.13. Here is the relevant release entry:

Remove various functions deprecated in Python 3.9:

Looks like this may have already been fixed upstream ( biopython/biopython#4706 ). Though it doesn't appear to be in a release yet. Perhaps following up with upstream on a new release would be the next step

@peterjc
Copy link
Contributor

peterjc commented Oct 24, 2024

Excellent - that's the expected failure I was alluding to earlier, #49 (comment)

We have started talking about Biopython 1.85 https://lists.open-bio.org/pipermail/biopython/2024-September/017067.html but there are still some other loose ends to settle.

We could backport the fix here in the Biopython 1.84 recipe if there was demand...

@jakirkham
Copy link
Member

Thanks Peter! 🙏

Missed that note

If that is the only needed change, it seems reasonable to include

GitHub has a neat trick to create a patch, which is to take a PR URL and add .patch. Then it will generate a patch for it

For example: https://github.com/biopython/biopython/pull/4706.patch

We could include that here with a comment referencing the PR. The next release would generate a conflict, which would be a good reminder to drop the patch (simple to do)

That said, if you would rather have this in a proper release and align support across distributions. Would understand that perspective as well

@peterjc
Copy link
Contributor

peterjc commented Oct 25, 2024

I like the patch idea - the Biopython release is at least a week away (based on my availability) without checking with the other maintainers on new potential blockers.

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