#9003: Doctest (or whatever???) failure on Mac OS X in free_module.py
------------------------+---------------------------------------------------
   Reporter:  kcrisman  |       Owner:  tbd       
       Type:  defect    |      Status:  new       
   Priority:  major     |   Milestone:  sage-4.4.3
  Component:  doctest   |    Keywords:            
     Author:            |    Upstream:  N/A       
   Reviewer:            |      Merged:            
Work_issues:            |  
------------------------+---------------------------------------------------

Comment(by craigcitro):

 Well, I can tell you _some_ of what's going on, but I don't know the whole
 story. First, here's an easy band-aid that doesn't fix the problem, but
 covers it up: in the doctest block for `rename` (around line 4440), add an
 extra doctest that changes the name back to the appropriate thing.

 Here are some interesting facts:

  * the failure is coming from the code around line 4440, with the call to
 `V.rename('V')`. (Someone pointed this out above.) Sage knows that there's
 only one vector space over `QQ` of dimension 7, so it's keeping the same
 object around and returning it in both cases -- but it's been renamed in
 one case, so that shows up in the other one.
  * running `sage -t -verbose free_module.py` shows that even though the
 `rename` doctest comes later in the file than the `base_extend` one, it
 actually gets run before. This is because the generated functions get
 their doctests run in alphabetical order by name -- and `example_127` gets
 run before `example_23`. (Those are the numbers on my machine, anyway.)
  * this also hints as to why it has something to do  with the version: as
 Georg noted above, the version gets used as part of the key for objects
 handled by the factory code.
  * Deleting any whole doctest block above the `base_change` method seem to
 cover up the issue when running `sage -t`.
  * It doesn't always cover it up with `sage -t -verbose` -- there are
 cases where `sage -t` succeeds, but `sage -t -verbose` fails. That's
 really fishy.

 That said, I '''totally''' can't explain the whole story. I'd love to take
 some time to debug this, but I just don't have time right now -- if it's
 still sitting in a week or so, I'll try and dig further. The first thing
 I'd try next is to print the version in the factory `__call__` method, see
 if we can spot where it's not the value we expect. I also have no idea why
 applying the patches from #6922 changes this.

 I can't wait for someone to get to the bottom of this. `;)`

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/9003#comment:21>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica, 
and MATLAB

-- 
You received this message because you are subscribed to the Google Groups 
"sage-trac" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/sage-trac?hl=en.

Reply via email to