These are chat archives for opencobra/cobrapy

20th
Oct 2016
Henning Redestig
@hredestig
Oct 20 2016 06:58
I apologize that it appears to have gotten more complicated, I wanted to straighten things out with the contributions document, but was still open for discussion in the pull request, until then I didn't implement any of the proposed changes. But to solve this confusions I will now go ahead and switch the default branch to devel and merge the new contributions document. Will also make some updates in the doc but sadly the wheels are currently blocked by a issues with the manylinux docker image, stay tuned
Peter St. John
@pstjohn
Oct 20 2016 14:41
Gotcha, thanks for the update. No worries on making it more complicated, I just wanted to get a better understanding of how things were working :). Definitely keep me posted on the automated wheel deployment!
Henning Redestig
@hredestig
Oct 20 2016 14:50
I just released 0.5.2, this time using the old build plans and manual wheel building. Hopefully the downgrade is temporary and the manylinux images start working again at which point I can re-enable that - but, armed with experience, probably in a different build repository (as multibuild was originally intended) to make testing faster.
Peter St. John
@pstjohn
Oct 20 2016 15:37
So I guess I’m confused why we need multibuild? does the ‘standard’ pypi deployment from travis not allow you to build and upload wheels? https://docs.travis-ci.com/user/deployment/pypi/
Christian Diener
@cdiener
Oct 20 2016 15:40
Yeah but not the manylinux wheels that include all additional shared libraries. For instance with the manylinux build you dont need glpk installed anymore. The compiled lib is part of the wheel. In general manylinux wheels are complete binary packages. There is no compile step anymore.
Henning Redestig
@hredestig
Oct 20 2016 15:42
Exactly, the wheels built by travis don't fix the binary dependencies so you then still need to install glpk making the wheel a bit pointless. On mac, you need to use 'delocate' to copy the binaries to the package (and 'auditwheel' on linux)
and all this will then be irrelevant when we switch to optlang..
Peter St. John
@pstjohn
Oct 20 2016 15:45
ok cool, thanks for clearing that up! Just wanted to make sure I understood the issue. On optlang, that’s a good point.. But if we add C extensions later (ie., for EFMs / minimum cut sets) it will be worth the effort?
Henning Redestig
@hredestig
Oct 20 2016 15:47
Yes, I really liked the idea of an automated release process so haven't given up on the idea - I mean, it did work for a while...
Peter St. John
@pstjohn
Oct 20 2016 15:47
but surely optlang has similar issues, right? how do you handle it there?
Henning Redestig
@hredestig
Oct 20 2016 15:49
Optlang is also pure python, but depends on swiglpk and there we tried to solve it the same way (so same problems..)
Peter St. John
@pstjohn
Oct 20 2016 15:50
gotcha. Cython wouldn’t make it any easier right? I’ve had good luck wrapping gplk with cython
but probably the same issue of requiring the external library
Henning Redestig
@hredestig
Oct 20 2016 15:50
cobra already uses cython but that indeed still needs external libraries
Christian Diener
@cdiener
Oct 20 2016 16:56
Btw. Does the same error with the manylinux build also occur when using Ali's script?
Nikolaus Sonnenschein
@phantomas1234
Oct 20 2016 17:02
I would like to mention here that the manylinux/multibuild tools are maintained by the PyPi folks. So they'll probably become the standard for python packaging at some point. And once they'll work reliably (sorr Henning) they will be a much better solution then conda. It is kinda sad that windows wheels are so much easier to generate.
Christian Diener
@cdiener
Oct 20 2016 17:12
Yep. The only problem is the requirement of pip 8.1 which is not packaged by many OSs at the moment. I think it will see much wider adoption in a year when more people use a version of pip that can use manylinux wheels.
Nikolaus Sonnenschein
@phantomas1234
Oct 20 2016 17:32
maybe to also give some progress update on our side, Henning is currently working on the cameo.core -> cobrapy.core merge and I am close to pushing the new gurobi interface for optlang.