Skip to content

[Bug] protoc-wheel-0 dev dependency causing issues when building on musl-based distros like Alpine #412

Closed
@bryanlalexander

Description

@bryanlalexander

What are you really trying to do?

I'm attempting to install pip install temporalio in Alpine v3.18 (Python 3.11.6). This doesn't seem to be possible given protoc-wheel-0 does not yet support newer versions (locked at 3.9). However, it does seem a minimal dependency that could be easily be isolated and eliminated.

Is this on the roadmap for removal/deprecation?

Describe the bug

ERROR: Could not find a version that satisfies the requirement protoc-wheel-0 (from versions: none)
ERROR: No matching distribution found for protoc-wheel-0
Collecting temporalio (from -r requirements.txt (line 1))
  Downloading temporalio-1.3.0.tar.gz (944 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 944.6/944.6 kB 19.6 MB/s eta 0:00:00
  Installing build dependencies: started
  Installing build dependencies: finished with status 'error'
  error: subprocess-exited-with-error
  
  × pip subprocess to install build dependencies did not run successfully.
  │ exit code: 1
  ╰─> [17 lines of output]
      Collecting poetry-core>=1.0.0
        Obtaining dependency information for poetry-core>=1.0.0 from https://files.pythonhosted.org/packages/99/bc/058b8ff87871fce6615ad032d62c773272f243266b110f7b86d146cf78d8/poetry_core-1.8.1-py3-none-any.whl.metadata
        Downloading poetry_core-1.8.1-py3-none-any.whl.metadata (3.5 kB)
      Collecting setuptools
        Obtaining dependency information for setuptools from https://files.pythonhosted.org/packages/bb/26/7945080113158354380a12ce26873dd6c1ebd88d47f5bc24e2c5bb38c16a/setuptools-68.2.2-py3-none-any.whl.metadata
        Downloading setuptools-68.2.2-py3-none-any.whl.metadata (6.3 kB)
      Collecting wheel
        Obtaining dependency information for wheel from https://files.pythonhosted.org/packages/fa/7f/4c07234086edbce4a0a446209dc0cb08a19bb206a3ea53b2f56a403f983b/wheel-0.41.3-py3-none-any.whl.metadata
        Downloading wheel-0.41.3-py3-none-any.whl.metadata (2.2 kB)
      Collecting setuptools-rust
        Obtaining dependency information for setuptools-rust from https://files.pythonhosted.org/packages/e0/34/d88a7ceb193fbcee6c8992d1b1e33ed20361027e07fea1676efc45ec7a43/setuptools_rust-1.8.1-py3-none-any.whl.metadata
        Downloading setuptools_rust-1.8.1-py3-none-any.whl.metadata (9.4 kB)
      ERROR: Could not find a version that satisfies the requirement protoc-wheel-0 (from versions: none)
      ERROR: No matching distribution found for protoc-wheel-0
      
Notice:       [notice] A new release of pip is available: 23.2.1 -> 23.3.1
Notice:       [notice] To update, run: pip install --upgrade pip
      [end of output]
  
  note: This error originates from a subprocess, and is likely not a problem with pip.
error: subprocess-exited-with-error

× pip subprocess to install build dependencies 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.

Notice:  A new release of pip is available: 23.2.1 -> 23.3.1
Notice:  To update, run: pip install --upgrade pip

Minimal Reproduction

repro.dockerfile

FROM public.ecr.aws/docker/library/alpine:latest

RUN apk update && apk add --no-cache python3 py3-pip

RUN pip3 install temporalio

docker build -f repro.dockerfile .

Environment/Versions

program version
Alpine 3.18
Python 3.11.6
pip 23.1.2

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions