Plus I fixed a bug nobody had reported:
* boolean options now work: previously, "force=0" resulted in an attribute 'force' being set to the string "0", which of course is true. As an extra bonus, you can now use a variety of sensible representations of true and false: yes, y, t, true, 1, on for true, and no, n, f, false, 0, off for false.
Does not work with command line options. Example: C:\sf\lpfw>setup.py build_ext -f running build_ext Traceback (innermost last): File "C:\sf\lpfw\setup.py", line 41, in ? ext_modules = [_ctypes, ExtensionClass, xxtype], File "c:\work\orion\src\Fpanel\Python\distutils\core.py", line 138, in setup dist.run_commands() File "c:\work\orion\src\Fpanel\Python\distutils\dist.py", line 828, in run_commands self.run_command(cmd) File "c:\work\orion\src\Fpanel\Python\distutils\dist.py", line 846, in run_command cmd_obj = self.get_command_obj(command) File "c:\work\orion\src\Fpanel\Python\distutils\dist.py", line 726, in get_command_obj self._set_command_options(cmd_obj, options) File "c:\work\orion\src\Fpanel\Python\distutils\dist.py", line 761, in _set_command_options setattr(command_obj, option, strtobool(value)) File "c:\work\orion\src\Fpanel\Python\distutils\util.py", line 284, in strtobool val = string.lower(val) TypeError: read-only character buffer, int string.lower(val) is called with the integer 1 (not the string "1"). Thomas