The python page here says:
Here are some snap advantages that will benefit many Python projects:
Bundle all the runtime requirements, including the exact versions of system libraries and the Python interpreter.
I didn’t see much documentation on doing that so I went to the forums. Then I don’t even see a reply to this post. I additionally found this blog post.
I don’t want to be pessimistic, but it seems Snapcraft is leaving an awful lot of opportunity for improving their python support out there. Am I missing a cache of documents or examples somewhere?
If Canonical is interested in getting snap used more in the python world they are likely going to have to provide some of the conveniences of docker. It is easy to target python versions in docker and there are alpine images with all the python versions already available.
something like this in the yaml file:
plugin: python3.6 (newest in 3.6 series) plugin: python3.6.0 (specific version) … plugin: python 3.6.6 (specific version) plugin: python3.7 (newest in 3.7 series)
These should be readily downloadable in compiled form for Intel and ARM platforms.
Compiling python is a time consuming process (especially on slower IoT devices). And downloading a bunch of dev libs and tools over slow and expensive cellular links is not really feasible. Would the compilation occur every time somebody did a snap install? (Are the compiled versions stored online to save someone the time afterwards? Is “autotools” downloaded if the compiled code is available?
Thanks, Scott