making python scripts backwards compatible

Steve Holden sholden at holdenweb.com
Mon May 6 08:01:37 EDT 2002


"J.Jacob" <joost_jacob at hotmail.com> wrote in message
news:13285ea2.0205042356.15ab8c30 at posting.google.com...
> [Brian Quinlan]
> > ... I wrote the
> > module is question and, before reading this thread, I had no idea what
> > the version requirements were (1). Are patch writers also required to
> > test against multiple Python versions?
> >
>
> My post was in no way meant to say something bad about your module,
> the module is great, the coding is clear, it has comments; so it was
> not too much work for me to make it backwards compatible.  Just one
> list comprehension and the odd "".split syntax.  It was just the last
> one i did, chance.  As you mention in an earlier post many people are
> volunteers and simply do not have enough time to add code for
> backwards compatibility.  I would much rather have that you keep
> producing good modules I have to adapt, than that you don't.  Keep up
> the good job please!

...and of course you *did* make sure your patches are available so others
needing the same feature can easily get hold of them, right?

...and, if so, you *are* going to track future changes to the module so your
backward-s compatible version remains forward-compatible to later Pythons,
right?

There seems to be an attitude that somehow it's possible to build software
systems so that individual components can be just made to drop into a system
together without any need to trim anything around the edges to fit. While a
lot can be done with good engineering techniques, I would like to reminfd
the group that ultimately the thing that holds a software system together is
*work* and *understanding*.

While it may be annoying that changes (remarkably few of them, I still
insist, but that's another thread...) are needed to move software forward
from one environment to another, it's simpy unreasonable (for reasons such
as those Brian outlined) to expect contributors to take your particular
environment into account. When they haven't, then the appropriate response
is the one you outlined above (make it work in your environment).

So, in turn, I'm not trying to say anything bad about your response, simply
using it to illustrate the point that software, while extremely elastic,
cannot easily be all things to all people.

regards
 Steve
--

Steve Holden: http://www.holdenweb.com/ ; Python Web Programming:
http://pydish.holdenweb.com/pwp/








More information about the Python-list mailing list