Hi there, > Regarding deprecation, we already hashed this out in a previous thread > quite some time ago. > > * Use the official deprecation(...) function when deprecating a function. > > * We can tell precisely what is deprecated and when by simply > looking at the source code and using the revision control system > and/or comments in the source code. Thus it's completely unnecessary > bureaucracy to require people to open extra tickets just for this, as > was suggested elsewhere in this thread. > > * After one year we are allowed to remove deprecated code, but we > only actually do so at major releases (e.g., 5.0, 6.0, 7.0 etc.) > Thus Sage-5.0 *will* remove deprecated code that was deprecated at > least a year ago.
Speaking about deprecation, I posted a patch #7515 which does two things: 1 - Add an option called ``version`` do deprecation where you can put the information on since which version of sage this thing was deprecated: sage: def bar(): ... sage.misc.misc.deprecation("The function bar is removed.", ... 'Sage Version 4.2, Release Date: 2009-10-24') sage: bar() doctest:...: DeprecationWarning: (Since Sage Version 4.2, Release Date: 2009-10-24) The function bar is removed. Note: This does noting than gluing the two strings, but this prompt the writer of the function to insert this information at the right place. For backward compatibility, This is only optional. 2 - When renaming a function or method, you can use deprecated_function_alias or deprecated_method_alias to keep the function under the old name: sage: from sage.misc.misc import deprecated_method_alias sage: class cls(object): ... def new_meth(self): return 42 ... old_meth = deprecated_method_alias(new_meth, ... 'Sage Version 42.132, Release Date: 5123-04-01') sage: cls().old_meth() doctest:...: DeprecationWarning: (Since Sage Version 42.132, Release Date: 5123-04-01) old_meth is deprecated. Please use new_meth instead. 42 I thinks both idea might be helpful. Anyone against this design ? Or any better idea ? In particular, if someone has a better name for deprecated_method_alias and deprecated_function_alias (actually both are the same)... Cheers, Florent -- 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