Category archives: Snaking

Discussions of programming, particularly of programming Python

RSS feed of Snaking

Django Field Rename Migrations and Test Cases

Is there some trick to running Django test cases when you've got a RenameField later in the migration-stack? I feel like this has to be some obvious thing I'm missing...

With a migration (say 0058_big_restructure.py) which does this:


migrations.RenameField(
model_name='rfsource',
old_name='source_name',
new_name='follow_source_name',
),

and a previous migration, (say 0006_long_ago_change_that_populates_some_other_field.py) which doesn't explicitly reference the source_name ...

Continue reading

PycraftServer Plugin

So the boys (and their cousin) are both into Minecraft again, so I've been refining the Pycraft code quite a bit. We no longer use the RaspberryJuice plugin, but instead have a custom Bukkit plugin that does Java reflection/introspection to auto-generate the API. That lets us do a lot more, manipulate inventories, read and write ...

Continue reading

Adding a Certificate Authority to Chrome Trust Store

So you have a corporate or project specific root of trust you need Chrome to recognise. How do you take your PEM certificate as you get from easy-rsa or the like and make it something that Chrome will accept? The answer is not particularly complex, but it really seems like this very-common process is not ...

Continue reading

PyOpenGL Build Enhancements

Spent the evening getting the Python 3.9 build for PyOpenGL-accelerate running on Appveyor. In the end it was just knowing to add a tag "APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019" to the build-matrix for that one Python version so that it is built on the Python 3.9-compatible build-image. Will have to boot into Windows to test that ...

Continue reading

RunSnakeRun 3.0.0 Beta 1

So I finally sat down and finished off the work I was doing a while ago to get RunSnakeRun updated to run on Python 3 and support pyspy/speedscope files. There was a bunch of stuff needed to make us compatible with the wxPython Pheonix releases, a huge and horrible hack to let us load Python2 ...

Continue reading

Listener GUI Started

So with the code-context, the dictation in Listener is getting okay-ish. It's still pretty frustrating and error prone, but I can use it maybe 1/4 of the time (mostly for doc-strings). Part of the frustration is just that the language models are not yet well tuned for some commonly needed phrases that the tokeniser didn't ...

Continue reading

Auto-link a Host-provided Package into a Virtualenv

There are Python packages that are basically a PITA to get compiled into your virtualenv. The one I constantly hit when doing GStreamer, DBus, IBus, etc is gobject-introspection (a.k.a. gi). So, there's now a trivial package available:

source path-to-venv/bin/activate
pip install venvhpl
venv-hpl gi

Listener v2, using DeepSpeech for Coding on Linux

So a few years ago, as I was working on a project called Listener that used PocketSphinx to allow dictation into the Eric IDE, I got some feedback suggesting that the only practical solution these days would be to use a neural network based dictation engine. That led me down a rabbit hole from which ...

Continue reading

Playing with EGL+OpenGL Off-screen Multi-Card

So I've now spent the last day and a half playing with getting EGL offscreen rendering working on Linux. There are two major ways to do off-screen rendering with EGL and OpenGL. In the first, you use a pbuffer surface, that surface is basically a purpose-defined surface-type for off-screen backing of a renderer. When I ...

Continue reading

Started work on getting py-spy/speedscope in RunSnakeRun

So having finally written down the thoughts on a carbon tax, that kept distracting me from actually working on Open Source, I finally got a bit of work done on Open Source on the last night of the vacation.

What I started work on was getting a sampling profiler format supported, and for that ...

Continue reading