wasmtime-py icon indicating copy to clipboard operation
wasmtime-py copied to clipboard

Publish wheels to GitHub releases

Open tschneidereit opened this issue 4 years ago • 7 comments

Before splitting out wasmtime-py into its own repository, we also published the wheels to the Wasmtime releases. It'd be nice if we could do that again in this repo.

tschneidereit avatar May 24 '20 13:05 tschneidereit

Something like this sounds like a good idea. But what's the exact problem this would be solving? Is it so users don't need to download the Wasmtime library? Having to use the download-wasmtime.py script is certainly less than ideal.

Do you mean that the Wasmtime shared library used to be included in this package's predecessor's release? I'm late to the party here: where was wasmtime-py split out from?

On which note, I'm wondering what other packages in Python do, such as Lupa (lets you embed Lua in Python) and whether they always download the binary library, have that as an option, or have the user set an environment variable or otherwise tell the package where the binary is.

It looks like Lupa has you do something similar to the current wasmtime-py.

tobych avatar May 24 '20 18:05 tobych

@alexcrichton also addresses distributing binary wheels in a comment on another ticket.

tobych avatar May 24 '20 18:05 tobych

Oh I don't believe this is related to the wasmtime shared library at all, this is just about having artifacts in more places. I agre with @tschneidereit that it'd be best to upload these to GitHub Releases like we did previously. I don't think they'll be used all that often but it can't hurt!

alexcrichton avatar May 26 '20 15:05 alexcrichton

I just realize that perhaps this is perhaps mostly useful with a "moving tag release" (a Term I just made up) like the dev release we have for Wasmtime. But since we don't have that for wasmtime-py, maybe there's less value in this than I initially thought.

tschneidereit avatar May 26 '20 16:05 tschneidereit

Ah, I misunderstood what this ticket was about. I think that's because I've never published a wheel, and forgot that these days they're not just about packaging binaries, but about replacing the old way of distributing Python packages, to some extent.

tobych avatar May 26 '20 17:05 tobych

Something like this sounds like a good idea. But what's the exact problem this would be solving?

My interest in wheels is that I would like:

pip install wasmtime

To Just Work on as many platforms as possible (macOS, Windows, various Linuxes) even if the user doesn't have a C compiler or other supporting libraries and build tools installed.

That way if I add wasmtime as a dependency for any of my other projects I won't have to talk my users through the process of setting up a build environment!

simonw avatar Oct 17 '21 16:10 simonw

Theoretically that's already the case, but @simonw did that pip command not work for you?

(this is a pretty old issue and isn't so relevant any more and may actually be able to simply be closed)

alexcrichton avatar Oct 18 '21 15:10 alexcrichton