Python 3 Support in VFX Pipelines

Late last year, I was looking to find out where VFX stands as an industry in regards to python 3 support.

I knew that good people around VFX Reference Platform are keeping tabs on the general coverage for major DCCs and libraries via google spreadsheet and, like most pipeline TDs, I kept an eye on general developments in this area myself.

The question around switching to Python 3 was popping up more and more at work, but unlike most of the Python world outside, we kept lagging and it was hard to explain why.

Mostly it was hard to explain to management and those who didn’t have their hands heavily dipped into VFX pipelines directly.

I had a free weekend and decided it should be easy enough (and hopefully useful) to present this information in a clear and visually succinct way.

I remembered how, years ago, someone created a site to show popular projects on PYPI which use wheels, and a similar site which tracked python 3 support among such projects (said site is, unfortunately, down at the moment). I felt those cases helped people push through transitional times and, for the late arrivals, gain confidence once a good chunk of them were ported to the new paradigms.

So… I bought the shortest domain that made sense, and cobbled up a shameless copy but fitted for our purposes:

How it works

The site works by checking a google spreadsheet I mentioned before (on daily bases) and notifies me about any changes that occur. After vetting those changes, I push them to my own private spreadsheet. AWS Lambda Function than reads it and generates the data shown on the website. It saves output to JSON file on S3 which is used to build the graph. Site itself is hosted on S3 bucket and distributed via CloudFront.

I would have loved to make it more automated than that. It is unfortunate that it has to rely on me and other people to update the data but we do not have anything like an indexing site for these “packages” that we could query and build the dataset.

It’s kind of ironic, isn’t it – pipeline is, after all, about automation and avoidance of human input for error prone actions, but here we are.


Thanks to vfxplatform for including the link to the site on their page.