Docker-compose不再构建镜像(AttributeError:cython_sources)

i2byvkas  于 2023-10-16  发布在  Docker
关注(0)|答案(8)|浏览(613)

我正在构建一个django-react站点,突然我的docker-compose不再构建,尽管需求或图像版本发生了任何变化。
我的requirements.txt看起来如下:

Django>=3.2.4,<4.0
djangorestframework>=3.12.4,<3.14.0
djangorestframework-simplejwt>=4.8.0,<5.3.0
psycopg2>=2.8.6,<2.9
drf-spectacular>=0.15.1,<0.30
django-allauth>0.5,<1.0
dj-rest-auth>=3.0,<4.0

错误输出:

=> [backend internal] load .dockerignore                                                                                                                                                                  0.0s 
 => => transferring context: 234B                                                                                                                                                                          0.0s 
 => [backend internal] load build definition from Dockerfile                                                                                                                                               0.0s 
 => => transferring dockerfile: 933B                                                                                                                                                                       0.0s 
 => [backend internal] load metadata for docker.io/library/python:3.9-alpine3.13                                                                                                                           0.5s 
 => [backend 1/6] FROM docker.io/library/python:3.9-alpine3.13@sha256:a7cbd1e7784a35a098cedbc8681b790d35ff6030a5e13f043185e2465003a040                                                                     0.0s 
 => [backend internal] load build context                                                                                                                                                                  0.0s 
 => => transferring context: 2.53kB                                                                                                                                                                        0.0s 
 => CACHED [backend 2/6] WORKDIR /app/backend                                                                                                                                                              0.0s 
 => CACHED [backend 3/6] COPY ./requirements.txt /tmp/requirements.txt                                                                                                                                     0.0s 
 => CACHED [backend 4/6] COPY ./requirements.dev.txt /tmp/requirements.dev.txt                                                                                                                             0.0s 
 => CACHED [backend 5/6] COPY . /app/backend                                                                                                                                                               0.0s 
 => ERROR [backend 6/6] RUN python -m venv /py &&     /py/bin/pip install --upgrade pip &&     apk add --update --no-cache postgresql-client jpeg-dev &&     apk add --update --no-cache --virtual .tmp-  18.9s 
------
 > [backend 6/6] RUN python -m venv /py &&     /py/bin/pip install --upgrade pip &&     apk add --update --no-cache postgresql-client jpeg-dev &&     apk add --update --no-cache --virtual .tmp-build-deps     
    build-base postgresql-dev musl-dev zlib zlib-dev &&     /py/bin/pip install -r /tmp/requirements.txt &&     if [ true = "true" ];         then /py/bin/pip install -r /tmp/requirements.dev.txt ;     fi && 
    rm -rf /tmp &&     apk del .tmp-build-deps &&     adduser         --disabled-password         --no-create-home         django-user:
