[Python-Dev] Is adding support for os.PathLike an enhancement or bugfix?

Terry Reedy tjreedy at udel.edu
Fri May 5 17:34:00 EDT 2017


On 5/5/2017 3:36 PM, Chris Barker wrote:
> Sorry to come late to the game, It wasn't immediately clear to me what 
> the implications were of the "enhancement or bugfix" distinction...

An enhancement changes the definition of the Python language, a bugfix 
does not.  Enhancements can only be part of a new version of Python.  A 
bugfix can potentially go in any 'active' implementation that has the bug.

'Python 3.6' is a version of Python.  The Python 3.6 docs more-or-less 
define the Python 3.6.  Subsequent doc patches refine and clarify the 
definition, but should not change it.  New doc patches are released 
daily on docs.python.org.

CPython 3.6.0 was the first full implementation of Python 3.6, whose 
definition was mostly fixed at the first beta.  CPython 3.6.1 was the 
next officially released implementation *of the same Python 3.6 
language*, but with some implementation bugs fixed. The same will be 
true of 3.6.2, etcetera.

If someone privately compiles cpython as it is at some time today, it 
will be an implementation of 3.6 that is hopefully better than 3.6.1 and 
worse than the future 3.6.2, but will not be either.  Call it 
3.6.(datetime).  3rd party distributions based on CPython can muddy 
things even further by selectively incorporating upstream patches, so 
that XYZ Python 3.6(.whatever) does not correspond to any date-stamped 
or released version of repository CPython.

> So it would be really great if any updates to shutils (and other stdlib 
> packages) to support the new protocol be back-ported.

Not if they change the language.

-- 
Terry Jan Reedy



More information about the Python-Dev mailing list