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

Fetch a precompiled version of Python instead of depending on one in the system #324

Closed
tonybaloney opened this issue Jan 9, 2025 · 4 comments · Fixed by #323
Closed

Comments

@tonybaloney
Copy link
Owner

Feature:

To bundled Python packages and ship them as nuget packages, it is unreasonable to expect the end user to have or know where Python is installed.

Use the new python-static-builds to have a simple zero-arguments locator which downloads and installs Python into a temporary folder and uses that for everything in CSnakes.

Related #322

@NimaAra
Copy link

NimaAra commented Jan 9, 2025

This is indeed what I have been doing for the past week to standardise my builds across platforms.

Can I suggest there to be an option to adopt uv and not just the stand-alone ptyhon builds. The uv venv --no-cache build and subsequent uv pip install --no-cache is an order of magnitude faster compared to the default pip install that WithPipInstaller() is currently using.

For the uv venv and uv pip install I suggest there be an option to pass in additional args e.g. --allow-existing, --relocatable etc.

@tonybaloney
Copy link
Owner Author

This is indeed what I have been doing for the past week to standardise my builds across platforms.

Great,

Can I suggest there to be an option to adopt uv and not just the stand-alone ptyhon builds

Yes that's coming. This is an easy way to install Python, then I can install uv and launchpad from there. I'm going to create another issue for uv support.

@tonybaloney
Copy link
Owner Author

I've only got 3.12 in there at the moment, I need to work out an indexing method since the builds from UV are only the latest minor version from 3.10-3.14.

@NimaAra
Copy link

NimaAra commented Jan 9, 2025

Yeah I only support 3.12 in my solution; Also worth noting there is no musl build as of now (in case one needs to run on Alpine for example). There has been an issue for a while and hopefully it shouldn't be much longer to address it.

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 a pull request may close this issue.

2 participants