2.951 Requirement already satisfied: pip in /py/lib/python3.9/site-packages (21.2.4)
3.090 Collecting pip
3.202   Downloading pip-23.2-py3-none-any.whl (2.1 MB)
3.389 Installing collected packages: pip
3.389   Attempting uninstall: pip
3.389     Found existing installation: pip 21.2.4
3.454     Uninstalling pip-21.2.4:
3.458       Successfully uninstalled pip-21.2.4
4.339 Successfully installed pip-23.2
4.506 fetch https://dl-cdn.alpinelinux.org/alpine/v3.13/main/x86_64/APKINDEX.tar.gz
4.832 fetch https://dl-cdn.alpinelinux.org/alpine/v3.13/community/x86_64/APKINDEX.tar.gz
5.062 (1/9) Installing libjpeg-turbo (2.1.0-r0)
5.092 (2/9) Installing pkgconf (1.7.3-r0)
5.116 (3/9) Installing libjpeg-turbo-dev (2.1.0-r0)
5.137 (4/9) Installing jpeg-dev (9d-r1)
5.156 (5/9) Installing libedit (20191231.3.1-r1)
5.179 (6/9) Installing libsasl (2.1.28-r0)
5.204 (7/9) Installing libldap (2.4.57-r1)
5.263 (8/9) Installing libpq (13.11-r0)
5.287 (9/9) Installing postgresql-client (13.11-r0)
5.358 Executing busybox-1.32.1-r7.trigger
5.362 OK: 20 MiB in 45 packages
5.383 fetch https://dl-cdn.alpinelinux.org/alpine/v3.13/main/x86_64/APKINDEX.tar.gz
5.520 fetch https://dl-cdn.alpinelinux.org/alpine/v3.13/community/x86_64/APKINDEX.tar.gz
5.644 (1/37) Upgrading musl (1.2.2-r1 -> 1.2.2-r2)
5.676 (2/37) Upgrading libcrypto1.1 (1.1.1l-r0 -> 1.1.1s-r0)
5.755 (3/37) Upgrading libssl1.1 (1.1.1l-r0 -> 1.1.1s-r0)
5.806 (4/37) Upgrading zlib (1.2.11-r3 -> 1.2.12-r3)
5.830 (5/37) Installing libgcc (10.2.1_pre1-r3)
5.860 (6/37) Installing libstdc++ (10.2.1_pre1-r3)
5.923 (7/37) Installing binutils (2.35.2-r1)
6.069 (8/37) Installing libmagic (5.39-r0)
6.137 (9/37) Installing file (5.39-r0)
6.156 (10/37) Installing libgomp (10.2.1_pre1-r3)
6.191 (11/37) Installing libatomic (10.2.1_pre1-r3)
6.208 (12/37) Installing libgphobos (10.2.1_pre1-r3)
6.307 (13/37) Installing gmp (6.2.1-r1)
6.342 (14/37) Installing isl22 (0.22-r0)
6.403 (15/37) Installing mpfr4 (4.1.0-r0)
6.501 (16/37) Installing mpc1 (1.2.0-r0)
6.528 (17/37) Installing gcc (10.2.1_pre1-r3)
7.430 (18/37) Installing musl-dev (1.2.2-r2)
7.544 (19/37) Installing libc-dev (0.7.2-r3)
7.574 (20/37) Installing g++ (10.2.1_pre1-r3)
8.135 (21/37) Installing make (4.3-r0)
8.157 (22/37) Installing fortify-headers (1.1-r0)
8.177 (23/37) Installing patch (2.7.6-r7)
8.209 (24/37) Installing build-base (0.5-r3)
8.229 (25/37) Installing libxml2 (2.9.14-r2)
8.293 (26/37) Installing llvm10-libs (10.0.1-r1)
8.719 (27/37) Installing clang-libs (10.0.1-r0)
9.345 (28/37) Installing clang (10.0.1-r0)
9.587 (29/37) Installing llvm10 (10.0.1-r1)
9.695 (30/37) Installing openssl-dev (1.1.1s-r0)
9.724 (31/37) Installing icu-libs (67.1-r2)
9.985 (32/37) Installing icu (67.1-r2)
10.01 (33/37) Installing icu-dev (67.1-r2)
10.07 (34/37) Installing postgresql-libs (13.11-r0)
10.10 (35/37) Installing postgresql-dev (13.11-r0)
10.22 (36/37) Installing zlib-dev (1.2.12-r3)
10.25 (37/37) Installing .tmp-build-deps (20230717.214226)
10.25 Executing busybox-1.32.1-r7.trigger
10.25 Executing ca-certificates-20191127-r5.trigger
10.31 OK: 414 MiB in 78 packages
10.78 Collecting Django<4.0,>=3.2.4 (from -r /tmp/requirements.txt (line 1))
10.78   Obtaining dependency information for Django<4.0,>=3.2.4 from https://files.pythonhosted.org/packages/84/eb/5329ae72bf26b91844985d0de74e4edf876e3ca409d085820f230eea2eba/Django-3.2.20-py3-none-any.whl.metadata
10.84   Downloading Django-3.2.20-py3-none-any.whl.metadata (4.1 kB)
10.91 Collecting djangorestframework<3.14.0,>=3.12.4 (from -r /tmp/requirements.txt (line 2))
10.93   Downloading djangorestframework-3.13.1-py3-none-any.whl (958 kB)
11.04      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 958.3/958.3 kB 9.6 MB/s eta 0:00:00
11.07 Collecting djangorestframework-simplejwt<5.3.0,>=4.8.0 (from -r /tmp/requirements.txt (line 3))
11.09   Downloading djangorestframework_simplejwt-5.2.2-py3-none-any.whl (85 kB)
11.11      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 85.4/85.4 kB 7.8 MB/s eta 0:00:00
11.17 Collecting psycopg2<2.9,>=2.8.6 (from -r /tmp/requirements.txt (line 4))
11.19   Downloading psycopg2-2.8.6.tar.gz (383 kB)
11.21      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 383.8/383.8 kB 30.7 MB/s eta 0:00:00
11.24   Installing build dependencies: started
12.43   Installing build dependencies: finished with status 'done'
12.43   Getting requirements to build wheel: started
12.57   Getting requirements to build wheel: finished with status 'done'
12.57   Preparing metadata (pyproject.toml): started
12.69   Preparing metadata (pyproject.toml): finished with status 'done'
12.74 Collecting drf-spectacular<0.30,>=0.15.1 (from -r /tmp/requirements.txt (line 5))
12.74   Obtaining dependency information for drf-spectacular<0.30,>=0.15.1 from https://files.pythonhosted.org/packages/e2/3b/29189bbfb2443335ed1d6f0750d14f7ba5e5b89699a58cc87fa82fdb5f49/drf_spectacular-0.26.3-py3-none-any.whl.metadata
12.76   Downloading drf_spectacular-0.26.3-py3-none-any.whl.metadata (13 kB)
12.79 Collecting django-allauth<1.0,>0.5 (from -r /tmp/requirements.txt (line 6))
12.81   Downloading django-allauth-0.54.0.tar.gz (737 kB)
12.85      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 737.1/737.1 kB 18.6 MB/s eta 0:00:00
13.04   Installing build dependencies: started
14.05   Installing build dependencies: finished with status 'done'
14.05   Getting requirements to build wheel: started
14.24   Getting requirements to build wheel: finished with status 'done'
14.25   Preparing metadata (pyproject.toml): started
14.44   Preparing metadata (pyproject.toml): finished with status 'done'
14.48 Collecting dj-rest-auth<4.0,>=3.0 (from -r /tmp/requirements.txt (line 7))
14.50   Downloading dj-rest-auth-3.0.0.tar.gz (100 kB)
14.51      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100.2/100.2 kB 10.6 MB/s eta 0:00:00
14.54   Installing build dependencies: started
15.52   Installing build dependencies: finished with status 'done'
15.52   Getting requirements to build wheel: started
15.63   Getting requirements to build wheel: finished with status 'done'
15.63   Preparing metadata (pyproject.toml): started
15.75   Preparing metadata (pyproject.toml): finished with status 'done'
15.79 Collecting asgiref<4,>=3.3.2 (from Django<4.0,>=3.2.4->-r /tmp/requirements.txt (line 1))
15.79   Obtaining dependency information for asgiref<4,>=3.3.2 from https://files.pythonhosted.org/packages/9b/80/b9051a4a07ad231558fcd8ffc89232711b4e618c15cb7a392a17384bbeef/asgiref-3.7.2-py3-none-any.whl.metadata
15.80   Downloading asgiref-3.7.2-py3-none-any.whl.metadata (9.2 kB)
15.87 Collecting pytz (from Django<4.0,>=3.2.4->-r /tmp/requirements.txt (line 1))
15.90   Downloading pytz-2023.3-py2.py3-none-any.whl (502 kB)
15.93      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 502.3/502.3 kB 20.1 MB/s eta 0:00:00
15.96 Collecting sqlparse>=0.2.2 (from Django<4.0,>=3.2.4->-r /tmp/requirements.txt (line 1))
15.98   Downloading sqlparse-0.4.4-py3-none-any.whl (41 kB)
15.99      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 41.2/41.2 kB 11.2 MB/s eta 0:00:00
16.05 Collecting pyjwt<3,>=1.7.1 (from djangorestframework-simplejwt<5.3.0,>=4.8.0->-r /tmp/requirements.txt (line 3))
16.07   Downloading PyJWT-2.7.0-py3-none-any.whl (22 kB)
16.11 Collecting uritemplate>=2.0.0 (from drf-spectacular<0.30,>=0.15.1->-r /tmp/requirements.txt (line 5))
16.13   Downloading uritemplate-4.1.1-py2.py3-none-any.whl (10 kB)
16.18 Collecting PyYAML>=5.1 (from drf-spectacular<0.30,>=0.15.1->-r /tmp/requirements.txt (line 5))
16.20   Downloading PyYAML-6.0.tar.gz (124 kB)
16.21      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 125.0/125.0 kB 16.8 MB/s eta 0:00:00
16.31   Installing build dependencies: started
18.33   Installing build dependencies: finished with status 'done'
18.33   Getting requirements to build wheel: started
18.48   Getting requirements to build wheel: finished with status 'error'
18.48   error: subprocess-exited-with-error
18.48
18.48   × Getting requirements to build wheel did not run successfully.
18.48   │ exit code: 1
18.48   ╰─> [48 lines of output]
18.48       running egg_info
18.48       writing lib/PyYAML.egg-info/PKG-INFO
18.48       writing dependency_links to lib/PyYAML.egg-info/dependency_links.txt
18.48       writing top-level names to lib/PyYAML.egg-info/top_level.txt
18.48       Traceback (most recent call last):
18.48         File "/py/lib/python3.9/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 353, in <module>
18.48           main()
18.48         File "/py/lib/python3.9/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 335, in main
18.48           json_out['return_val'] = hook(**hook_input['kwargs'])
18.48         File "/py/lib/python3.9/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 118, in get_requires_for_build_wheel
18.48           return hook(config_settings)
18.48         File "/tmp/pip-build-env-a_iltcrr/overlay/lib/python3.9/site-packages/setuptools/build_meta.py", line 341, in get_requires_for_build_wheel
18.48           return self._get_build_requires(config_settings, requirements=['wheel'])
18.48         File "/tmp/pip-build-env-a_iltcrr/overlay/lib/python3.9/site-packages/setuptools/build_meta.py", line 323, in _get_build_requires
18.48           self.run_setup()
18.48         File "/tmp/pip-build-env-a_iltcrr/overlay/lib/python3.9/site-packages/setuptools/build_meta.py", line 338, in run_setup
18.48           exec(code, locals())
18.48         File "<string>", line 288, in <module>
18.48         File "/tmp/pip-build-env-a_iltcrr/overlay/lib/python3.9/site-packages/setuptools/__init__.py", line 107, in setup
18.48           return distutils.core.setup(**attrs)
18.48         File "/tmp/pip-build-env-a_iltcrr/overlay/lib/python3.9/site-packages/setuptools/_distutils/core.py", line 185, in setup
18.48           return run_commands(dist)
18.48         File "/tmp/pip-build-env-a_iltcrr/overlay/lib/python3.9/site-packages/setuptools/_distutils/core.py", line 201, in run_commands
18.48           dist.run_commands()
18.48         File "/tmp/pip-build-env-a_iltcrr/overlay/lib/python3.9/site-packages/setuptools/_distutils/dist.py", line 969, in run_commands
18.48           self.run_command(cmd)
18.48         File "/tmp/pip-build-env-a_iltcrr/overlay/lib/python3.9/site-packages/setuptools/dist.py", line 1234, in run_command
18.48           super().run_command(command)
18.48         File "/tmp/pip-build-env-a_iltcrr/overlay/lib/python3.9/site-packages/setuptools/_distutils/dist.py", line 988, in run_command
18.48           cmd_obj.run()
18.48         File "/tmp/pip-build-env-a_iltcrr/overlay/lib/python3.9/site-packages/setuptools/command/egg_info.py", line 314, in run
18.48           self.find_sources()
18.48         File "/tmp/pip-build-env-a_iltcrr/overlay/lib/python3.9/site-packages/setuptools/command/egg_info.py", line 322, in find_sources
18.48           mm.run()
18.48         File "/tmp/pip-build-env-a_iltcrr/overlay/lib/python3.9/site-packages/setuptools/command/egg_info.py", line 551, in run
18.48           self.add_defaults()
18.48         File "/tmp/pip-build-env-a_iltcrr/overlay/lib/python3.9/site-packages/setuptools/command/egg_info.py", line 589, in add_defaults
18.48           sdist.add_defaults(self)
18.48         File "/tmp/pip-build-env-a_iltcrr/overlay/lib/python3.9/site-packages/setuptools/command/sdist.py", line 104, in add_defaults
18.48           super().add_defaults()
18.48         File "/tmp/pip-build-env-a_iltcrr/overlay/lib/python3.9/site-packages/setuptools/_distutils/command/sdist.py", line 251, in add_defaults
18.48           self._add_defaults_ext()
18.48         File "/tmp/pip-build-env-a_iltcrr/overlay/lib/python3.9/site-packages/setuptools/_distutils/command/sdist.py", line 336, in _add_defaults_ext
18.48           self.filelist.extend(build_ext.get_source_files())
18.48         File "<string>", line 204, in get_source_files
18.48         File "/tmp/pip-build-env-a_iltcrr/overlay/lib/python3.9/site-packages/setuptools/_distutils/cmd.py", line 107, in __getattr__
18.48           raise AttributeError(attr)
18.48       AttributeError: cython_sources
18.48       [end of output]
18.48
18.48   note: This error originates from a subprocess, and is likely not a problem with pip.
18.49 error: subprocess-exited-with-error
18.49
18.49 × Getting requirements to build wheel did not run successfully.
18.49 │ exit code: 1
18.49 ╰─> See above for output.
18.49
18.49 note: This error originates from a subprocess, and is likely not a problem with pip.

