[proposal] Pyfans pip installable setup #126
Draft
+16,294
−4,125
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This is a purely suggestion on how to include pyfans in the fans repo, which might come in handy at some point in time. Just noticed this branch still lying around...
This leads to
pyfansbeing able to be installed bycd pyfans; ${PYTHON} -m pip install --no-deps --no-build-isolation -vv .given the correct dependencies installed.This is done by using the scikit-build-core backend which is able to trigger the cmake build with the corresponding flag, and then puts all binaries etc in the correct
site-packagesdirectory on the pythonpath.This could also be used to create a subpackage
pyfansas output from the fans-feedstock, by installing it viapip installand therefore putting it into the correct places, without much more work, basically plug-and-play.Furthermore this includes the setup for the repo for pyfans to be a second pixi-build-package which is only packaged for a specific feature/environment to allow for testing.
In this way, it would be possible to include a valid python-package without altering the cmake build process or else for the pure C++ package. It yields some code-duplication in regard to versions and dependencies, but it is completely seperate by still being usable.