cschwan / sage-on-gentoo

(Unofficial) Gentoo Overlay for Sage- and Sage-related ebuilds
84 stars 26 forks source link

=dev-python/cypari2-1.0.0 now needs backport to sync with pari-2.10.0_pre20170914 #488

Closed gmt closed 7 years ago

gmt commented 7 years ago

Since upstream cypari2 has moved on ahead of our pari version, I guess we sort-of have to branch cypari2-1.0.0? I'm very sure I don't understand the actual dependency constraints the overlay faces for sage-8.0. But assuming there's no better option, comparing ebuild prepare results from pari and cypari2 from 9.16.2017 overlay versions, this seemed like a reasonable patch to apply to cypari2-1.0.0, to get things building again:

diff -urpN cypari2-1.0.0.orig/cypari2/paridecl.pxd cypari2-1.0.0/cypari2/paridecl.pxd
--- cypari2-1.0.0.orig/cypari2/paridecl.pxd 2017-03-31 01:49:41.000000000 -0700
+++ cypari2-1.0.0/cypari2/paridecl.pxd  2017-09-16 00:55:47.942617581 -0700
@@ -1305,7 +1305,7 @@ cdef extern from *:     # PARI headers a
     GEN     algleftordermodp(GEN al, GEN Ip, GEN p)
     GEN     algmul(GEN al, GEN x, GEN y)
     GEN     algmultable(GEN al)
-    GEN     alglathnf(GEN al, GEN m)
+    GEN     alglathnf(GEN al, GEN m, GEN d)
     GEN     algleftmultable(GEN al, GEN x)
     GEN     algneg(GEN al, GEN x)
     GEN     algnorm(GEN al, GEN x)
@@ -2628,7 +2628,7 @@ cdef extern from *:     # PARI headers a

     GEN     ellisogenyapply(GEN f, GEN P)
     GEN     ellisogeny(GEN e, GEN G, long only_image, long vx, long vy)
-    GEN     ellisomat(GEN E, long flag)
+    GEN     ellisomat(GEN E, long d, long flag)

     # ellsea.c

@@ -3465,7 +3465,7 @@ cdef extern from *:     # PARI headers a
     GEN     dirzetak(GEN nf, GEN b)
     GEN     ellmoddegree(GEN e, long bitprec)
     GEN     lfunabelianrelinit(GEN bnfabs, GEN bnf, GEN polrel, GEN dom, long der, long bitprec)
-    GEN     lfunartin(GEN N, GEN G, GEN M, long o)
+    GEN     lfunartin(GEN N, GEN G, GEN M, long o, long bitprec)
     GEN     lfundiv(GEN ldata1, GEN ldata2, long bitprec)
     GEN     lfunellmfpeters(GEN E, long bitprec)
     GEN     lfunetaquo(GEN eta)
diff -urpN cypari2-1.0.0.orig/dist/cypari2-1.0.0/cypari2/paridecl.pxd cypari2-1.0.0/dist/cypari2-1.0.0/cypari2/paridecl.pxd
--- cypari2-1.0.0.orig/dist/cypari2-1.0.0/cypari2/paridecl.pxd  2017-03-31 01:49:41.000000000 -0700
+++ cypari2-1.0.0/dist/cypari2-1.0.0/cypari2/paridecl.pxd   2017-09-16 00:55:24.294828661 -0700
@@ -1305,7 +1305,7 @@ cdef extern from *:     # PARI headers a
     GEN     algleftordermodp(GEN al, GEN Ip, GEN p)
     GEN     algmul(GEN al, GEN x, GEN y)
     GEN     algmultable(GEN al)
-    GEN     alglathnf(GEN al, GEN m)
+    GEN     alglathnf(GEN al, GEN m, GEN d)
     GEN     algleftmultable(GEN al, GEN x)
     GEN     algneg(GEN al, GEN x)
     GEN     algnorm(GEN al, GEN x)
@@ -2628,7 +2628,7 @@ cdef extern from *:     # PARI headers a

     GEN     ellisogenyapply(GEN f, GEN P)
     GEN     ellisogeny(GEN e, GEN G, long only_image, long vx, long vy)
-    GEN     ellisomat(GEN E, long flag)
+    GEN     ellisomat(GEN E, long p, long flag)

     # ellsea.c

@@ -3465,7 +3465,7 @@ cdef extern from *:     # PARI headers a
     GEN     dirzetak(GEN nf, GEN b)
     GEN     ellmoddegree(GEN e, long bitprec)
     GEN     lfunabelianrelinit(GEN bnfabs, GEN bnf, GEN polrel, GEN dom, long der, long bitprec)
-    GEN     lfunartin(GEN N, GEN G, GEN M, long o)
+    GEN     lfunartin(GEN N, GEN G, GEN M, long o, long bitprec)
     GEN     lfundiv(GEN ldata1, GEN ldata2, long bitprec)
     GEN     lfunellmfpeters(GEN E, long bitprec)
     GEN     lfunetaquo(GEN eta)
kiwifb commented 7 years ago

Why do need cypari2-1.0.0? Can't you use cypari2-1.1.1? Is there a dependency combination where you need cypari2-1.0.0 and pari-2.10 at the same time (I am sure I haven't allowed that yet)?

gmt commented 7 years ago

¯\_(ツ)_/¯

  (dev-python/cypari2-1.1.1:0/0::sage-on-gentoo, ebuild scheduled for merge) conflicts with
    ~dev-python/cypari2-1.0.0[python_targets_python2_7(-),python_targets_python3_6(-),-python_single_target_python2_7(-),-python_single_target_python3_6(-)] required by (sci-mathematics/sage-8.0:0/0::sage-on-gentoo, installed)
kiwifb commented 7 years ago

OK, but you are using sage 8.0 which wants cypari2-1.0.0 (I may relax that) but you shouldn't also pull pari-2.10. I'll check dependencies.

gmt commented 7 years ago

Thanks for looking into it!

kiwifb commented 7 years ago

Ha, I see. I added a runtime dependency in 9999 that should also be in 8.0. Also cypari2-1.0.0 shouldn't allow you to pull pari-2.10. It will take a couple of hours to fix (because of kids). In the meantime just mask pari-2.10.

gmt commented 7 years ago

Will do, thanks!

edit: seems to have done the trick for now so please feel free to rear your children :P

kiwifb commented 7 years ago

Ok, should be all fixed now. pari-2.10 shouldn't come up in your dependency tree anymore. Thank you for the report. You can close the issue if you are all satisfied with the outcome. Just pipe again if I didn't fix it.

gmt commented 7 years ago

I'll give it a go in a few hours, thanks!

gmt commented 7 years ago

Depsolving after removing my mask and syncing up my repo didn't change anything so I am pretty sure that equates with success. Thanks again!