我昨天用这些依赖关系构建了这个确切的映像,所以我知道它是兼容的。然而,试图建立今天,不再工作。
根据Simeon Borisov的回答,在我的requirements文件夹中,这个问题似乎是drf-spectacular,因为删除它修复了构建。
然而,我仍然在挣扎。
1.在上面添加pyyaml==5.4.1并不能解决问题。
1.这是奇怪的,因为之前这些确切的版本一起工作,但现在他们不。此外,我在第一次学习docker的教程中编译的旧版本,我自己也使用过,也不再适合我。到底是什么改变了?
添加pyyaml依赖后,我的错误日志如下:

Collecting Django<4.0,>=3.2.4 (from -r /tmp/requirements.txt (line 1))
23.17   Obtaining dependency information for Django<4.0,>=3.2.4 from https://files.pythonhosted.org/packages/84/eb/5329ae72bf26b91844985d0de74e4edf876e3ca409d085820f230eea2eba/Django-3.2.20-py3-none-any.whl.metadata
23.32   Downloading Django-3.2.20-py3-none-any.whl.metadata (4.1 kB)
23.37 Collecting djangorestframework<3.14.0,>=3.12.4 (from -r /tmp/requirements.txt (line 2))
23.39   Downloading djangorestframework-3.13.1-py3-none-any.whl (958 kB)
23.54      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 958.3/958.3 kB 6.8 MB/s eta 0:00:00
23.57 Collecting djangorestframework-simplejwt<5.3.0,>=4.8.0 (from -r /tmp/requirements.txt (line 3))
23.60   Downloading djangorestframework_simplejwt-5.2.2-py3-none-any.whl (85 kB)
23.61      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 85.4/85.4 kB 9.6 MB/s eta 0:00:00
23.68 Collecting psycopg2<2.9,>=2.8.6 (from -r /tmp/requirements.txt (line 4))
23.71   Downloading psycopg2-2.8.6.tar.gz (383 kB)
23.76      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 383.8/383.8 kB 7.9 MB/s eta 0:00:00
23.80   Installing build dependencies: started
25.10   Installing build dependencies: finished with status 'done'
25.10   Getting requirements to build wheel: started
25.23   Getting requirements to build wheel: finished with status 'done'
25.23   Preparing metadata (pyproject.toml): started
25.36   Preparing metadata (pyproject.toml): finished with status 'done'
25.46 Collecting pyyaml==5.4.1 (from -r /tmp/requirements.txt (line 5))
25.48   Downloading PyYAML-5.4.1.tar.gz (175 kB)
25.50      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 175.1/175.1 kB 7.7 MB/s eta 0:00:00
25.60   Installing build dependencies: started
27.95   Installing build dependencies: finished with status 'done'
27.95   Getting requirements to build wheel: started
28.12   Getting requirements to build wheel: finished with status 'error'
28.12   error: subprocess-exited-with-error
28.12
28.12   × Getting requirements to build wheel did not run successfully.
28.12   │ exit code: 1
28.12   ╰─> [62 lines of output]
28.12       /tmp/pip-build-env-m9dhhrb5/overlay/lib/python3.9/site-packages/setuptools/config/setupcfg.py:293: _DeprecatedConfig: Deprecated config in `setup.cfg`
28.12       !!
28.12
28.12               ********************************************************************************
28.12               The license_file parameter is deprecated, use license_files instead.
28.12
28.12               By 2023-Oct-30, you need to update your project and remove deprecated calls
28.12               or your builds will no longer be supported.
28.12
28.12               See https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for details.
28.12               ********************************************************************************
28.12
28.12       !!
28.12         parsed = self.parsers.get(option_name, lambda x: x)(value)
28.12       running egg_info
28.12       writing lib3/PyYAML.egg-info/PKG-INFO
28.12       writing dependency_links to lib3/PyYAML.egg-info/dependency_links.txt
28.12       writing top-level names to lib3/PyYAML.egg-info/top_level.txt
28.12       Traceback (most recent call last):
28.12         File "/py/lib/python3.9/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 353, in <module>
28.12           main()
28.12         File "/py/lib/python3.9/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 335, in main
28.12           json_out['return_val'] = hook(**hook_input['kwargs'])
28.12         File "/py/lib/python3.9/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 118, in get_requires_for_build_wheel
28.12           return hook(config_settings)
28.12         File "/tmp/pip-build-env-m9dhhrb5/overlay/lib/python3.9/site-packages/setuptools/build_meta.py", line 341, in get_requires_for_build_wheel
28.12           return self._get_build_requires(config_settings, requirements=['wheel'])
28.12         File "/tmp/pip-build-env-m9dhhrb5/overlay/lib/python3.9/site-packages/setuptools/build_meta.py", line 323, in _get_build_requires
28.12           self.run_setup()
28.12         File "/tmp/pip-build-env-m9dhhrb5/overlay/lib/python3.9/site-packages/setuptools/build_meta.py", line 338, in run_setup
28.12           exec(code, locals())
28.12         File "<string>", line 271, in <module>
28.12         File "/tmp/pip-build-env-m9dhhrb5/overlay/lib/python3.9/site-packages/setuptools/__init__.py", line 107, in setup
28.12           return distutils.core.setup(**attrs)
28.12         File "/tmp/pip-build-env-m9dhhrb5/overlay/lib/python3.9/site-packages/setuptools/_distutils/core.py", line 185, in setup
28.12           return run_commands(dist)
28.12         File "/tmp/pip-build-env-m9dhhrb5/overlay/lib/python3.9/site-packages/setuptools/_distutils/core.py", line 201, in run_commands
28.12           dist.run_commands()
28.12         File "/tmp/pip-build-env-m9dhhrb5/overlay/lib/python3.9/site-packages/setuptools/_distutils/dist.py", line 969, in run_commands
28.12           self.run_command(cmd)
28.12         File "/tmp/pip-build-env-m9dhhrb5/overlay/lib/python3.9/site-packages/setuptools/dist.py", line 1234, in run_command
28.12           super().run_command(command)
28.12         File "/tmp/pip-build-env-m9dhhrb5/overlay/lib/python3.9/site-packages/setuptools/_distutils/dist.py", line 988, in run_command
28.12           cmd_obj.run()
28.12         File "/tmp/pip-build-env-m9dhhrb5/overlay/lib/python3.9/site-packages/setuptools/command/egg_info.py", line 314, in run
28.12           self.find_sources()
28.12         File "/tmp/pip-build-env-m9dhhrb5/overlay/lib/python3.9/site-packages/setuptools/command/egg_info.py", line 322, in find_sources
28.12           mm.run()
28.12         File "/tmp/pip-build-env-m9dhhrb5/overlay/lib/python3.9/site-packages/setuptools/command/egg_info.py", line 551, in run
28.12           self.add_defaults()
28.12         File "/tmp/pip-build-env-m9dhhrb5/overlay/lib/python3.9/site-packages/setuptools/command/egg_info.py", line 589, in add_defaults
28.12           sdist.add_defaults(self)
28.12         File "/tmp/pip-build-env-m9dhhrb5/overlay/lib/python3.9/site-packages/setuptools/command/sdist.py", line 104, in add_defaults
28.12           super().add_defaults()
28.12         File "/tmp/pip-build-env-m9dhhrb5/overlay/lib/python3.9/site-packages/setuptools/_distutils/command/sdist.py", line 251, in add_defaults
28.12           self._add_defaults_ext()
28.12         File "/tmp/pip-build-env-m9dhhrb5/overlay/lib/python3.9/site-packages/setuptools/_distutils/command/sdist.py", line 336, in _add_defaults_ext
28.12           self.filelist.extend(build_ext.get_source_files())
28.12         File "<string>", line 201, in get_source_files
28.12         File "/tmp/pip-build-env-m9dhhrb5/overlay/lib/python3.9/site-packages/setuptools/_distutils/cmd.py", line 107, in __getattr__
28.12           raise AttributeError(attr)
28.12       AttributeError: cython_sources
28.12       [end of output]
28.12
28.12   note: This error originates from a subprocess, and is likely not a problem with pip.
28.13 error: subprocess-exited-with-error
28.13
28.13 × Getting requirements to build wheel did not run successfully.
28.13 │ exit code: 1
28.13 ╰─> See above for output.

