[Python-Dev] Re: Deprecation

Guido van Rossum guido@python.org
Thu, 30 May 2002 20:51:11 -0400

> > I guess I don't see why the error message should contain an
> > expiration date.  It's enough to know that the feature will expire
> > -- you can find more info in the docs.
> You may want to check that the python-version your program is
> running on might not have a certain feature or library any
> more. Just seeing an 'ImportError' leaves the user puzzled if he
> e.g. might have an installation problem.

Yes, they hve an installation problem. :-)  They are using a Python
version that's incompatible with the program.

I really don't see what you are proposing to do about this.  The
author of the program should know that it uses a deprecated module and
fix the program, rather than simply continuing to distribute it with
out change.  If the program is very old, the user who downloads it
should realize that it might no longer work.

> > > Additionally, if the above was based on versions you
> > > could implement the *deprecation process* today, no need
> > > to remember at which date some PEP mentioned something
> > > which has been forgotten for three years <wink> anyway. 
> > 
> > Define deprecation process.
> the citation above is a typical example for a 'deprecation process'.
> OK, you are a mathematician. i try harder...
> A deprecation process may be seen as an algorithm which determines
> the life time (or die-time?) of features and modules. 

I think this cannot and should not be determined algorithmically.

> > I don't think it's a good idea to try to
> > automate this.  I want a human to decide that a deprecated module is
> > really ready for deletion.  This involves many other factors besides
> > the originally promised deprecation date.
> automation does not mean there is no human intervention possible. 
> It would be horrible indeed if computers would take over python
> development, no flaming wars, less and less more general modules ... :-)
> Anyway, removing a module would certainly still require 
> human intervention but its *intended* deprecation/removal 
> could be specified precisely. If a feature lives longer 
> due to gods mercy <wink> than this is pure luck. You can
> hope for it but should not rely on it.
> I just happen to think that people and programs can work much 
> better with 'version 2.5 or 3.0' than 'some years after some 
> point in time' <wink>. 

I don't see the point.  Let's end this discussion.

--Guido van Rossum (home page: http://www.python.org/~guido/)