pypa / pip

The Python package installer
https://pip.pypa.io/
MIT License
9.48k stars 3.01k forks source link

AttributeError: install_layout. Did you mean: 'install_platlib'? #10857

Closed nschloe closed 2 years ago

nschloe commented 2 years ago

Description

I'm trying to install my local dev copy of tikzplotlib and it fails since pip 22. Not sure what's going wrong now.

Full output:

❯ pip install .
Defaulting to user installation because normal site-packages is not writeable
Looking in indexes: https://pypi.org/simple, https://packagecloud.io/eugeny/tabby/pypi/simple
Processing /home/nschloe/software/nschloe/tikzplotlib
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Requirement already satisfied: matplotlib>=1.4.0 in /home/nschloe/.local/lib/python3.10/site-packages (from tikzplotlib==0.9.17) (3.5.1)
Requirement already satisfied: numpy in /home/nschloe/.local/lib/python3.10/site-packages (from tikzplotlib==0.9.17) (1.22.1)
Requirement already satisfied: Pillow in /home/nschloe/.local/lib/python3.10/site-packages (from tikzplotlib==0.9.17) (9.0.0)
Requirement already satisfied: webcolors in /home/nschloe/.local/lib/python3.10/site-packages (from tikzplotlib==0.9.17) (1.11.1)
Requirement already satisfied: pyparsing>=2.2.1 in /home/nschloe/.local/lib/python3.10/site-packages (from matplotlib>=1.4.0->tikzplotlib==0.9.17) (3.0.7)
Requirement already satisfied: kiwisolver>=1.0.1 in /home/nschloe/.local/lib/python3.10/site-packages (from matplotlib>=1.4.0->tikzplotlib==0.9.17) (1.3.2)
Requirement already satisfied: cycler>=0.10 in /home/nschloe/.local/lib/python3.10/site-packages (from matplotlib>=1.4.0->tikzplotlib==0.9.17) (0.11.0)
Requirement already satisfied: packaging>=20.0 in /home/nschloe/.local/lib/python3.10/site-packages (from matplotlib>=1.4.0->tikzplotlib==0.9.17) (21.3)
Requirement already satisfied: python-dateutil>=2.7 in /home/nschloe/.local/lib/python3.10/site-packages (from matplotlib>=1.4.0->tikzplotlib==0.9.17) (2.8.2)
Requirement already satisfied: fonttools>=4.22.0 in /home/nschloe/.local/lib/python3.10/site-packages (from matplotlib>=1.4.0->tikzplotlib==0.9.17) (4.29.0)
Requirement already satisfied: six>=1.5 in /usr/lib/python3/dist-packages (from python-dateutil>=2.7->matplotlib>=1.4.0->tikzplotlib==0.9.17) (1.16.0)
Building wheels for collected packages: tikzplotlib
  Building wheel for tikzplotlib (pyproject.toml) ... error
  error: subprocess-exited-with-error

  × Building wheel for tikzplotlib (pyproject.toml) did not run successfully.
  │ exit code: 1
  ╰─> [72 lines of output]
      running bdist_wheel
      running build
      running build_py
      creating build
      creating build/lib
      creating build/lib/tikzplotlib
      copying src/tikzplotlib/_patch.py -> build/lib/tikzplotlib
      copying src/tikzplotlib/_text.py -> build/lib/tikzplotlib
      copying src/tikzplotlib/_image.py -> build/lib/tikzplotlib
      copying src/tikzplotlib/_line2d.py -> build/lib/tikzplotlib
      copying src/tikzplotlib/_markers.py -> build/lib/tikzplotlib
      copying src/tikzplotlib/_hatches.py -> build/lib/tikzplotlib
      copying src/tikzplotlib/_path.py -> build/lib/tikzplotlib
      copying src/tikzplotlib/_color.py -> build/lib/tikzplotlib
      copying src/tikzplotlib/_save.py -> build/lib/tikzplotlib
      copying src/tikzplotlib/_cleanfigure.py -> build/lib/tikzplotlib
      copying src/tikzplotlib/_files.py -> build/lib/tikzplotlib
      copying src/tikzplotlib/_quadmesh.py -> build/lib/tikzplotlib
      copying src/tikzplotlib/_legend.py -> build/lib/tikzplotlib
      copying src/tikzplotlib/_axes.py -> build/lib/tikzplotlib
      copying src/tikzplotlib/_util.py -> build/lib/tikzplotlib
      copying src/tikzplotlib/__about__.py -> build/lib/tikzplotlib
      copying src/tikzplotlib/__init__.py -> build/lib/tikzplotlib
      running install
      running install_lib
      Traceback (most recent call last):
        File "/home/nschloe/.local/lib/python3.10/site-packages/pip/_vendor/pep517/in_process/_in_process.py", line 363, in <module>
          main()
        File "/home/nschloe/.local/lib/python3.10/site-packages/pip/_vendor/pep517/in_process/_in_process.py", line 345, in main
          json_out['return_val'] = hook(**hook_input['kwargs'])
        File "/home/nschloe/.local/lib/python3.10/site-packages/pip/_vendor/pep517/in_process/_in_process.py", line 261, in build_wheel
          return _build_backend().build_wheel(wheel_directory, config_settings,
        File "/usr/lib/python3/dist-packages/setuptools/build_meta.py", line 230, in build_wheel
          return self._build_with_temp_dir(['bdist_wheel'], '.whl',
        File "/usr/lib/python3/dist-packages/setuptools/build_meta.py", line 215, in _build_with_temp_dir
          self.run_setup()
        File "/usr/lib/python3/dist-packages/setuptools/build_meta.py", line 158, in run_setup
          exec(compile(code, __file__, 'exec'), locals())
        File "setup.py", line 1, in <module>
        File "/usr/lib/python3/dist-packages/setuptools/__init__.py", line 153, in setup
          return distutils.core.setup(**attrs)
        File "/usr/lib/python3/dist-packages/setuptools/_distutils/core.py", line 148, in setup
          return run_commands(dist)
        File "/usr/lib/python3/dist-packages/setuptools/_distutils/core.py", line 163, in run_commands
          dist.run_commands()
        File "/usr/lib/python3/dist-packages/setuptools/_distutils/dist.py", line 967, in run_commands
          self.run_command(cmd)
        File "/usr/lib/python3/dist-packages/setuptools/_distutils/dist.py", line 986, in run_command
          cmd_obj.run()
        File "/usr/lib/python3/dist-packages/wheel/bdist_wheel.py", line 335, in run
          self.run_command('install')
        File "/usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py", line 313, in run_command
          self.distribution.run_command(command)
        File "/usr/lib/python3/dist-packages/setuptools/_distutils/dist.py", line 986, in run_command
          cmd_obj.run()
        File "/usr/lib/python3/dist-packages/setuptools/command/install.py", line 68, in run
          return orig.install.run(self)
        File "/usr/lib/python3/dist-packages/setuptools/_distutils/command/install.py", line 622, in run
          self.run_command(cmd_name)
        File "/usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py", line 313, in run_command
          self.distribution.run_command(command)
        File "/usr/lib/python3/dist-packages/setuptools/_distutils/dist.py", line 985, in run_command
          cmd_obj.ensure_finalized()
        File "/usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py", line 107, in ensure_finalized
          self.finalize_options()
        File "/usr/lib/python3/dist-packages/setuptools/command/install_lib.py", line 17, in finalize_options
          self.set_undefined_options('install',('install_layout','install_layout'))
        File "/usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py", line 290, in set_undefined_options
          setattr(self, dst_option, getattr(src_cmd_obj, src_option))
        File "/usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py", line 103, in __getattr__
          raise AttributeError(attr)
      AttributeError: install_layout. Did you mean: 'install_platlib'?
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed building wheel for tikzplotlib
Failed to build tikzplotlib
ERROR: Could not build wheels for tikzplotlib, which is required to install pyproject.toml-based projects

Expected behavior

No response

pip version

22.0.2

Python version

3.9.10

OS

Ubuntu Linux

How to Reproduce

Clone tikzplotlib

pip install .

Output

No response

Code of Conduct

uranusjr commented 2 years ago

Wrong repo, this should be reported to Ubuntu.

pradyunsg commented 2 years ago

This issue looks like it's caused by changes that Debian/Ubuntu made in their pip packaging. Please file a bug with Debian, with reportbug python3-pip (their reporting documentation). You can link to this issue in your bug report.