#5991: [with patch, needs work] Add a standard constructor for dynamic classes
-------------------------+--------------------------------------------------
Reporter: nthiery | Owner: nthiery
Type: enhancement | Status: assigned
Priority: major | Milestone: sage-4.1
Component: misc | Keywords: dynamic classes, pickling, unique
representation
Reviewer: David Roe | Author: Nicolas Thiery
Merged: |
-------------------------+--------------------------------------------------
Comment(by boothby):
Doctest failures:
{{{
sage -t -long devel/sage/sage/structure/dynamic_class.py
**********************************************************************
File "/space/boothby/sage-4.0.3/devel/sage-
main/sage/structure/dynamic_class.py", line 210:
sage: loads(dumps(BarFoo))
Exception raised:
Traceback (most recent call last):
File "/space/boothby/sage-4.0.3/local/bin/ncadoctest.py", line 1231,
in run_one_test
self.run_one_example(test, example, filename, compileflags)
File "/space/boothby/sage-4.0.3/local/bin/sagedoctest.py", line 38,
in run_one_example
OrigDocTestRunner.run_one_example(self, test, example, filename,
compileflags)
File "/space/boothby/sage-4.0.3/local/bin/ncadoctest.py", line 1172,
in run_one_example
compileflags, 1) in test.globs
File "<doctest __main__.example_1[23]>", line 1, in <module>
loads(dumps(BarFoo))###line 210:
sage: loads(dumps(BarFoo))
File "sage_object.pyx", line 604, in
sage.structure.sage_object.dumps (sage/structure/sage_ob$
return comp.compress(cPickle.dumps(obj, protocol=2))
PicklingError: Can't pickle <class '__main__.BarFoo'>: attribute
lookup __main__.BarFoo failed
**********************************************************************
File "/space/boothby/sage-4.0.3/devel/sage-
main/sage/structure/dynamic_class.py", line 224:
sage: import sage.misc.cPickle as cPickle
Exception raised:
Traceback (most recent call last):
File "/space/boothby/sage-4.0.3/local/bin/ncadoctest.py", line 1231,
in run_one_test
self.run_one_example(test, example, filename, compileflags)
File "/space/boothby/sage-4.0.3/local/bin/sagedoctest.py", line 38,
in run_one_example
OrigDocTestRunner.run_one_example(self, test, example, filename,
compileflags)
File "/space/boothby/sage-4.0.3/local/bin/ncadoctest.py", line 1172,
in run_one_example
compileflags, 1) in test.globs
File "<doctest __main__.example_1[30]>", line 1, in <module>
import sage.misc.cPickle as cPickle###line 224:
sage: import sage.misc.cPickle as cPickle
ImportError: No module named cPickle
**********************************************************************
File "/space/boothby/sage-4.0.3/devel/sage-
main/sage/structure/dynamic_class.py", line 225:
sage: cPickle.loads(cPickle.dumps(FooBar)) == FooBar
Exception raised:
Traceback (most recent call last):
File "/space/boothby/sage-4.0.3/local/bin/ncadoctest.py", line 1231,
in run_one_test
self.run_one_example(test, example, filename, compileflags)
File "/space/boothby/sage-4.0.3/local/bin/sagedoctest.py", line 38,
in run_one_example
OrigDocTestRunner.run_one_example(self, test, example, filename,
compileflags)
File "/space/boothby/sage-4.0.3/local/bin/ncadoctest.py", line 1172,
in run_one_example
compileflags, 1) in test.globs
File "<doctest __main__.example_1[31]>", line 1, in <module>
cPickle.loads(cPickle.dumps(FooBar)) == FooBar###line 225:
sage: cPickle.loads(cPickle.dumps(FooBar)) == FooBar
NameError: name 'cPickle' is not defined
**********************************************************************
File "/space/boothby/sage-4.0.3/devel/sage-
main/sage/structure/dynamic_class.py", line 238:
sage: loads(dumps(FooUnique)) is FooUnique
Exception raised:
Traceback (most recent call last):
File "/space/boothby/sage-4.0.3/local/bin/ncadoctest.py", line 1231,
in run_one_test
self.run_one_example(test, example, filename, compileflags)
File "/space/boothby/sage-4.0.3/local/bin/sagedoctest.py", line 38,
in run_one_example
OrigDocTestRunner.run_one_example(self, test, example, filename,
compileflags)
File "/space/boothby/sage-4.0.3/local/bin/ncadoctest.py", line 1172,
in run_one_example
compileflags, 1) in test.globs
File "<doctest __main__.example_1[35]>", line 1, in <module>
loads(dumps(FooUnique)) is FooUnique###line 238:
sage: loads(dumps(FooUnique)) is FooUnique
File "sage_object.pyx", line 604, in
sage.structure.sage_object.dumps (sage/structure/sage_ob$
return comp.compress(cPickle.dumps(obj, protocol=2))
PicklingError: Can't pickle <class '__main__.Foo'>: it's not the same
object as __main__.Foo
**********************************************************************
1 items had failures:
4 of 36 in __main__.example_1
***Test Failed*** 4 failures.
}}}
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/5991#comment:9>
Sage <http://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
-~----------~----~----~----~------~----~------~--~---