whitead / dmol-book

Deep learning for molecules and materials book
https://dmol.pub
Other
609 stars 120 forks source link

Sklearn depreciated while trying to install dmol #248

Open wttai004 opened 6 months ago

wttai004 commented 6 months ago

An error pops up while I'm trying to install the dmol package via

pip install git+https://github.com/deepmind/dm-haiku install dmol-book

This apparently invokes installing sklearn, which is depreciated in favor of scikit-learn. The dmol package is required in, e.g. Ch10. I've already have the latest version of scikit-learn installed.

Collecting sklearn (from dmol-book)
  Downloading sklearn-0.0.post12.tar.gz (2.6 kB)
  Preparing metadata (setup.py) ... error
  error: subprocess-exited-with-error

  × python setup.py egg_info did not run successfully.
  │ exit code: 1
  ╰─> [15 lines of output]
      The 'sklearn' PyPI package is deprecated, use 'scikit-learn'
      rather than 'sklearn' for pip commands.

      Here is how to fix this error in the main use cases:
      - use 'pip install scikit-learn' rather than 'pip install sklearn'
      - replace 'sklearn' by 'scikit-learn' in your pip requirements files
        (requirements.txt, setup.py, setup.cfg, Pipfile, etc ...)
      - if the 'sklearn' package is used by one of your dependencies,
        it would be great if you take some time to track which package uses
        'sklearn' instead of 'scikit-learn' and report it to their issue tracker
      - as a last resort, set the environment variable
        SKLEARN_ALLOW_DEPRECATED_SKLEARN_PACKAGE_INSTALL=True to avoid this error

      More information is available at
      https://github.com/scikit-learn/sklearn-pypi-package
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed

× Encountered error while generating package metadata.
╰─> See above for output.

note: This is an issue with the package mentioned above, not pip.
hint: See above for details.
iaddison-smith commented 2 weeks ago

I had the same problem and my solution was change the line 32 (emlp library)

!git clone https://github.com/whitead/dmol-book.git
!sed '32s/emlp==1.0.2/emlp/' dmol-book/package/setup.py -i 
!pip install dmol-book/package/.