#11900: Serious regression caused by #9138
-------------------------------------------------------------+--------------
   Reporter:  SimonKing                                      |          Owner:  
tbd                         
       Type:  defect                                         |         Status:  
needs_work                  
   Priority:  critical                                       |      Milestone:  
sage-5.0                    
  Component:  performance                                    |       Keywords:  
categories regression       
Work_issues:                                                 |       Upstream:  
N/A                         
   Reviewer:  Jeroen Demeyer, Nicolas M. ThiƩry, Simon King  |         Author:  
Simon King                  
     Merged:                                                 |   Dependencies:  
#11319, #9138, #11911, #9562
-------------------------------------------------------------+--------------
Changes (by jdemeyer):

  * status:  positive_review => needs_work


Comment:

 Bad news: this breaks on OS X 10.6.  With sage-4.8.alpha5 + #9138 +
 #11900, sage fails to start up:
 {{{
 bsd:sage-4.8.alpha5 jdemeyer$ ./sage
 ----------------------------------------------------------------------
 | Sage Version 4.8.alpha5, Release Date: 2011-12-20                  |
 | Type notebook() for the GUI, and license() for information.        |
 ----------------------------------------------------------------------
 **********************************************************************
 *                                                                    *
 * Warning: this is a prerelease version, and it may be unstable.     *
 *                                                                    *
 **********************************************************************
 ---------------------------------------------------------------------------
 TypeError                                 Traceback (most recent call
 last)

 /Users/jdemeyer/sage-4.8.alpha5/local/lib/python2.6/site-
 packages/IPython/ipmaker.pyc in force_import(modname, force_reload)
      61         reload(sys.modules[modname])
      62     else:
 ---> 63         __import__(modname)
      64
      65

 /Users/jdemeyer/sage-4.8.alpha5/local/bin/ipy_profile_sage.py in
 <module>()
       5     preparser(True)
       6
 ----> 7     import sage.all_cmdline
       8     sage.all_cmdline._init_cmdline(globals())
       9

 /Users/jdemeyer/sage-4.8.alpha5/local/lib/python2.6/site-
 packages/sage/all_cmdline.py in <module>()
      12 try:
      13
 ---> 14     from sage.all import *
      15     from sage.calculus.predefined import x
      16     preparser(on=True)

 /Users/jdemeyer/sage-4.8.alpha5/local/lib/python2.6/site-
 packages/sage/all.py in <module>()
      66 from time                import sleep
      67
 ---> 68 from sage.misc.all       import *         # takes a while
      69
      70 from sage.misc.sh import sh

 /Users/jdemeyer/sage-4.8.alpha5/local/lib/python2.6/site-
 packages/sage/misc/all.py in <module>()
      79 from func_persist import func_persist
      80
 ---> 81 from functional import (additive_order,
      82                         sqrt as numerical_sqrt,
      83                         arg,

 /Users/jdemeyer/sage-4.8.alpha5/local/lib/python2.6/site-
 packages/sage/misc/functional.py in <module>()
      34
      35
 ---> 36 from sage.rings.complex_double import CDF
      37 from sage.rings.real_double import RDF, RealDoubleElement
      38

 /Users/jdemeyer/sage-4.8.alpha5/local/bin/complex_double.pyx in init
 sage.rings.complex_double (sage/rings/complex_double.c:15152)()
      90
      91
 ---> 92
      93
      94

 Users/jdemeyer/sage-4.8.alpha5/local/lib/python2.6/site-
 packages/sage/rings/complex_field.pyc in ComplexField(prec, names)
      85         if not C is None:
      86             return C
 ---> 87     C = ComplexField_class(prec)
      88     cache[prec] = weakref.ref(C)
      89     return C

 /Users/jdemeyer/sage-4.8.alpha5/local/lib/python2.6/site-
 packages/sage/rings/complex_field.pyc in __init__(self, prec)
     185         ParentWithGens.__init__(self, self._real_field(), ('I',),
 False, category = Fields())
     186 #        self._populate_coercion_lists_()
 --> 187
 
self._populate_coercion_lists_(coerce_list=[complex_number.RRtoCC(self._real_field(),
 self)])
     188
     189     def __reduce__(self):

 /Users/jdemeyer/sage-4.8.alpha5/local/lib/python2.6/site-
 packages/sage/rings/complex_number.so in
 sage.rings.complex_number.RRtoCC.__init__
 (sage/rings/complex_number.c:14411)()
    2261
    2262
 -> 2263
    2264
    2265

 /Users/jdemeyer/sage-4.8.alpha5/local/lib/python2.6/site-
 packages/sage/categories/map.so in sage.categories.map.Map.__init__
 (sage/categories/map.c:2234)()
     121
     122
 --> 123
     124
     125

 Users/jdemeyer/sage-4.8.alpha5/local/lib/python2.6/site-
 packages/sage/categories/homset.pyc in Hom(X, Y, category)
     199     # For the moment, this is the category, for compatibility with
 the current implementations
     200     # of Homset in rings, schemes, ...
 --> 201     H = category.hom_category().parent_class(X, Y, category =
 category)
     202
     203     ##_cache[key] = weakref.ref(H)

 /Users/jdemeyer/sage-4.8.alpha5/local/lib/python2.6/site-
 packages/sage/categories/homset.pyc in __init__(self, X, Y, category,
 base, check)
     339             #    raise TypeError, "Y (=%s) must be in category
 (=%s)"%(Y, category)
     340
 --> 341         Parent.__init__(self, base = base, category =
 category.hom_category())
     342
     343     def _repr_(self):

 /Users/jdemeyer/sage-4.8.alpha5/local/lib/python2.6/site-
 packages/sage/structure/parent.so in sage.structure.parent.Parent.__init__
 (sage/structure/parent.c:4197)()
     515
     516
 --> 517
     518
     519

 /Users/jdemeyer/sage-4.8.alpha5/local/lib/python2.6/site-
 packages/sage/structure/parent.so in
 sage.structure.parent.Parent._init_category_
 (sage/structure/parent.c:4711)()
     564
     565
 --> 566
     567
     568

 /Users/jdemeyer/sage-4.8.alpha5/local/lib/python2.6/site-
 packages/sage/structure/dynamic_class.pyc in dynamic_class(name, bases,
 cls, reduction, doccls)
     254     assert(type(name) is str)
     255     #    assert(cls is None or issubtype(type(cls), type) or
 type(cls) is classobj)
 --> 256     return dynamic_class_internal(name, bases, cls, reduction,
 doccls)
     257
     258 @cached_function

 /Users/jdemeyer/sage-4.8.alpha5/local/lib/python2.6/site-
 packages/sage/misc/cachefunc.pyc in __call__(self, *args, **kwds)
     176             return self.cache[k]
     177         except KeyError:
 --> 178             w = self.f(*args, **kwds)
     179             self.cache[k] = w
     180             return w

 /Users/jdemeyer/sage-4.8.alpha5/local/lib/python2.6/site-
 packages/sage/structure/dynamic_class.pyc in dynamic_class_internal(name,
 bases, cls, reduction, doccls)
     341         if type(base) is ClasscallMetaclass:
     342             metaclass = DynamicClasscallMetaclass
 --> 343     return metaclass(name, bases, methods)
     344
     345 class DynamicMetaclass(type):

 TypeError: duplicate base class Sets.HomCategory.parent_class
 Error importing ipy_profile_sage - perhaps you should run %upgrade?
 WARNING: Loading of ipy_profile_sage failed.

 sage:
 }}}

 With only #9138 applied, it works.

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/11900#comment:222>
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