-
-
Notifications
You must be signed in to change notification settings - Fork 596
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
update polymake interface to 2.14-rc1 #14116
Comments
comment:1
Attachment: trac_14116_polymake_upgrade.patch.gz A related effort is https://bitbucket.org/burcin/pypolymake |
comment:2
Needs to be rebased to #13432. |
comment:3
Uploading rebased patch next. But:
This is presumably related to your comment about getting rid of
No idea, though the message seems like it would be clear to someone who knew Cython. |
Attachment: trac_14116-polymake-upgrade-rebased.patch.gz |
comment:4
kcrisman: I'm considering replacing my own work by what Burcin has done with pypolymake. He works around some cython issues in a much nicer way. Have you looked at that, too? |
comment:5
No. It's not exactly clear to me what to do (though this seems likely), and the forums suggest that it doesn't have as much functionality as the interface here, though I may be misinterpreting that. It would be nice to have it in an spkg form, though I understand that is different from the lmonade philosophy. Also note this polymake user's attempt, though apparently they later just used pypolymake. I assume that user is not yourself? |
comment:6
In particular, the following things seems like hacks:
and this apparently required patch diff --git a/sage-env b/sage-env
--- a/sage-env
+++ b/sage-env
@@ -219,6 +219,9 @@
mkdir -p "$MPLCONFIGDIR"
fi
+LD_PRELOAD="$SAGE_LOCAL/lib/libpolymake.so"
+export LD_PRELOAD
+
LD_LIBRARY_PATH="$SAGE_ROOT/local/lib/:$LD_LIBRARY_PATH" && export LD_LIBRARY_PATH
# The following is needed for openmpi:
LD_LIBRARY_PATH="$SAGE_ROOT/local/lib/openmpi:$LD_LIBRARY_PATH" && export LD_LIBRARY_PATH which I'll point out would no longer apply directly, as the |
comment:7
I just pushed some initial work to https://github.com/tkluck/sage/tree/polymake-upgrade It integrates pypolymake with Sage, while keeping backwards compatibility with the old interface. Additionally, it adds an interface allowing you to specify polytopes by Sage expressions. I'm having some trouble getting the doctests to work, since polymake has a habit of "spamming" stderr. (Actually, it outputs citation information, which is worthwhile. We do need to deal with it, though.) Also, trying to be backwards compatible both with Sage and with pypolymake leads to ugliness such as having both I'm doing development in the new integrated git repository, which is supposed to replace the mercurial repositories sometime this Summer. Here are instructions for reviewing my branch. They include cloning the repository and building Sage from source, so this takes a lot of time. I will also make mercurial patches available for review at some point.
|
comment:8
How about
|
comment:9
Also, why do we need to hardcode the RPATH? This will break during relocation, fyi. |
comment:10
Thanks for your comments, Volker. I removed hardcoding the RPATH, which seems to have been a leftover from early debugging. I also agree with your idea about eventually making polymake just a backend for the polyhedron class. In anticipation, I did as you suggested and moved the library interface code to I'm not sure if we need to do all this integration work before upgrading polymake and merging this into Sage. Currently, the object |
comment:11
Can you actually attach your patch? ;-) There is also a note about Cython 0.17pre that is useless now. Can you remove it while you are at it? I agree that we don't have to do everything on this ticket. But which base rings does polymake support, and which ones are wrapped here? The polymake web page says something about quadratic field extensions which might be interesting... |
comment:12
The code is up at github: I'll make this into a mercurial patch at some point, but I haven't yet. These kind of updates (simultaneously updating a package and its library interface) are exactly the kind of thing the integrated repository was setup to do. |
Branch: u/tkluck/ticket/14116 |
comment:14
reinstate dependencies after they got lost by using the new dev-scripts. |
Commit: |
Last 10 new commits:
|
Changed branch from u/tkluck/ticket/14116 to public/ticket/14416 |
Branch pushed to git repo; I updated commit sha1. New commits:
|
This comment has been minimized.
This comment has been minimized.
comment:50
New tentative at #20892 for polymake-3.0 |
comment:51
Matthias, are you going to repurpose this and use some of it for the updated interface now that you have things working in #20892 for upgrading polymake? |
comment:52
I think Vincent may be working on it; and it sounds like it will be on a new ticket rather than this one here. |
comment:53
I am indeed working on the Cython interface to polymake. I should come out with a minimal version by the end of the week. |
comment:54
I'm proposing to close this outdated ticket because newer efforts have made it obsolete. |
comment:55
Sounds reasonable - just be sure to point to the tickets which overtake it here :) |
comment:56
That's:
|
Changed reviewer from Karl-Dieter Crisman, Frédéric Chapoton to Karl-Dieter Crisman, Frédéric Chapoton, Matthias Köppe |
comment:58
Closing tickets in the sage-duplicate/invalid/wontfix module with positive_review (i.e. someone has confirmed they should be closed). |
I've written a new interface for polymake using its shared library interface, while trying to stay backward compatible with what there was before.
I've classified this as a defect, since the current interface doesn't work anymore.
http://www.polymake.org/lib/exe/fetch.php/download/polymake-2.14r1-minimal.tar.bz2
Depends on #13768
Depends on #13767
CC: @williamstein @mkoeppe
Component: geometry
Work Issues: source tar link, fix doctests, info for how to install, add doctests
Author: Timo Kluck
Branch/Commit: public/ticket/14416 @
50f6da9
Reviewer: Karl-Dieter Crisman, Frédéric Chapoton, Matthias Köppe
Issue created by migration from https://trac.sagemath.org/ticket/14116
The text was updated successfully, but these errors were encountered: