On May 5, 8:44 pm, Jason Grout <[EMAIL PROTECTED]> wrote: > I've been thinking more about how to handle deprecated functionality. > Seehttp://groups.google.com/group/sage-devel/browse_thread/thread/1e7d8b... > for our initial discussion. There, the conclusions seemed to be: > > 1. We should have a DEPRECATED section of the docstring in which > deprecated notes should be listed. Optionally, we could go through > sections like these before a major release and remove functions, etc. > > 2. Throw a DeprecatedError when some piece of functionality is used. > The reasoning here is that people would know very quickly what code was bad. > > I like #1. #2, however, seems to go too far. "Deprecated" means that > things don't break just yet, they just warn you that you're on risky > ground for the future and that you'd better change your code. Throwing > an error aborts everything instead. > > Thankfully, Python already has a framework for deprecation (imagine > that!). Seehttp://docs.python.org/lib/module-warnings.html. This > module creates a framework for warning the user of all sorts of things > (not just deprecated functionality). The user can configure python to > turn these warnings into exceptions, print them to the console, ignore > them, etc.
I like this idea. > Does anyone have experience using the warning module, specifically with > regards to the DeprecationWarning and PendingDeprecationWarning? Not me. > Note that there are other warnings in Sage that could use the warning > module, like the warning about bad points in plotting, etc. This sounds good too. Carl --~--~---------~--~----~------------~-------~--~----~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://www.sagemath.org -~----------~----~----~----~------~----~------~--~---