Some corrections to the PEP text: platform.python_implementation() -------------------------------- The following text in the PEP needs to be updated: """ The platform module guesses the python implementation by looking for clues in a couple different sys variables [3]. However, this approach is fragile. """ Fact is, that sys.version parsing is documented to be done by the platform module (see the docs on sys.version), so implementations are free to provide patches in case they choose different ways of formatting sys.version. A sys.implementation record would make things easier for the platform module, though, so it's an improvement. sys.version ----------- sys.version is defined as "A string containing the version number of the Python interpreter plus additional information on the build number and compiler used. This string is displayed when the interactive interpreter is started. Do not extract version information out of it, rather, use version_info and the functions provided by the platform module. It's not defined as "version of the Python language" as the PEP appears to indicate. Other things: Making sys.implementation a dictionary -------------------------------------- This is not a good idea, since it allows for monkey-patching the values and will also result in new undocumented or per-implementation keys. Better use a namedtuple like we do for all other such informational resources. sys.implementation information ------------------------------ While I'm not sure whether details such as VCS URLs and revision ids should really be part of a data structure that is supposed to identify the implementation (sys.version is better for that), if you do want to add such information, then please add all of it, not just part of the available build information. See platform._sys_version() returns (name, version, branch, revision, buildno, builddate, compiler). -- Marc-Andre Lemburg eGenix.com Professional Python Services directly from the Source (#1, May 03 2012)
Python/Zope Consulting and Support ... http://www.egenix.com/ mxODBC.Zope.Database.Adapter ... http://zope.egenix.com/ mxODBC, mxDateTime, mxTextTools ... http://python.egenix.com/
2012-04-26: Released mxODBC 3.1.2 http://egenix.com/go28 2012-04-25: Released eGenix mx Base 3.2.4 http://egenix.com/go27 ::: Try our new mxODBC.Connect Python Database Interface for free ! :::: eGenix.com Software, Skills and Services GmbH Pastor-Loeh-Str.48 D-40764 Langenfeld, Germany. CEO Dipl.-Math. Marc-Andre Lemburg Registered at Amtsgericht Duesseldorf: HRB 46611 http://www.egenix.com/company/contact/