Skip to content

[main] Split shared Python library to libpython - #894

Open
h-vetinari wants to merge 11 commits into
conda-forge:mainfrom
h-vetinari:libpython
Open

[main] Split shared Python library to libpython#894
h-vetinari wants to merge 11 commits into
conda-forge:mainfrom
h-vetinari:libpython

Conversation

@h-vetinari

Copy link
Copy Markdown
Member

Partial backport of #842, specifically 6eeda71, as suggested in #885. I also picked up another useful commit from the dev branch while rebasing. Once this PR (and a rebased #885) are merged, I'm happy to backport the pair as combined PRs to the maintenance branches.

@conda-forge-admin

conda-forge-admin commented Aug 9, 2026

Copy link
Copy Markdown
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:

  • ℹ️ The recipe is not parsable by parser conda-souschef (grayskull). This parser is not currently used by conda-forge, but may be in the future. We are collecting information to see which recipes are compatible with grayskull.
  • ℹ️ The recipe is not parsable by parser conda-recipe-manager. The recipe can only be automatically migrated to the new v1 format if it is parseable by conda-recipe-manager.

This message was generated by GitHub Actions workflow run https://github.com/conda-forge/conda-forge-webservices/actions/runs/31789912087. Examine the logs at this URL for more detail.

@h-vetinari

Copy link
Copy Markdown
Member Author

Rebased after #888. Could you PTAL @conda-forge/python? :)

@h-vetinari

Copy link
Copy Markdown
Member Author

@conda-forge-admin, please relint

@isuruf isuruf left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

libpython should be a dependency of python for python<3.15 to not break anything downstream

@h-vetinari

Copy link
Copy Markdown
Member Author

Hm. So I guess I need to switch the build order here. Conda can't figure out to build python before libpython and then run-depend on the latter for the former.

Also, quick question, I just stumbled upon https://github.com/conda-forge/libpython-feedstock/blob/main/recipe/meta.yaml (by looking through the package metadata for existing libpython builds, but I can't see those from the python_rc label) - do we need to guard against co-installation with that?

@isuruf

isuruf commented Aug 13, 2026

Copy link
Copy Markdown
Member

We should move feedstocks to use distutils-activate-mingw and remove that output there.

@h-vetinari

Copy link
Copy Markdown
Member Author

And repodata-patch existing users of libpython to point to distutils-activate-mingw and then mark existing libpython builds as broken?

split existing `build_base.{sh,bat}` into `build.sh`/`bld.bat` and
`install_base.{sh,bat}`.
@h-vetinari

Copy link
Copy Markdown
Member Author

libpython should be a dependency of python

This turned into a pretty big operation (and likely still contains bugs). Not sure if this is along the lines of what you had in mind.

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