解决方案

在Simeon的建议下,我找到了确切的问题。这个问题不仅与drf有关,还与pyyaml依赖有关。这是由于更新,所以最近(截至本文发布时)5.4.1本身就被破坏了。我相信是Cython的更新导致了这一点。GitHub的问题可以在here中找到。
解决方案,就像上面贴的那样,是安装pyyaml;暂降为5.3.1。

kmynzznz

kmynzznz1#

此问题是由于在July 17, 2023上发布的Cython>=3.0版本下编译的PyYAML<6.0.1不兼容造成的。
现在这个问题已经被a new release of PyYAML, tagged 6.0.1解决了。
此版本带来
无代码更改;更新PEP 518构建元数据以要求Cython < 3.0,直到重新编写打包代码以实现Cython 3.0兼容性。

  • 正如本项目公告中所述 *

因此,只要您没有将PyYAML严格固定到特定版本,这似乎是您的需求文件中的情况,那么一切都将再次正常工作。
如果您的库被限制为PyYAML<6.0,修复方法可以是安装带有--no-build-isolation标志的库:

python -m pip install --no-build-isolation \
  <problematic-library-depending-on-old-verion-of-PyYAML>
oxcyiej7

oxcyiej72#

更新到pyyaml==6.0.1帮助了我

cwdobuhd

