hpclab / rankeval

Official repository of RankEval: An Evaluation and Analysis Framework for Learning-to-Rank Solutions.
http://rankeval.isti.cnr.it/
Mozilla Public License 2.0
88 stars 11 forks source link

turn coremltools dependency into a soft dependency? #11

Closed zenogantner closed 5 years ago

zenogantner commented 5 years ago

Hi,

coremltools has a fixed version dependency on six 1.10.0, which is not the latest, and which often causes dependency/version problems. See e.g. https://github.com/apple/coremltools/issues/141

It would be nice to turn this into a soft dependency (meaning we should try to import the module on demand, and give out a friendly error message if the import fails), because coremltools does not provide a core feature, but is merely used to support catboost.

Currently, I am commenting out the dependency completely to be able to install rankeval, however this is not a sustainable solution...

zenogantner commented 5 years ago

coremltools is now fixed on master, so most likely we do not need the soft dependency as soon as they release their new version on PyPI.

https://github.com/apple/coremltools/pull/298

strani commented 5 years ago

Hi, We knew of this problem but were waiting for a fix in coremltools. Your proposed workaround was ok. However, given you fixed the library, there is no need anymore of the soft dependency solution. Thank you!

zenogantner commented 5 years ago

The problem is that so far, the coremltools fix has not been released to PyPI yet.

So it may make sense to still introduce the suggested workaround.

As of now, rankeval is not installable automatically in quite a few setups. Of course one could try to use virtual environments etc. as much as possible, but that has its limits the moment you want to combine with a package that depends on a newer version of six ...

strani commented 5 years ago

Ok, I integrated the idea of converting coremltools into a soft dependency in the develop branch of rankeval. I'll try today to fix issue #12 (which cause issue #19) and make a new release with all the latest updates.

zenogantner commented 5 years ago

https://pypi.org/project/coremltools/#history -- coremltools was released today.