Hi, durings some work on the unification of linestyle options I found the following little bug:
var('y') plot_vector_field((sin(x), cos(y)), (x,-3,3), (y,-3,3),linestyle='dotted') crashes with a "maximum recursion depth" error. One would however expect that it prints out a warning, that the linestyle option is ignored, togehter with a lis of the allowed options. The reason for this problem is simple: .options() checks whether there are unknown options and if this is the case prints a warning. While printing this it calls ._repr_. Unfortunately in .plot_field.py the function ._repr_() calls options again which reates the infinite loop: def _repr_(self): """ String representation of PlotField graphics primitive. EXAMPLES:: sage: x,y = var('x,y') sage: P=plot_vector_field((sin(x), cos(y)), (x,-3,3), (y,-3,3)) sage: P[0] PlotField defined by a 20 x 20 vector grid """ return "PlotField defined by a %s x %s vector grid"%(self.options()[ 'plot_points'], self.options()['plot_points']) I would propose openig a ticket and uploading a patch which replaces self.options() by self._options However being completely unexperienced with fixing bugs in sage I wanted to mail it to the list first and ask whether some more experienced developpers see some problems, better solutions or other functions that could be affacted. Thanks for your feed-back Tobi -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+unsubscr...@googlegroups.com. To post to this group, send email to sage-devel@googlegroups.com. Visit this group at http://groups.google.com/group/sage-devel. For more options, visit https://groups.google.com/groups/opt_out.