From PyPI to Production: Shipping Software Responsibly.
Most, if not all, Python developers know how to create a wheel on PyPI - however, that's just the first step in delivering a product in a responsible manner to your users. As a publisher, it is your responsibility to ensure that you are able to deliver software updates to your users quickly, safely, and reliably.
- How will users who have installed your application know to update when there's a critical security bug that needs to be fixed?
- How do you manage users that want to install a beta version of your application, effectively trading stability for the latest features?
- How do you handle multiple stable release series simultaneously?
When faced with these and similar issues, most Python developers will quickly come to the realisation that PyPI is simply not suitable for releasing applications to users. Fortunately there's a solution: Using snap packages you too can ship Python-based software in a responsible manner. Starting from a simple Python application I will demonstrate the following:
- How snap packages can be created and shipped to users.
- How snap packages make automated software updates easy.
- How users can pick the level of risk they're willing to take when using your software.
Shipping Python-based applications has always been painful. Snap packages make it easy. Come and see how!
Thomi is a passionate advocate for high quality software, and has presented at conferences on this topic several times in the past. Thomi is a software engineer at Canonical Ltd, where he works on the Ubuntu Core product. Hailing from Dunedin, New Zealand (that's the "Eastern Island", to those of you from Australia) he's excited to join the Australian Python community for the first time.