ContextLab/hypertools

Dependencies and installation via pip

jeremymanning opened this issue · 0 comments

I'm wondering if we should take a slightly different approach to dependencies, now that we're starting to rely more and more on external dependencies. My general thinking is that we could:

  • Include only a minimal basic set of very stable requirements in requirements.txt that support the minimum viable functionality of hypertools
  • Provide an optional set of requirements (potentially installable either as a whole or individually through a convenient provided command) for supporting the more "advanced" functionality that goes beyond the minimum viable set.
  • If the user tries to call some function or option that isn't supported given their installed package, we:
    • Output a warning that includes instructions for installing that feature
    • Throw an error

This will allow us to increase the reliability of the installation while still maintaining support for advanced users.

The goal is that: above all else, pip install hypertools should run without crashing and result in a minimum viable installation of hypertools.