Skip to content

Snorkel fails to install for Python 3.8 due to scikit-learn version #1627

@rjurney

Description

@rjurney

Issue description

When you install Snorkel, it tries to install scikit-learn - which does not build. Thus Snorkel does not build. Can we please update the version of scikit-learn so people can build and use Snorkel?

Code example/repro steps

pip install snorkel

It tries to install scikit-learn<0.22.0,>=0.20.2 and fails :(

Building wheels for collected packages: scikit-learn
  Building wheel for scikit-learn (setup.py) ... error
  ERROR: Command errored out with exit status 1:
   command: /Users/rjurney/opt/anaconda3/envs/deep_discovery/bin/python -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/private/var/folders/3h/vnn5rkyx3nx7yyrfyynrhrlw0000gn/T/pip-install-oo_m8xg5/scikit-learn_d710130497834af2bd9b9f9514867b07/setup.py'"'"'; __file__='"'"'/private/var/folders/3h/vnn5rkyx3nx7yyrfyynrhrlw0000gn/T/pip-install-oo_m8xg5/scikit-learn_d710130497834af2bd9b9f9514867b07/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d /private/var/folders/3h/vnn5rkyx3nx7yyrfyynrhrlw0000gn/T/pip-wheel-1u1ts_5o
       cwd: /private/var/folders/3h/vnn5rkyx3nx7yyrfyynrhrlw0000gn/T/pip-install-oo_m8xg5/scikit-learn_d710130497834af2bd9b9f9514867b07/
  Complete output (28 lines):
  Partial import of sklearn during the build process.
  Traceback (most recent call last):
    File "<string>", line 1, in <module>
    File "/private/var/folders/3h/vnn5rkyx3nx7yyrfyynrhrlw0000gn/T/pip-install-oo_m8xg5/scikit-learn_d710130497834af2bd9b9f9514867b07/setup.py", line 290, in <module>
      setup_package()
    File "/private/var/folders/3h/vnn5rkyx3nx7yyrfyynrhrlw0000gn/T/pip-install-oo_m8xg5/scikit-learn_d710130497834af2bd9b9f9514867b07/setup.py", line 286, in setup_package
      setup(**metadata)
    File "/Users/rjurney/opt/anaconda3/envs/deep_discovery/lib/python3.8/site-packages/numpy/distutils/core.py", line 135, in setup
      config = configuration()
    File "/private/var/folders/3h/vnn5rkyx3nx7yyrfyynrhrlw0000gn/T/pip-install-oo_m8xg5/scikit-learn_d710130497834af2bd9b9f9514867b07/setup.py", line 174, in configuration
      config.add_subpackage('sklearn')
    File "/Users/rjurney/opt/anaconda3/envs/deep_discovery/lib/python3.8/site-packages/numpy/distutils/misc_util.py", line 1019, in add_subpackage
      config_list = self.get_subpackage(subpackage_name, subpackage_path,
    File "/Users/rjurney/opt/anaconda3/envs/deep_discovery/lib/python3.8/site-packages/numpy/distutils/misc_util.py", line 985, in get_subpackage
      config = self._get_configuration_from_setup_py(
    File "/Users/rjurney/opt/anaconda3/envs/deep_discovery/lib/python3.8/site-packages/numpy/distutils/misc_util.py", line 927, in _get_configuration_from_setup_py
      config = setup_module.configuration(*args)
    File "sklearn/setup.py", line 62, in configuration
      config.add_subpackage('utils')
    File "/Users/rjurney/opt/anaconda3/envs/deep_discovery/lib/python3.8/site-packages/numpy/distutils/misc_util.py", line 1019, in add_subpackage
      config_list = self.get_subpackage(subpackage_name, subpackage_path,
    File "/Users/rjurney/opt/anaconda3/envs/deep_discovery/lib/python3.8/site-packages/numpy/distutils/misc_util.py", line 985, in get_subpackage
      config = self._get_configuration_from_setup_py(
    File "/Users/rjurney/opt/anaconda3/envs/deep_discovery/lib/python3.8/site-packages/numpy/distutils/misc_util.py", line 927, in _get_configuration_from_setup_py
      config = setup_module.configuration(*args)
    File "sklearn/utils/setup.py", line 8, in configuration
      from Cython import Tempita
  ModuleNotFoundError: No module named 'Cython'
  ----------------------------------------
  ERROR: Failed building wheel for scikit-learn
  Running setup.py clean for scikit-learn
Failed to build scikit-learn
Installing collected packages: grpcio, absl-py, tensorboard, scikit-learn, networkx, munkres, snorkel
  Attempting uninstall: scikit-learn
    Found existing installation: scikit-learn 0.24.1
    Uninstalling scikit-learn-0.24.1:
      Successfully uninstalled scikit-learn-0.24.1
    Running setup.py install for scikit-learn ... error
    ERROR: Command errored out with exit status 1:
     command: /Users/rjurney/opt/anaconda3/envs/deep_discovery/bin/python -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/private/var/folders/3h/vnn5rkyx3nx7yyrfyynrhrlw0000gn/T/pip-install-oo_m8xg5/scikit-learn_d710130497834af2bd9b9f9514867b07/setup.py'"'"'; __file__='"'"'/private/var/folders/3h/vnn5rkyx3nx7yyrfyynrhrlw0000gn/T/pip-install-oo_m8xg5/scikit-learn_d710130497834af2bd9b9f9514867b07/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /private/var/folders/3h/vnn5rkyx3nx7yyrfyynrhrlw0000gn/T/pip-record-kias8bzm/install-record.txt --single-version-externally-managed --compile --install-headers /Users/rjurney/opt/anaconda3/envs/deep_discovery/include/python3.8/scikit-learn
         cwd: /private/var/folders/3h/vnn5rkyx3nx7yyrfyynrhrlw0000gn/T/pip-install-oo_m8xg5/scikit-learn_d710130497834af2bd9b9f9514867b07/
    Complete output (28 lines):
    Partial import of sklearn during the build process.
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/private/var/folders/3h/vnn5rkyx3nx7yyrfyynrhrlw0000gn/T/pip-install-oo_m8xg5/scikit-learn_d710130497834af2bd9b9f9514867b07/setup.py", line 290, in <module>
        setup_package()
      File "/private/var/folders/3h/vnn5rkyx3nx7yyrfyynrhrlw0000gn/T/pip-install-oo_m8xg5/scikit-learn_d710130497834af2bd9b9f9514867b07/setup.py", line 286, in setup_package
        setup(**metadata)
      File "/Users/rjurney/opt/anaconda3/envs/deep_discovery/lib/python3.8/site-packages/numpy/distutils/core.py", line 135, in setup
        config = configuration()
      File "/private/var/folders/3h/vnn5rkyx3nx7yyrfyynrhrlw0000gn/T/pip-install-oo_m8xg5/scikit-learn_d710130497834af2bd9b9f9514867b07/setup.py", line 174, in configuration
        config.add_subpackage('sklearn')
      File "/Users/rjurney/opt/anaconda3/envs/deep_discovery/lib/python3.8/site-packages/numpy/distutils/misc_util.py", line 1019, in add_subpackage
        config_list = self.get_subpackage(subpackage_name, subpackage_path,
      File "/Users/rjurney/opt/anaconda3/envs/deep_discovery/lib/python3.8/site-packages/numpy/distutils/misc_util.py", line 985, in get_subpackage
        config = self._get_configuration_from_setup_py(
      File "/Users/rjurney/opt/anaconda3/envs/deep_discovery/lib/python3.8/site-packages/numpy/distutils/misc_util.py", line 927, in _get_configuration_from_setup_py
        config = setup_module.configuration(*args)
      File "sklearn/setup.py", line 62, in configuration
        config.add_subpackage('utils')
      File "/Users/rjurney/opt/anaconda3/envs/deep_discovery/lib/python3.8/site-packages/numpy/distutils/misc_util.py", line 1019, in add_subpackage
        config_list = self.get_subpackage(subpackage_name, subpackage_path,
      File "/Users/rjurney/opt/anaconda3/envs/deep_discovery/lib/python3.8/site-packages/numpy/distutils/misc_util.py", line 985, in get_subpackage
        config = self._get_configuration_from_setup_py(
      File "/Users/rjurney/opt/anaconda3/envs/deep_discovery/lib/python3.8/site-packages/numpy/distutils/misc_util.py", line 927, in _get_configuration_from_setup_py
        config = setup_module.configuration(*args)
      File "sklearn/utils/setup.py", line 8, in configuration
        from Cython import Tempita
    ModuleNotFoundError: No module named 'Cython'
    ----------------------------------------
  Rolling back uninstall of scikit-learn
  Moving to /Users/rjurney/opt/anaconda3/envs/deep_discovery/lib/python3.8/site-packages/scikit_learn-0.24.1.dist-info/
   from /Users/rjurney/opt/anaconda3/envs/deep_discovery/lib/python3.8/site-packages/~cikit_learn-0.24.1.dist-info
  Moving to /Users/rjurney/opt/anaconda3/envs/deep_discovery/lib/python3.8/site-packages/sklearn/
   from /Users/rjurney/opt/anaconda3/envs/deep_discovery/lib/python3.8/site-packages/~klearn
ERROR: Command errored out with exit status 1: /Users/rjurney/opt/anaconda3/envs/deep_discovery/bin/python -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/private/var/folders/3h/vnn5rkyx3nx7yyrfyynrhrlw0000gn/T/pip-install-oo_m8xg5/scikit-learn_d710130497834af2bd9b9f9514867b07/setup.py'"'"'; __file__='"'"'/private/var/folders/3h/vnn5rkyx3nx7yyrfyynrhrlw0000gn/T/pip-install-oo_m8xg5/scikit-learn_d710130497834af2bd9b9f9514867b07/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /private/var/folders/3h/vnn5rkyx3nx7yyrfyynrhrlw0000gn/T/pip-record-kias8bzm/install-record.txt --single-version-externally-managed --compile --install-headers /Users/rjurney/opt/anaconda3/envs/deep_discovery/include/python3.8/scikit-learn Check the logs for full command output.

Expected Behavior

I expect the install to succeed. It fails.

System Info

  • How you installed Snorkel (conda, pip, source): pip
  • Build command you used (if compiling from source):
  • OS: Mac OS X 10.15.7 (19H524) - bash
  • Python version: Python 3.8.5
  • Snorkel version: snorkel-0.9.6-py3-none-any.whl
  • Versions of any other relevant libraries:

Additional context

Add any other context about the problem here.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions