Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

SNOW-1896186: Building snowpark-python from source fails #2929

Open
padhia opened this issue Jan 24, 2025 · 1 comment
Open

SNOW-1896186: Building snowpark-python from source fails #2929

padhia opened this issue Jan 24, 2025 · 1 comment
Labels
bug Something isn't working needs triage Initial RCA is required

Comments

@padhia
Copy link

padhia commented Jan 24, 2025

Please answer these questions before submitting your issue. Thanks!

  1. What version of Python are you using?
Python 3.11.10 (main, Sep  7 2024, 01:03:31) [GCC 13.3.0]
  1. What operating system and processor architecture are you using?
Linux-6.12.10-x86_64-with-glibc2.40
  1. What are the component versions in the environment (pip freeze)?
asn1crypto==1.5.1
brotlicffi==1.1.0.0
build==1.2.2.post1
certifi==2024.8.30
cffi==1.17.1
charset-normalizer==3.3.2
cloudpickle==3.0.0
cryptography==43.0.1
Deprecated==1.2.14
filelock==3.16.1
googleapis-common-protos==1.65.0
grpcio==1.67.0
idna==3.10
importlib_metadata==8.5.0
iniconfig==2.0.0
opentelemetry-api==1.27.0
opentelemetry-exporter-otlp==1.27.0
opentelemetry-exporter-otlp-proto-common==1.27.0
opentelemetry-exporter-otlp-proto-grpc==1.27.0
opentelemetry-exporter-otlp-proto-http==1.27.0
opentelemetry-instrumentation==0.48b0
opentelemetry-proto==1.27.0
opentelemetry-sdk==1.27.0
opentelemetry-semantic-conventions==0.48b0
packaging==24.1
platformdirs==4.3.6
pluggy==1.5.0
protobuf==5.28.3
pycparser==2.22
PyJWT==2.9.0
pyOpenSSL==24.2.1
pyproject_hooks==1.2.0
pytest==8.3.3
python-dateutil==2.9.0.post0
pytz==2024.2
PyYAML==6.0.2
requests==2.32.3
six==1.16.0
snowflake-connector-python==3.12.4
snowflake-snowpark-python==1.25.0
sortedcontainers==2.4.0
toml==0.10.2
tomlkit==0.13.2
typing_extensions==4.12.2
tzlocal==5.2
urllib3==2.2.3
wrapt==1.16.0
zipp==3.20.2
  1. What did you do?

build snowpark package from sources obtained from PyPI

  1. What did you expect to see?

the package builds correctly

  1. Can you set logging to DEBUG and collect the logs?

Building package on some linux distros (NixOS) fails with the following message:

Executing setuptoolsBuildPhase
protoc-gen-mypy is not installed nor found. Please install the binary package, e.g., `pip install mypy-protobuf`

it appears that the setup.py scripts requires mypy-protobuf Python package to be pre-installed manually prior to building snowpark-python package. Unfortunately, some Linux distros (such as NixOS) build packages from source in an isolated environment that causes the above failure.

Is it possible to either:

  1. Add mypy-protobuf as a dependency (v/s checking for installed binary console_script)
  2. Make mypy-protobuf dependency conditional if it is required only for the development of snowpark package and is not required at runtime by the applications that use snowpark

Thank you

@padhia padhia added bug Something isn't working needs triage Initial RCA is required labels Jan 24, 2025
@github-actions github-actions bot changed the title Building snowpark-python from source fails SNOW-1896186: Building snowpark-python from source fails Jan 24, 2025
@sfc-gh-joshi
Copy link
Contributor

Hi @padhia, can you check if this issue is still present in the latest main branch? We recently added a pyproject.toml file that should take care of mypy-protobuf installation automatically, which is not yet reflected in pypi releases.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working needs triage Initial RCA is required
Projects
None yet
Development

No branches or pull requests

2 participants