Jammy2211 / autolens_workspace

The PyAutoLens workspace: contains example scripts, datasets and more
https://pyautolens.readthedocs.io/
24 stars 16 forks source link

autlens PyYAML issue #16

Closed skcajs closed 1 year ago

skcajs commented 1 year ago

Hi, I'm having trouble trying to install autolens on my mac (OS ventura 13.4), I'm installing via conda.

Python versions 3.11

When doing pip install autolens...

I get this error:

`

Collecting PyYAML==5.4.1 (from autoconf==2023.7.5.2->autolens) Using cached PyYAML-5.4.1.tar.gz (175 kB) Installing build dependencies ... done Getting requirements to build wheel ... error error: subprocess-exited-with-error

× Getting requirements to build wheel did not run successfully. │ exit code: 1 ╰─> [68 lines of output] /private/var/folders/wn/sgq3s3995f376l6s7qtqsnqw0000gn/T/pip-build-env-tgni6t47/overlay/lib/python3.11/site-packages/setuptools/config/setupcfg.py:293: _DeprecatedConfig: Deprecated config in setup.cfg !!

          ********************************************************************************
          The license_file parameter is deprecated, use license_files instead.

          By 2023-Oct-30, you need to update your project and remove deprecated calls
          or your builds will no longer be supported.

          See https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for details.
          ********************************************************************************

  !!
    parsed = self.parsers.get(option_name, lambda x: x)(value)
  running egg_info
  writing lib3/PyYAML.egg-info/PKG-INFO
  writing dependency_links to lib3/PyYAML.egg-info/dependency_links.txt
  writing top-level names to lib3/PyYAML.egg-info/top_level.txt
  Traceback (most recent call last):
    File "/Users/sam/anaconda3/envs/autolens/lib/python3.11/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 353, in <module>
      main()
    File "/Users/sam/anaconda3/envs/autolens/lib/python3.11/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 335, in main
      json_out['return_val'] = hook(**hook_input['kwargs'])
                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/Users/sam/anaconda3/envs/autolens/lib/python3.11/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 118, in get_requires_for_build_wheel
      return hook(config_settings)
             ^^^^^^^^^^^^^^^^^^^^^
    File "/private/var/folders/wn/sgq3s3995f376l6s7qtqsnqw0000gn/T/pip-build-env-tgni6t47/overlay/lib/python3.11/site-packages/setuptools/build_meta.py", line 355, in get_requires_for_build_wheel
      return self._get_build_requires(config_settings, requirements=['wheel'])
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/private/var/folders/wn/sgq3s3995f376l6s7qtqsnqw0000gn/T/pip-build-env-tgni6t47/overlay/lib/python3.11/site-packages/setuptools/build_meta.py", line 325, in _get_build_requires
      self.run_setup()
    File "/private/var/folders/wn/sgq3s3995f376l6s7qtqsnqw0000gn/T/pip-build-env-tgni6t47/overlay/lib/python3.11/site-packages/setuptools/build_meta.py", line 341, in run_setup
      exec(code, locals())
    File "<string>", line 271, in <module>
    File "/private/var/folders/wn/sgq3s3995f376l6s7qtqsnqw0000gn/T/pip-build-env-tgni6t47/overlay/lib/python3.11/site-packages/setuptools/__init__.py", line 107, in setup
      return distutils.core.setup(**attrs)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/private/var/folders/wn/sgq3s3995f376l6s7qtqsnqw0000gn/T/pip-build-env-tgni6t47/overlay/lib/python3.11/site-packages/setuptools/_distutils/core.py", line 185, in setup
      return run_commands(dist)
             ^^^^^^^^^^^^^^^^^^
    File "/private/var/folders/wn/sgq3s3995f376l6s7qtqsnqw0000gn/T/pip-build-env-tgni6t47/overlay/lib/python3.11/site-packages/setuptools/_distutils/core.py", line 201, in run_commands
      dist.run_commands()
    File "/private/var/folders/wn/sgq3s3995f376l6s7qtqsnqw0000gn/T/pip-build-env-tgni6t47/overlay/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 969, in run_commands
      self.run_command(cmd)
    File "/private/var/folders/wn/sgq3s3995f376l6s7qtqsnqw0000gn/T/pip-build-env-tgni6t47/overlay/lib/python3.11/site-packages/setuptools/dist.py", line 1233, in run_command
      super().run_command(command)
    File "/private/var/folders/wn/sgq3s3995f376l6s7qtqsnqw0000gn/T/pip-build-env-tgni6t47/overlay/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 988, in run_command
      cmd_obj.run()
    File "/private/var/folders/wn/sgq3s3995f376l6s7qtqsnqw0000gn/T/pip-build-env-tgni6t47/overlay/lib/python3.11/site-packages/setuptools/command/egg_info.py", line 319, in run
      self.find_sources()
    File "/private/var/folders/wn/sgq3s3995f376l6s7qtqsnqw0000gn/T/pip-build-env-tgni6t47/overlay/lib/python3.11/site-packages/setuptools/command/egg_info.py", line 327, in find_sources
      mm.run()
    File "/private/var/folders/wn/sgq3s3995f376l6s7qtqsnqw0000gn/T/pip-build-env-tgni6t47/overlay/lib/python3.11/site-packages/setuptools/command/egg_info.py", line 549, in run
      self.add_defaults()
    File "/private/var/folders/wn/sgq3s3995f376l6s7qtqsnqw0000gn/T/pip-build-env-tgni6t47/overlay/lib/python3.11/site-packages/setuptools/command/egg_info.py", line 587, in add_defaults
      sdist.add_defaults(self)
    File "/private/var/folders/wn/sgq3s3995f376l6s7qtqsnqw0000gn/T/pip-build-env-tgni6t47/overlay/lib/python3.11/site-packages/setuptools/command/sdist.py", line 113, in add_defaults
      super().add_defaults()
    File "/private/var/folders/wn/sgq3s3995f376l6s7qtqsnqw0000gn/T/pip-build-env-tgni6t47/overlay/lib/python3.11/site-packages/setuptools/_distutils/command/sdist.py", line 251, in add_defaults
      self._add_defaults_ext()
    File "/private/var/folders/wn/sgq3s3995f376l6s7qtqsnqw0000gn/T/pip-build-env-tgni6t47/overlay/lib/python3.11/site-packages/setuptools/_distutils/command/sdist.py", line 336, in _add_defaults_ext
      self.filelist.extend(build_ext.get_source_files())
                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "<string>", line 201, in get_source_files
    File "/private/var/folders/wn/sgq3s3995f376l6s7qtqsnqw0000gn/T/pip-build-env-tgni6t47/overlay/lib/python3.11/site-packages/setuptools/_distutils/cmd.py", line 107, in __getattr__
      raise AttributeError(attr)
  AttributeError: cython_sources
  [end of output]

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

× Getting requirements to build wheel did not run successfully. │ exit code: 1 ╰─> See above for output.

note: This error originates from a subprocess, and is likely not a problem with pip. `

