Dear sage-devel,


A while back we decided that we shouldn't just randomly break users'
existing code even if the reason is very good (e.g. there are 20 names
for the exact same thing, and 19 of them are just bad, or we want to
change to a better convention for something).  The idea was that
features, names, etc. should not simply be removed, but they should be
deprecated; so they would continue to work just as before for a while,
but they would display a DeprecationWarning whenever they are used.  I
guess the idea is that the user would eventually get tired of seeing
the warning and finally switch to the new and improved notation,
convention, whatever.

There was some discussion of the length of time for which we should
keep deprecated features around before finally throwing them out, but
as far as I know there was no clear decision on this (and the
Developer Guide doesn't mention anything about this).

Can we decide on something?  I don't really have strong feelings about
this, but given some of the issues that transpired in the thread about
stable/conservative versions of Sage, I would tend to pick something
like 12 months (which for Sage counts as rather long-term).  Of course
this wouldn't have to be set in stone and we could revisit the
decision in 20 years once/if the pace of development has slowed down.

Another question is how we can efficiently keep track of deprecated
things.  Having thought about this for a whole 3 minutes: we could set
up a new component on trac, called "deprecation"; each time a patch
deprecating something gets a positive review, the patch author should
create a new deprecation ticket, which could contain a time stamp in
its title, and refer to the original ticket.  Then bored/conscientious
people could comb through these deprecation tickets once in a while
and, once the time is up, actually remove the deprecated stuff.

Stupid example: say I want to rename the matrix method "echelonize" to
"echelonise".  I write a patch implementing this today, and Minh is so
happy about seeing this that he immediately gives it a positive
review.  So I make a new ticket titled "2010-11-02: get rid of
M.echelonize", and I mention the original ticket in the description.


Thoughts?


Best,
Alex



-- 
Alex Ghitza -- Lecturer in Mathematics -- The University of Melbourne
-- Australia -- http://www.ms.unimelb.edu.au/~aghitza/

--~--~---------~--~----~------------~-------~--~----~
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel-unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org
-~----------~----~----~----~------~----~------~--~---

Reply via email to