cwdobuhd3#

基本上,是cython 3.0.0的新版本造成了这个问题。
在我的例子中,问题出在awscli上。通过在安装awscli之前添加这行代码,它解决了我的问题。
这种方法的好处还在于,您不会回到易受攻击的pyyaml 5.3.1。

pip install "cython<3.0.0" wheel && pip install pyyaml==5.4.1 --no-build-isolation
pip install awscli

编辑:awscli >= 1.29.4,你现在可以使用pyyaml 6.0.1来修复这个问题。

pip install pyyaml~=6.0
pip install awscli
cbeh67ev

cbeh67ev4#

这似乎是一个回归根据this线程。PyYAML包可能是你的一个依赖的依赖,并且自动更新到一个坏的版本(很可能是因为drf-spectacular)。您应该能够将pyyaml包添加到reuqirements.txt中并指定其版本。也许您还应该更具体地说明drf-spectacular的版本,以防出现依赖兼容性问题。

pyyaml==5.4.1
drf-spectacular=={whatever the version was yesterday}

如果您希望在将来避免这种情况,可以考虑使用pipenv,它是Pipfile和Pipfile.lock版本控制系统,可以让您控制在构建中使用的版本。
编辑:我从其他线程看到这个问题已经解决,更新pyyaml到最新版本可能是个好主意。

