Problems modifying sage 6.2 source code

24 views
Skip to first unread message

Paul Mercat

unread,
Jul 27, 2014, 11:30:59 AM7/27/14
to sage-s...@googlegroups.com
Hello,

I have developped some tools that works well with several versions of sage, but it doesn't work well with sage 6.2.
When I try to modify the file sage/combinat/words/morphism.py, I get the following error :

iMac-de-Paul-Mercat:sage-6.2 mercat$ ./sage -n
┌────────────────────────────────────────────────────────────────────┐
│ Sage Version 6.2, Release Date: 2014-05-06                         │
│ Type "notebook()" for the browser-based notebook interface.        │
│ Type "help()" for help.                                            │
└────────────────────────────────────────────────────────────────────┘

Please wait while the Sage Notebook server starts...
Traceback (most recent call last):
  File "/Applications/sage-6.2/src/bin/sage-notebook", line 9, in <module>
    from sage.all import *
  File "/Applications/sage-6.2/local/lib/python2.7/site-packages/sage/all.py", line 103, in <module>
    import sage.symbolic.pynac
  File "pynac.pyx", line 2269, in init sage.symbolic.pynac (sage/symbolic/pynac.cpp:23271)
  File "pynac.pyx", line 2163, in sage.symbolic.pynac.init_pynac_I (sage/symbolic/pynac.cpp:20350)
  File "/Applications/sage-6.2/local/lib/python2.7/site-packages/sage/rings/number_field/number_field.py", line 739, in QuadraticField
    return NumberField(f, name, check=False, embedding=embedding, latex_name=latex_name, **args)
  File "/Applications/sage-6.2/local/lib/python2.7/site-packages/sage/rings/number_field/number_field.py", line 461, in NumberField
    assume_disc_small=assume_disc_small, maximize_at_primes=maximize_at_primes)
  File "/Applications/sage-6.2/local/lib/python2.7/site-packages/sage/rings/number_field/number_field.py", line 9120, in __init__
    self._standard_embedding = CDF.has_coerce_map_from(self) and CDF(rootD).imag() > 0
  File "complex_double.pyx", line 336, in sage.rings.complex_double.ComplexDoubleField_class.__call__ (sage/rings/complex_double.c:4633)
  File "parent.pyx", line 1070, in sage.structure.parent.Parent.__call__ (sage/structure/parent.c:8858)
  File "map.pyx", line 1604, in sage.categories.map.FormalCompositeMap._call_ (sage/categories/map.c:8852)
  File "number_field_morphisms.pyx", line 135, in sage.rings.number_field.number_field_morphisms.NumberFieldEmbedding._call_ (sage/rings/number_field/number_field_morphisms.c:2889)
  File "polynomial_rational_flint.pyx", line 491, in sage.rings.polynomial.polynomial_rational_flint.Polynomial_rational_flint.__call__ (sage/rings/polynomial/polynomial_rational_flint.cpp:7981)
  File "polynomial_element.pyx", line 657, in sage.rings.polynomial.polynomial_element.Polynomial.__call__ (sage/rings/polynomial/polynomial_element.c:8264)
  File "element.pyx", line 806, in sage.structure.element.Element.__nonzero__ (sage/structure/element.c:7908)
  File "real_lazy.pyx", line 667, in sage.rings.real_lazy.LazyFieldElement.__richcmp__ (sage/rings/real_lazy.c:7836)
  File "element.pyx", line 902, in sage.structure.element.Element._richcmp (sage/structure/element.c:9316)
  File "element.pyx", line 949, in sage.structure.element.Element._richcmp_c_impl (sage/structure/element.c:9645)
  File "real_lazy.pyx", line 655, in sage.rings.real_lazy.LazyFieldElement._cmp_c_impl (sage/rings/real_lazy.c:7739)
  File "real_lazy.pyx", line 738, in sage.rings.real_lazy.LazyFieldElement.approx (sage/rings/real_lazy.c:8383)
  File "real_lazy.pyx", line 1626, in sage.rings.real_lazy.LazyAlgebraic.eval (sage/rings/real_lazy.c:15292)
  File "polynomial_element.pyx", line 5737, in sage.rings.polynomial.polynomial_element.Polynomial.roots (sage/rings/polynomial/polynomial_element.c:37505)
  File "/Applications/sage-6.2/local/lib/python2.7/site-packages/sage/rings/polynomial/complex_roots.py", line 349, in complex_roots
    factors = p.squarefree_decomposition()
  File "polynomial_element.pyx", line 1332, in sage.rings.polynomial.polynomial_element.Polynomial.squarefree_decomposition (sage/rings/polynomial/polynomial_element.c:14176)
  File "/Applications/sage-6.2/local/lib/python2.7/site-packages/sage/structure/factorization.py", line 305, in __init__
    self.__universe = Sequence(t[0] for t in x).universe()
  File "/Applications/sage-6.2/local/lib/python2.7/site-packages/sage/structure/sequence.py", line 289, in Sequence
    from sage.rings.polynomial.pbori import BooleanMonomialMonoid
  File "pbori.pyx", line 215, in init sage.rings.polynomial.pbori (sage/rings/polynomial/pbori.cpp:59841)
  File "/Applications/sage-6.2/local/lib/python2.7/site-packages/sage/monoids/__init__.py", line 1, in <module>
    import all
  File "/Applications/sage-6.2/local/lib/python2.7/site-packages/sage/monoids/all.py", line 3, in <module>
    from free_monoid import FreeMonoid, is_FreeMonoid
  File "/Applications/sage-6.2/local/lib/python2.7/site-packages/sage/monoids/free_monoid.py", line 39, in <module>
    from sage.combinat.words.finite_word import FiniteWord_class
  File "/Applications/sage-6.2/local/lib/python2.7/site-packages/sage/combinat/words/__init__.py", line 1, in <module>
    import all
  File "/Applications/sage-6.2/local/lib/python2.7/site-packages/sage/combinat/words/all.py", line 2, in <module>
    from morphism import WordMorphism
  File "/Applications/sage-6.2/local/lib/python2.7/site-packages/sage/combinat/words/morphism.py", line 2401
    <<<<<<< HEAD
     ^
