Skip to content

[BUG] KeyError: 'unix_user' with setuptools 63.2.0 #3582

@mxmlnkn

Description

@mxmlnkn

setuptools version

63.2.0

Python version

3.10

OS

Ubuntu 22.04

Additional environment information

No response

Description

I still run into this issue. I'm opening a new issue because I'm not sure whether the closed issue still receives any attention from the maintainers and because I'm not the only one able to still reproduce the problem.

I still have this problem on Ubuntu 22.04 with Python 3.10 and setuptools 63.2.0 installed.

I tried a lot of different versions of setuptools: 59,60,61,63 and none works. It works when using python3 setup.py develop --user instead of python3 -m pip install --user --editable.

Note that I also have to use the site.ENABLE_USER_SITE = "--user" in sys.argv[1:] workaround described in this pip issue. It seems to me like installing a development version becomes increasingly impossible.

Expected behavior

The error should not happen

How to Reproduce

python3 -m pip install --user --editable 'git+https://github.com/mxmlnkn/ratarmount.git@develop#egg=ratarmountcore[full]&egginfo=ratarmountcore&subdirectory=core'

Output

Obtaining ratarmountcore[full] from git+https://github.com/mxmlnkn/ratarmount.git@develop#egg=ratarmountcore[full]&egginfo=ratarmountcore&subdirectory=core
  Cloning https://github.com/mxmlnkn/ratarmount.git (to revision develop) to ./src/ratarmountcore
  Running command git clone --filter=blob:none --quiet https://github.com/mxmlnkn/ratarmount.git /media/d/Myself/projects/ratarmount/worktrees/1/core/src/ratarmountcore
  Running command git checkout -b develop --track origin/develop
  Switched to a new branch 'develop'
  Branch 'develop' set up to track remote branch 'develop' from 'origin' by rebasing.
  Resolved https://github.com/mxmlnkn/ratarmount.git to commit 78cea219605e351d4f286d2a9c4bd9bcdd5acd8d
  Installing build dependencies ... done
  Checking if build backend supports build_editable ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Requirement already satisfied: indexed-bzip2<2.0,>=1.3.1 in /home/user/.local/lib/python3.10/site-packages (from ratarmountcore[full]) (1.3.2)
Requirement already satisfied: python-xz~=0.4.0 in /home/user/.local/lib/python3.10/site-packages (from ratarmountcore[full]) (0.4.0)
Requirement already satisfied: rarfile~=4.0 in /home/user/.local/lib/python3.10/site-packages (from ratarmountcore[full]) (4.0)
Requirement already satisfied: indexed-zstd<2.0,>=1.2.2 in /home/user/.local/lib/python3.10/site-packages (from ratarmountcore[full]) (1.5.0)
Requirement already satisfied: indexed-gzip<2.0,>=1.6.3 in /home/user/.local/lib/python3.10/site-packages (from ratarmountcore[full]) (1.6.13)
Installing collected packages: ratarmountcore
  Running setup.py develop for ratarmountcore
    error: subprocess-exited-with-error
    
    × python setup.py develop did not run successfully.
    │ exit code: 1
    ╰─> [29 lines of output]
        running develop
        /usr/lib/python3/dist-packages/setuptools/command/easy_install.py:158: EasyInstallDeprecationWarning: easy_install command is deprecated. Use build and pip and other standards-based tools.
          warnings.warn(
        Traceback (most recent call last):
          File "<string>", line 2, in <module>
          File "<pip-setuptools-caller>", line 34, in <module>
          File "/media/d/Myself/projects/ratarmount/worktrees/1/core/src/ratarmountcore/core/setup.py", line 14, in <module>
            setup()
          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 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/develop.py", line 52, in finalize_options
            easy_install.finalize_options(self)
          File "/usr/lib/python3/dist-packages/setuptools/command/easy_install.py", line 270, in finalize_options
            self._fix_install_dir_for_user_site()
          File "/usr/lib/python3/dist-packages/setuptools/command/easy_install.py", line 400, in _fix_install_dir_for_user_site
            self.select_scheme(scheme_name)
          File "/usr/lib/python3/dist-packages/setuptools/command/easy_install.py", line 741, in select_scheme
            scheme = INSTALL_SCHEMES[name]
        KeyError: 'unix_user'
        [end of output]
    
    note: This error originates from a subprocess, and is likely not a problem with pip.
error: subprocess-exited-with-error

× python setup.py develop did not run successfully.
│ exit code: 1
╰─> [29 lines of output]
    running develop
    /usr/lib/python3/dist-packages/setuptools/command/easy_install.py:158: EasyInstallDeprecationWarning: easy_install command is deprecated. Use build and pip and other standards-based tools.
      warnings.warn(
    Traceback (most recent call last):
      File "<string>", line 2, in <module>
      File "<pip-setuptools-caller>", line 34, in <module>
      File "/media/d/Myself/projects/ratarmount/worktrees/1/core/src/ratarmountcore/core/setup.py", line 14, in <module>
        setup()
      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 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/develop.py", line 52, in finalize_options
        easy_install.finalize_options(self)
      File "/usr/lib/python3/dist-packages/setuptools/command/easy_install.py", line 270, in finalize_options
        self._fix_install_dir_for_user_site()
      File "/usr/lib/python3/dist-packages/setuptools/command/easy_install.py", line 400, in _fix_install_dir_for_user_site
        self.select_scheme(scheme_name)
      File "/usr/lib/python3/dist-packages/setuptools/command/easy_install.py", line 741, in select_scheme
        scheme = INSTALL_SCHEMES[name]
    KeyError: 'unix_user'
    [end of output]

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions