Opened 8 years ago

Closed 8 years ago

Last modified 8 years ago

#11261 closed enhancement (fixed)

Update PolyBoRi to upstream release 0.7-1

Reported by: AlexanderDreyer Owned by: AlexanderDreyer
Priority: major Milestone: sage-4.7.2
Component: packages: standard Keywords:
Cc: Martin Albrecht, PolyBoRi, burcin Merged in: sage-4.7.2.alpha1
Authors: Alexander Dreyer Reviewers: Burcin Erocal, François Bissey, Karl-Dieter Crisman
Report Upstream: None of the above - read trac for reasoning. Work issues:
Branch: Commit:
Dependencies: Stopgaps:

Description (last modified by AlexanderDreyer)

There was a small bugfix release of PolyBoRi.

Perhaps we can revert #11019.

Current spkg:

Attachments (2)

polybori-m4ri20100817.patch (858 bytes) - added by AlexanderDreyer 8 years ago.
Backporting m4ri header issue patch from upcoming PolyBoRi 0.8
plot.py.patch (733 bytes) - added by AlexanderDreyer 8 years ago.
Backport from 0.8: polybori.plot uses jinja2, where available

Download all attachments as: .zip

Change History (33)

comment:1 Changed 8 years ago by AlexanderDreyer

  • Description modified (diff)

comment:2 Changed 8 years ago by AlexanderDreyer

  • Status changed from new to needs_review