I think this is a problem with PyYAML version 5.4.1. It seems widely documented issue and they suggest using 5.3...

I suspect, as also stated in the issue below, PyYAML needs to be version 6 to be compatible with Python 3.10 and 3.11.

https://github.com/yaml/pyyaml/issues/724

rhayes777 commented 1 year ago

Hi Sam,

Thanks for raising this issue. We haven't officially provided support for Python 3.11 yet. Could you try with Python 3.10 for now? We're hoping to provide 3.11 support soon.

On Sun, 27 Aug 2023, 20:28 Sam Jackson, @.***> wrote:

Hi, I'm having trouble trying to install autolens on my mac (OS ventura 13.4), I'm installing via conda.

Python versions 3.11

When doing pip install autolens...

I get this error:

`Collecting PyYAML==5.4.1 (from autoconf==2023.7.5.2->autolens) Using cached PyYAML-5.4.1.tar.gz (175 kB) Installing build dependencies ... done Getting requirements to build wheel ... error error: subprocess-exited-with-error

× Getting requirements to build wheel did not run successfully. │ exit code: 1 ╰─> [68 lines of output] /private/var/folders/wn/sgq3s3995f376l6s7qtqsnqw0000gn/T/pip-build-env-tgni6t47/overlay/lib/python3.11/site-packages/setuptools/config/setupcfg.py:293: _DeprecatedConfig: Deprecated config in setup.cfg !!

      ********************************************************************************
      The license_file parameter is deprecated, use license_files instead.

      By 2023-Oct-30, you need to update your project and remove deprecated calls
      or your builds will no longer be supported.

      See https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for details.
      ********************************************************************************

!! parsed = self.parsers.get(option_name, lambda x: x)(value) running egg_info writing lib3/PyYAML.egg-info/PKG-INFO writing dependency_links to lib3/PyYAML.egg-info/dependency_links.txt writing top-level names to lib3/PyYAML.egg-info/top_level.txt Traceback (most recent call last): File "/Users/sam/anaconda3/envs/autolens/lib/python3.11/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 353, in main() File "/Users/sam/anaconda3/envs/autolens/lib/python3.11/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 335, in main json_out['return_val'] = hook(hook_input['kwargs']) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/sam/anaconda3/envs/autolens/lib/python3.11/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 118, in get_requires_for_build_wheel return hook(config_settings) ^^^^^^^^^^^^^^^^^^^^^ File "/private/var/folders/wn/sgq3s3995f376l6s7qtqsnqw0000gn/T/pip-build-env-tgni6t47/overlay/lib/python3.11/site-packages/setuptools/build_meta.py", line 355, in get_requires_for_build_wheel return self._get_build_requires(config_settings, requirements=['wheel']) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/private/var/folders/wn/sgq3s3995f376l6s7qtqsnqw0000gn/T/pip-build-env-tgni6t47/overlay/lib/python3.11/site-packages/setuptools/build_meta.py", line 325, in _get_build_requires self.run_setup() File "/private/var/folders/wn/sgq3s3995f376l6s7qtqsnqw0000gn/T/pip-build-env-tgni6t47/overlay/lib/python3.11/site-packages/setuptools/build_meta.py", line 341, in run_setup exec(code, locals()) File "", line 271, in File "/private/var/folders/wn/sgq3s3995f376l6s7qtqsnqw0000gn/T/pip-build-env-tgni6t47/overlay/lib/python3.11/site-packages/setuptools/init.py", line 107, in setup return distutils.core.setup(attrs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/private/var/folders/wn/sgq3s3995f376l6s7qtqsnqw0000gn/T/pip-build-env-tgni6t47/overlay/lib/python3.11/site-packages/setuptools/_distutils/core.py", line 185, in setup return run_commands(dist) ^^^^^^^^^^^^^^^^^^ File "/private/var/folders/wn/sgq3s3995f376l6s7qtqsnqw0000gn/T/pip-build-env-tgni6t47/overlay/lib/python3.11/site-packages/setuptools/_distutils/core.py", line 201, in run_commands dist.run_commands() File "/private/var/folders/wn/sgq3s3995f376l6s7qtqsnqw0000gn/T/pip-build-env-tgni6t47/overlay/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 969, in run_commands self.run_command(cmd) File "/private/var/folders/wn/sgq3s3995f376l6s7qtqsnqw0000gn/T/pip-build-env-tgni6t47/overlay/lib/python3.11/site-packages/setuptools/dist.py", line 1233, in run_command super().run_command(command) File "/private/var/folders/wn/sgq3s3995f376l6s7qtqsnqw0000gn/T/pip-build-env-tgni6t47/overlay/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 988, in run_command cmd_obj.run() File "/private/var/folders/wn/sgq3s3995f376l6s7qtqsnqw0000gn/T/pip-build-env-tgni6t47/overlay/lib/python3.11/site-packages/setuptools/command/egg_info.py", line 319, in run self.find_sources() File "/private/var/folders/wn/sgq3s3995f376l6s7qtqsnqw0000gn/T/pip-build-env-tgni6t47/overlay/lib/python3.11/site-packages/setuptools/command/egg_info.py", line 327, in find_sources mm.run() File "/private/var/folders/wn/sgq3s3995f376l6s7qtqsnqw0000gn/T/pip-build-env-tgni6t47/overlay/lib/python3.11/site-packages/setuptools/command/egg_info.py", line 549, in run self.add_defaults() File "/private/var/folders/wn/sgq3s3995f376l6s7qtqsnqw0000gn/T/pip-build-env-tgni6t47/overlay/lib/python3.11/site-packages/setuptools/command/egg_info.py", line 587, in add_defaults sdist.add_defaults(self) File "/private/var/folders/wn/sgq3s3995f376l6s7qtqsnqw0000gn/T/pip-build-env-tgni6t47/overlay/lib/python3.11/site-packages/setuptools/command/sdist.py", line 113, in add_defaults super().add_defaults() File "/private/var/folders/wn/sgq3s3995f376l6s7qtqsnqw0000gn/T/pip-build-env-tgni6t47/overlay/lib/python3.11/site-packages/setuptools/_distutils/command/sdist.py", line 251, in add_defaults self._add_defaults_ext() File "/private/var/folders/wn/sgq3s3995f376l6s7qtqsnqw0000gn/T/pip-build-env-tgni6t47/overlay/lib/python3.11/site-packages/setuptools/_distutils/command/sdist.py", line 336, in _add_defaults_ext self.filelist.extend(build_ext.get_source_files()) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "", line 201, in get_source_files File "/private/var/folders/wn/sgq3s3995f376l6s7qtqsnqw0000gn/T/pip-build-env-tgni6t47/overlay/lib/python3.11/site-packages/setuptools/_distutils/cmd.py", line 107, in getattr raise AttributeError(attr) AttributeError: cython_sources [end of output]

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

× Getting requirements to build wheel did not run successfully. │ exit code: 1 ╰─> See above for output.

note: This error originates from a subprocess, and is likely not a problem with pip. `