tyky79it

tyky79it5#

降级到pyyaml==5.3.1对我来说很有效,因为我在项目中面临依赖关系冲突,所以无法升级到最新版本

nkoocmlb

nkoocmlb6#

我通过以下操作解决了这个问题:

pip install "Cython<3"
pip install pyyaml==5.4.1 --no-cache-dir --no-build-isolation
pip install docker-compose

参考:https://github.com/MahmoudAshraf97/whisper-diarization/issues/73#issue-1838985378

im9ewurl

im9ewurl7#

将版本更改为PyYAML~=6.0,以便获得最新的6.0兼容版本。

u7up0aaq

u7up0aaq8#

正如β.εη ιτ.βε所指出的,这个错误是由于在Cython>=3.0版本下编译的PyYAML<6.0.1的不兼容性,现在已经在以后的PyYAML版本中得到修复。
但是,我没有将PyYAML列为requirements.txt中的依赖项。所以PyYAML显然是我的一个依赖的依赖.但哪一个呢
为了找到答案,我简单地将PyYAML==6.0.1添加到requirements.txt文件中。当我运行pip install -r requirements.txt时,控制台输出了一个有用的错误:

ERROR: Cannot install -r requirements.txt (line 1) and PyYAML==6.0.1 because these package versions have conflicting dependencies.
The conflict is caused by:
    The user requested PyYAML==6.0.1
    example_dependency 31.0.0 depends on PyYAML<6.0 and >=5.1

有了这些信息,我将example_dependency升级到最新版本,解决了这个问题。

相关问题