The package can be reviewed (independently of reverting #11019).

comment:3 Changed 8 years ago by AlexanderDreyer

  • Description modified (diff)

I added a small patch, that makes PolyBoRi? compatible with upcoming M4RI release: http://boxen.math.washington.edu/home/dreyer/spkg/polybori-0.7.1.p1.spkg

It also fixed the issue that the while site-packages directory was recompiled. (Both backported from upcoming PolyBoRi? 0.8.)

comment:4 Changed 8 years ago by fbissey

Probably not the proper place to report this but I have tried to compile polybori against m4ri-20100817 and it doesn't work:

gcc -o Cudd/util/pathsearch.os -c -O1 -march=native -pipe -ggdb -fPIC -DNDEBUG -DHAVE_GD -DHAVE_TR1_UNORDERED_MAP -DPACKED -DHAVE_M4RI -DHAVE_GD -DSIZEOF_VOID_P=8 -DSIZEOF_LONG=8 -DHAVE_IEEE_754 -DBSD -I/usr/include/python2.7 -Ipolybori/include -ICudd/obj -ICudd/util -ICudd/cudd -ICudd/mtr -ICudd/st -ICudd/epd Cudd/util/pathsearch.c
In file included from PyPolyBoRi/main_wrapper.cc:25:0:
/usr/include/m4ri/packedmatrix.h:75:3: error: 'mmb_t' does not name a type
/usr/include/m4ri/packedmatrix.h:105:3: error: 'word' does not name a type
/usr/include/m4ri/packedmatrix.h: In function 'void mzd_row_swap(mzd_t*, size_t, size_t)':
/usr/include/m4ri/packedmatrix.h:174:3: error: 'word' was not declared in this scope
/usr/include/m4ri/packedmatrix.h:174:9: error: 'a' was not declared in this scope
/usr/include/m4ri/packedmatrix.h:174:16: error: 'struct mzd_t' has no member named 'rows'
/usr/include/m4ri/packedmatrix.h:175:9: error: 'b' was not declared in this scope
/usr/include/m4ri/packedmatrix.h:175:16: error: 'struct mzd_t' has no member named 'rows'
/usr/include/m4ri/packedmatrix.h:176:8: error: expected ';' before 'tmp'
/usr/include/m4ri/packedmatrix.h:177:8: error: expected ';' before 'mask_begin'
/usr/include/m4ri/packedmatrix.h:178:8: error: expected ';' before 'mask_end'
/usr/include/m4ri/packedmatrix.h:181:5: error: 'tmp' was not declared in this scope
/usr/include/m4ri/packedmatrix.h:182:21: error: 'mask_begin' was not declared in this scope
/usr/include/m4ri/packedmatrix.h:191:29: error: 'mask_end' was not declared in this scope
/usr/include/m4ri/packedmatrix.h:195:5: error: 'tmp' was not declared in this scope
/usr/include/m4ri/packedmatrix.h:196:21: error: 'mask_begin' was not declared in this scope
/usr/include/m4ri/packedmatrix.h:196:56: error: 'mask_end' was not declared in this scope
/usr/include/m4ri/packedmatrix.h: In function 'void mzd_col_swap_in_rows(mzd_t*, size_t, size_t, size_t, size_t)':
/usr/include/m4ri/packedmatrix.h:242:31: error: 'RADIX' was not declared in this scope
/usr/include/m4ri/packedmatrix.h:247:3: error: 'word' was not declared in this scope
/usr/include/m4ri/packedmatrix.h:247:8: error: expected ';' before 'a'
/usr/include/m4ri/packedmatrix.h:252:11: error: 'word' does not name a type
/usr/include/m4ri/packedmatrix.h:253:11: error: 'word' does not name a type
/usr/include/m4ri/packedmatrix.h:255:7: error: 'base' was not declared in this scope
/usr/include/m4ri/packedmatrix.h:255:18: error: 'struct mzd_t' has no member named 'rows'
/usr/include/m4ri/packedmatrix.h:256:16: error: 'word' does not name a type
/usr/include/m4ri/packedmatrix.h:257:16: error: 'word' does not name a type
/usr/include/m4ri/packedmatrix.h:258:15: error: 'b' was not declared in this scope
/usr/include/m4ri/packedmatrix.h:258:21: error: 'x' was not declared in this scope
/usr/include/m4ri/packedmatrix.h:258:26: error: 'ai' was not declared in this scope
/usr/include/m4ri/packedmatrix.h:258:38: error: 'bi' was not declared in this scope
/usr/include/m4ri/packedmatrix.h:263:9: error: 'word' does not name a type
/usr/include/m4ri/packedmatrix.h:264:9: error: 'word' does not name a type
/usr/include/m4ri/packedmatrix.h:269:7: error: 'base' was not declared in this scope
/usr/include/m4ri/packedmatrix.h:269:17: error: 'struct mzd_t' has no member named 'rows'
/usr/include/m4ri/packedmatrix.h:270:7: error: 'a' was not declared in this scope
/usr/include/m4ri/packedmatrix.h:271:7: error: 'b' was not declared in this scope
/usr/include/m4ri/packedmatrix.h:273:17: error: 'b_bm' was not declared in this scope
/usr/include/m4ri/packedmatrix.h:274:17: error: 'a_bm' was not declared in this scope
/usr/include/m4ri/packedmatrix.h:283:7: error: 'base' was not declared in this scope
/usr/include/m4ri/packedmatrix.h:283:17: error: 'struct mzd_t' has no member named 'rows'
/usr/include/m4ri/packedmatrix.h:284:7: error: 'a' was not declared in this scope
/usr/include/m4ri/packedmatrix.h:285:7: error: 'b' was not declared in this scope
/usr/include/m4ri/packedmatrix.h:287:17: error: 'b_bm' was not declared in this scope
/usr/include/m4ri/packedmatrix.h:288:17: error: 'a_bm' was not declared in this scope
/usr/include/m4ri/packedmatrix.h: At global scope:
/usr/include/m4ri/packedmatrix.h:308:15: error: 'BIT' does not name a type
/usr/include/m4ri/packedmatrix.h:324:86: error: 'BIT' does not name a type
/usr/include/m4ri/packedmatrix.h: In function 'void mzd_write_bit(mzd_t*, size_t, size_t, int)':
/usr/include/m4ri/packedmatrix.h:326:16: error: 'struct mzd_t' has no member named 'rows'
/usr/include/m4ri/packedmatrix.h:326:42: error: 'RADIX' was not declared in this scope
/usr/include/m4ri/packedmatrix.h:326:73: error: 'SET_BIT' was not declared in this scope
/usr/include/m4ri/packedmatrix.h:328:16: error: 'struct mzd_t' has no member named 'rows'
/usr/include/m4ri/packedmatrix.h:328:42: error: 'RADIX' was not declared in this scope
/usr/include/m4ri/packedmatrix.h:328:73: error: 'CLR_BIT' was not declared in this scope
/usr/include/m4ri/packedmatrix.h: In function 'void mzd_row_add_offset(mzd_t*, size_t, size_t, size_t)':
/usr/include/m4ri/packedmatrix.h:362:38: error: 'RADIX' was not declared in this scope
/usr/include/m4ri/packedmatrix.h:364:3: error: 'word' was not declared in this scope
/usr/include/m4ri/packedmatrix.h:364:9: error: 'src' was not declared in this scope
/usr/include/m4ri/packedmatrix.h:364:18: error: 'struct mzd_t' has no member named 'rows'
/usr/include/m4ri/packedmatrix.h:365:9: error: 'dst' was not declared in this scope
/usr/include/m4ri/packedmatrix.h:365:18: error: 'struct mzd_t' has no member named 'rows'
/usr/include/m4ri/packedmatrix.h:370:8: error: expected ';' before 'temp'
/usr/include/m4ri/packedmatrix.h:372:5: error: 'temp' was not declared in this scope
/usr/include/m4ri/packedmatrix.h:372:60: error: 'RIGHTMOST_BITS' was not declared in this scope
/usr/include/m4ri/packedmatrix.h:373:13: error: 'temp' was not declared in this scope
/usr/include/m4ri/packedmatrix.h: At global scope:
/usr/include/m4ri/packedmatrix.h:556:1: error: 'BIT' does not name a type
/usr/include/m4ri/packedmatrix.h:738:15: error: 'word' does not name a type
/usr/include/m4ri/packedmatrix.h:772:94: error: 'word' has not been declared
/usr/include/m4ri/packedmatrix.h: In function 'void mzd_xor_bits(const mzd_t*, size_t, size_t, int, int)':
/usr/include/m4ri/packedmatrix.h:773:3: error: 'word' was not declared in this scope
/usr/include/m4ri/packedmatrix.h:773:9: error: 'temp' was not declared in this scope
/usr/include/m4ri/packedmatrix.h:778:23: error: 'RADIX' was not declared in this scope
/usr/include/m4ri/packedmatrix.h:780:16: error: 'const struct mzd_t' has no member named 'rows'
/usr/include/m4ri/packedmatrix.h:787:8: error: 'const struct mzd_t' has no member named 'rows'
/usr/include/m4ri/packedmatrix.h:788:8: error: 'const struct mzd_t' has no member named 'rows'
/usr/include/m4ri/packedmatrix.h: At global scope:
/usr/include/m4ri/packedmatrix.h:802:94: error: 'word' has not been declared
/usr/include/m4ri/packedmatrix.h: In function 'void mzd_and_bits(const mzd_t*, size_t, size_t, int, int)':
/usr/include/m4ri/packedmatrix.h:803:3: error: 'word' was not declared in this scope
/usr/include/m4ri/packedmatrix.h:803:9: error: 'temp' was not declared in this scope
/usr/include/m4ri/packedmatrix.h:808:23: error: 'RADIX' was not declared in this scope
/usr/include/m4ri/packedmatrix.h:810:16: error: 'const struct mzd_t' has no member named 'rows'
/usr/include/m4ri/packedmatrix.h:817:8: error: 'const struct mzd_t' has no member named 'rows'
/usr/include/m4ri/packedmatrix.h:818:8: error: 'const struct mzd_t' has no member named 'rows'
/usr/include/m4ri/packedmatrix.h: In function 'void mzd_clear_bits(const mzd_t*, size_t, size_t, int)':
/usr/include/m4ri/packedmatrix.h:832:3: error: 'word' was not declared in this scope
/usr/include/m4ri/packedmatrix.h:832:8: error: expected ';' before 'temp'
/usr/include/m4ri/packedmatrix.h:837:23: error: 'RADIX' was not declared in this scope
/usr/include/m4ri/packedmatrix.h:839:5: error: 'temp' was not declared in this scope
/usr/include/m4ri/packedmatrix.h:839:16: error: 'const struct mzd_t' has no member named 'rows'
/usr/include/m4ri/packedmatrix.h:843:8: error: 'const struct mzd_t' has no member named 'rows'
/usr/include/m4ri/packedmatrix.h:848:8: error: 'const struct mzd_t' has no member named 'rows'
/usr/include/m4ri/packedmatrix.h:848:32: error: 'const struct mzd_t' has no member named 'rows'
/usr/include/m4ri/packedmatrix.h:848:51: error: 'ONE' was not declared in this scope
/usr/include/m4ri/packedmatrix.h:849:8: error: 'const struct mzd_t' has no member named 'rows'
/usr/include/m4ri/packedmatrix.h:849:32: error: 'const struct mzd_t' has no member named 'rows'

Are you meaning a later release of m4ri that will fix this?

comment:5 Changed 8 years ago by AlexanderDreyer

It seems that the header m4ri/packedmatrix.h is not self-contained in that version. I'll add a patch for PolyBoRi which includes m4ri/m4ri.h instead. I'll also re-bundle the spkg with the Sage release. (Maybe #11331 could be release first.)

comment:6 Changed 8 years ago by AlexanderDreyer

@fbissey Switching to the development version at bibucket should also fix that issue.

comment:7 Changed 8 years ago by fbissey

I didn't know about the polybori page on bitbucket, thanks for pointing it out. Actually if you make the release available on bitbucket it would be easier to automatically fetch than sourceforge.

Thanks for the patch.

comment:8 Changed 8 years ago by AlexanderDreyer

  • Owner changed from Alexander Dreyer to (none)

I meant the bitbucket repo of m4ri, but of course you may also have a look at PolyBoRi? there. The "Downloads" section of bitbucket is automatically generated from mercurial tags. I just realized that the releases 0.7.0 and 0.7.1 are missing albeit the tags do exist. Maybe I'll have to contact the support there.

comment:9 Changed 8 years ago by fbissey

Just to be picky the patch hasn't been made with the git compatibility mode which means that "plain patch" doesn't like it. It shouldn't get in the way of merging this ticket I am just mentioning.

Changed 8 years ago by AlexanderDreyer

Backporting m4ri header issue patch from upcoming PolyBoRi 0.8

comment:10 Changed 8 years ago by AlexanderDreyer

I hope this patch applies better.

comment:11 Changed 8 years ago by fbissey

Thx.

comment:12 Changed 8 years ago by AlexanderDreyer

  • Status changed from needs_review to needs_work

This should be rebased on the spkg from #11331 when the latter is accepted.

comment:13 Changed 8 years ago by AlexanderDreyer

  • Owner changed from (none) to AlexanderDreyer

comment:14 Changed 8 years ago by AlexanderDreyer

  • Description modified (diff)
  • Status changed from needs_work to needs_review

After Sage 4.7 being out (a while, I must admit), I rebased it the spkg to the most recent one from Sage. Please have a look at it: http://boxen.math.washington.edu/home/dreyer/spkg/polybori-0.7.1.p2.spkg

comment:15 Changed 8 years ago by AlexanderDreyer

  • Owner changed from AlexanderDreyer to (none)

BTW all tests pass on a SLES 11 Linux (64 bits).

comment:16 Changed 8 years ago by fbissey

I should do some test on vanilla sage but I shamelessly decided to skip 0.7 altogether in favor of that one for sage-on-gentoo for sage-4.7 and over. Works a treat on x86 and amd64. Still an annoying problem on macos that is not mirrored in the vanilla version for some reason.

comment:17 follow-up: Changed 8 years ago by AlexanderDreyer

I have often several times that installing one package breaks some completely unrelated tests, while replacing the spkg and building all Sage from scratch works fine. Does sage -ba always suffice?

comment:18 in reply to: ↑ 17 Changed 8 years ago by fbissey

  • Component changed from algebra to packages

Replying to AlexanderDreyer:

I have often several times that installing one package breaks some completely unrelated tests, while replacing the spkg and building all Sage from scratch works fine. Does sage -ba always suffice?

You are not entirely coherent there. Anyway in most case sage -b will suffice, sage -ba if you want to be sure for the one with real widespread use (pari for example). One thing that sage -b(a) doesn't do is rebuild dependent packages I think. So if update numpy I should also rebuild scipy. If I am not mistaken sage -b(a) won't do that for you.

If your comment was aimed at the problems I mentioned I have in sage-on-gentoo on macos, don't worry that's irrelevant to the present issue. Just expect me to mention it on bitbucket.

Changed 8 years ago by AlexanderDreyer

Backport from 0.8: polybori.plot uses jinja2, where available

comment:19 Changed 8 years ago by AlexanderDreyer

  • Description modified (diff)
  • Owner changed from (none) to AlexanderDreyer

I backported another thing from 0.8: polybori.plot may use jinja2, where available http://boxen.math.washington.edu/home/dreyer/spkg/polybori-0.7.1.p3.spkg

See the attached patch for details.

comment:20 Changed 8 years ago by kcrisman

Passes relevant tests on PPC OS X 10.4.

comment:21 Changed 8 years ago by AlexanderDreyer

To push this forward: it builds/installs on Solaris (t2) and passes all tests in sage/rings/polynomial/. (I tested it with the official Sage 4.7 build for Solaris.)

comment:22 Changed 8 years ago by burcin

  • Status changed from needs_review to positive_review

I've also used this version for a while and it seems to work fine. Given the reports of extensive tests above, I am switching this to positive review.

comment:23 Changed 8 years ago by jdemeyer

  • Milestone changed from sage-4.7.1 to sage-4.7.2
  • Reviewers set to Burcin Erocal

comment:24 Changed 8 years ago by burcin

  • Reviewers changed from Burcin Erocal to Burcin Erocal, Francois Bissey, Karl-Dieter Crisman

comment:25 Changed 8 years ago by jdemeyer

  • Description modified (diff)

comment:26 Changed 8 years ago by jdemeyer

  • Status changed from positive_review to needs_work

The spkg contains files which are not world-readable. In order to avoid another #11660, this should be fixed by a simple

chmod -R "og+rX" .

comment:27 Changed 8 years ago by jdemeyer

See also #11664 to do the same in sage-4.7.1 with polybori-0.7.

comment:28 Changed 8 years ago by AlexanderDreyer

  • Description modified (diff)
  • Status changed from needs_work to needs_review

comment:29 Changed 8 years ago by malb

  • Status changed from needs_review to positive_review

Files are world-readable now. returning to positive review.

comment:30 Changed 8 years ago by jdemeyer

  • Merged in set to sage-4.7.2.alpha1
  • Resolution set to fixed
  • Status changed from positive_review to closed

comment:31 Changed 8 years ago by leif

  • Reviewers changed from Burcin Erocal, Francois Bissey, Karl-Dieter Crisman to Burcin Erocal, François Bissey, Karl-Dieter Crisman
Note: See TracTickets for help on using tickets.