Why I’m not (too) worried about Python 2

Python 2 will retire in about one month. Given many organizations continued reliance on it, you may be asking “Now What?” What does this change mean for a company that heavily relies on a deprecated language? Many times, the Python 2 deployed in an organization still generates a lot of value. Yet as this code continues to age, you expose ourselves to potential security vulnerabilities with fewer avenues to address them....

November 25, 2019 · 5 min · Kevin Sookocheff

Introducing CloudPyPI

A common problem with Python development for large-scale teams is sharing internal libraries. At Vendasta we’ve been solving this problem using a private PyPI installation running on Google App Engine with Python eggs and wheels being served by Google Cloud Storage. Today, we are announcing the open source version of this tool — CloudPyPI. CloudPyPI is a modification of pypiserver for running on Google App Engine. We’ve also introduced a simple user management system to allow authenticated access to your Python packages....

June 16, 2015 · 1 min · Kevin Sookocheff

Halting Python unittest Execution on First Error

We all know the importance of unit tests. Especially in a dynamic language like Python. Occasionally you have a set of unit tests that are failing in a cascading fashion where the first error case causes subsequent tests to fail (these tests are likely no longer unit tests, but that’s a different discussion). To help isolate the offending test case in a see of failures you can set the unittest.TestCase class to halt after the first error by overriding the run method as follows....

February 12, 2015 · 1 min · Kevin Sookocheff

A pypiserver Deployment Script

At Vendasta we’ve been slowly adopting pypi and pip for our internal code libraries and the time has come to deploy our own private pypi server. After evaluating a few options I settled on the simplistic pypiserver – a barebones implementation of the simple HTTP API to pypi. The deployment uses nginx as a front-end to pypiserver. pypiserver itself is ran and monitored using supervisord. I created a bash script that creates a user and group to run pypiserver and installs and runs nginx, supervisord and pypiserver....

February 1, 2015 · 2 min · Kevin Sookocheff

Installing lxml on OS X Mavericks

I recently tried installing lxml for use within an App Engine project on OS X Mavericks only to be hit with an error message from clang. ...

May 7, 2014 · 1 min · Kevin Sookocheff