Two minor changes for Argument Clinic. * Added a "version" directive, so a programmer can require a specific version (or better) of Clinic. * Finished off support for all the 'legacy' converters. The ones today were those that give off a "length" parameter. This was complicated by finally dealing properly with the Py_buffer conversion stuff. To properly handle length parameters, I had to support PY_SSIZE_T_CLEAN being turned off (when are we gonna throw that away?). So I added a new type to pyports.h, Py_ssize_clean_t, which is either an int or a Py_ssize_t depending on PY_SSIZE_T_CLEAN. I've run out of gas and am going to bed. I know I have two TODO items in the diff so far; I'll deal with those tomorrow. But can I get a quick review of the rest, so I can get this in tomorrow?
Attached is a fresh patch. I added a third new feature: the "self converter", which allows you to change the type of (or rename) self. For an example of its use, check out dbm.dbm.get in Modules/_dbmmodule.c.