SyntaxError: invalid syntax

And even if I replace the file by its original version, it still doesn't work.

I've tried to cythonize the file : I replaced it by morphism.pyx and indicate it in module_list.py, and then it works ! But it doesn't that into account what I write in morphism.pyx, it does the same as if there were still the original file morphism.py

Very strange is't it ?
Do somebody understand what's wrong and knows how to correct the problem ?

Thank,
Paul

Volker Braun

unread,
Jul 27, 2014, 1:24:57 PM7/27/14
to sage-s...@googlegroups.com
That is a git conflict marker. "git status" will tell you that you are supposed to resolve the conflict.

Paul Mercat

unread,
Jul 27, 2014, 1:38:32 PM7/27/14
to sage-s...@googlegroups.com
Thank you.
In fact I didn't have git installed in my computer.
I will retry following the steps given in the developper guide, using git.
I didn't know that the way you commit/push/pull/etc.. has changed since the last version of sage.
I hope it will not change for each version of sage, because it wastes me time to re-learn how to contribute to sage...

John Cremona

unread,
Jul 27, 2014, 3:49:08 PM7/27/14
to SAGE support
On 27 July 2014 18:38, 'Paul Mercat' via sage-support
<sage-s...@googlegroups.com> wrote:
> Thank you.
> In fact I didn't have git installed in my computer.

If you don't have git then I cannot see how you have a file with git
conflict markers in it.


> I will retry following the steps given in the developper guide, using git.
> I didn't know that the way you commit/push/pull/etc.. has changed since the
> last version of sage.
> I hope it will not change for each version of sage, because it wastes me
> time to re-learn how to contribute to sage...

Of course. Sage had used mercurial since at least 2007 but switched
to git around 7 months ago.

John
> --
> You received this message because you are subscribed to the Google Groups
> "sage-support" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to sage-support...@googlegroups.com.
> To post to this group, send email to sage-s...@googlegroups.com.
> Visit this group at http://groups.google.com/group/sage-support.
> For more options, visit https://groups.google.com/d/optout.
Reply all
Reply to author
Forward
0 new messages