I think this is a problem with PyYAML version 5.4.1. It seems widely documented issue and they suggest using 5.3...

I suspect, as also stated in the issue below, PyYAML needs to be version 6 to be compatible with Python 3.10 and 3.11.

yaml/pyyaml#724 https://github.com/yaml/pyyaml/issues/724

— Reply to this email directly, view it on GitHub https://github.com/Jammy2211/autolens_workspace/issues/16, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABQRGMR3GDV5PL4FZJVAKKDXXONVRANCNFSM6AAAAAA4AQFAAM . You are receiving this because you are subscribed to this thread.Message ID: @.***>

skcajs commented 1 year ago

Hi Rhyes777,

I've created a new conda environment with python version 3.9 and 3.10, and both produce the same error. The specific python version I'm using now is Python 3.10.12

rhayes777 commented 1 year ago

Ah ok so the requirement is PyYAML<6.1. If you explicitly install 5.3 in an environment before installing autolens I think that should mean pip does not attempt to install the version of PyYAML with an issue. I'll update the requirements file to avoid installing the problematic version for the next release.

On Sun, 27 Aug 2023, 20:40 Sam Jackson, @.***> wrote:

Hi Rhyes777,

I've created a new conda environment with python version 3.9 and 3.10, and both produce the same error. The specific python version I'm using now is Python 3.10.12

— Reply to this email directly, view it on GitHub https://github.com/Jammy2211/autolens_workspace/issues/16#issuecomment-1694744998, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABQRGMSA7VT2EAJ7WEGZE7TXXOPEPANCNFSM6AAAAAA4AQFAAM . You are receiving this because you commented.Message ID: @.***>

skcajs commented 1 year ago

Unfortunately I think it forces 5.4.1 as per this line "Collecting PyYAML==5.4.1".

Will build from source for now. :)

rhayes777 commented 1 year ago

Ah that's a pain sorry!

This Stack Overflow post explains how to install a project and it's dependencies whilst specifically omitting a given dependency:

https://stackoverflow.com/a/68225495

On Sun, 27 Aug 2023, 21:09 Sam Jackson, @.***> wrote:

Unfortunately I think it forces 5.4.1 to install as per this line "Collecting PyYAML==5.4.1".

Will build from source for now. :)

— Reply to this email directly, view it on GitHub https://github.com/Jammy2211/autolens_workspace/issues/16#issuecomment-1694750378, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABQRGMVH7PYBWPXSDLU24VLXXOSQ3ANCNFSM6AAAAAA4AQFAAM . You are receiving this because you commented.Message ID: @.***>