python-mip icon indicating copy to clipboard operation
python-mip copied to clipboard

[QUESTION] conda-forge release?

Open jGaboardi opened this issue 5 years ago • 13 comments

I was wondering if there are any plans to create a release for mip on conda-forge?

jGaboardi avatar Jan 29 '20 14:01 jGaboardi

Actually, we haven’t considered this possibility. Would you point out the advantages of also releasing mip via conda-forge? We currently do it via only via pip (http://pip.pypa.io). Em 29 de jan de 2020 11:07 -0300, James Gaboardi [email protected], escreveu:

I was wondering if there are any plans to create a release for mip on conda-forge? — You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub, or unsubscribe.

tuliotoffolo avatar Jan 29 '20 17:01 tuliotoffolo

  • With conda-forge you can efficiently supply binaries that are pre-built across platforms. It is an excellent choice for version control and avoiding install conflicts for users. Before pulp was available via conda-forge it was a bit tricky to get everything compiled and in working order. Though this does not necessarily seem to be the case with mip, as I installed it without incident via pip.
  • The scientific python community is gravitating to conda-forge with nearly all major and minor packages providing a release on both pip and conda-forge.
  • From my personal experience, the IT staff at large organizations (or secure research data centers) is much more willing to install Python/R/etc. packages if they are provided via conda-forge than only pip.

jGaboardi avatar Jan 29 '20 17:01 jGaboardi

Hi @jGaboardi , thanks for making us aware of conda-forge. We currently supply pre-built binaries for the tree platforms in the pip package, but the solution is ugly: the binaries for all three platforms are installed in the user computer with the package and only in runtime the platform is detected and the right native shared library is used. It would be much more efficient to have different packages for different architectures, what seems to be possible with conda-forge. I'll study how to create these packages. If you have some pointers please share it here.

h-g-s avatar Feb 04 '20 00:02 h-g-s

@tuliotoffolo @tuliotoffolo I am more than happy to contribute. I think a good starting point for mip is to see how pulp's conda-forge release is built --> conda-forge/pulp-feedstock.

jGaboardi avatar Feb 04 '20 01:02 jGaboardi

Thanks, James. We’ll take a look at it! Em 3 de fev de 2020 22:53 -0300, James Gaboardi [email protected] escreveu:

@tuliotoffolo @tuliotoffolo I am more than happy to contribute. I think am good starting point for mip is to see how pulp's conda-forge release is built --> conda-forge/pulp-feedstock. — You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or unsubscribe.

tuliotoffolo avatar Feb 04 '20 22:02 tuliotoffolo

Food for thought: grayskull

jGaboardi avatar Mar 12 '20 02:03 jGaboardi

xref #192

jGaboardi avatar Sep 17 '21 12:09 jGaboardi

@jGaboardi thanks for bringing this up again. I guess the reasons have already been well laid out, but I will just reiterate that conda-forge does a great job of solving the problem of how to distribute cross-platform binaries. If nothing else, it allows that problem to be solved once rather than over and over by each person who maintains a Python package depending on Cbc. It allows us to focus separately on just the task of packaging Cbc in a way that is useful for Python packages that need to use it. This would be a big improvement on what python-mip is currently doing.

There is one caveat and that is that the conda-forge package currently doesn't provide Windows binaries. That will only happen once we get the current development version out to release.

tkralphs avatar Sep 17 '21 15:09 tkralphs