-
Notifications
You must be signed in to change notification settings - Fork 93
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
PYTHON-3356 Build pymongocrypt wheels in CI #418
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It looks like the macos framework pythons are broken:
[2022/07/28 21:39:09.138] running build_ext
[2022/07/28 21:39:09.138] Running test with python: /Library/Frameworks/Python.framework/Versions/3.8/bin/python3
[2022/07/28 21:39:09.138] + rm -rf .venv
[2022/07/28 21:39:09.138] + for PYTHON_BINARY in '"${PYTHONS[@]}"'
[2022/07/28 21:39:09.138] + echo 'Running test with python: /Library/Frameworks/Python.framework/Versions/3.8/bin/python3'
[2022/07/28 21:39:09.138] + /Library/Frameworks/Python.framework/Versions/3.8/bin/python3 -c 'import sys; print(sys.version)'
[2022/07/28 21:39:09.289] 3.8.10 (v3.8.10:3d8993a744, May 3 2021, 09:09:08)
[2022/07/28 21:39:09.289] [Clang 12.0.5 (clang-1205.0.22.9)]
[2022/07/28 21:39:09.290] + createvirtualenv /Library/Frameworks/Python.framework/Versions/3.8/bin/python3 .venv
[2022/07/28 21:39:09.290] + PYTHON=/Library/Frameworks/Python.framework/Versions/3.8/bin/python3
[2022/07/28 21:39:09.290] + VENVPATH=.venv
[2022/07/28 21:39:09.290] + /Library/Frameworks/Python.framework/Versions/3.8/bin/python3 -m virtualenv --version
[2022/07/28 21:39:09.340] /Library/Frameworks/Python.framework/Versions/3.8/bin/python3: No module named virtualenv
[2022/07/28 21:39:09.470] + /Library/Frameworks/Python.framework/Versions/3.8/bin/python3 -m venv -h
[2022/07/28 21:39:09.470] Traceback (most recent call last):
[2022/07/28 21:39:09.470] File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/subprocess.py", line 64, in <module>
[2022/07/28 21:39:09.470] import msvcrt
[2022/07/28 21:39:09.470] ModuleNotFoundError: No module named 'msvcrt'
[2022/07/28 21:39:09.470] During handling of the above exception, another exception occurred:
[2022/07/28 21:39:09.470] Traceback (most recent call last):
[2022/07/28 21:39:09.470] File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/runpy.py", line 185, in _run_module_as_main
[2022/07/28 21:39:09.470] mod_name, mod_spec, code = _get_module_details(mod_name, _Error)
[2022/07/28 21:39:09.470] File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/runpy.py", line 144, in _get_module_details
[2022/07/28 21:39:09.470] return _get_module_details(pkg_main_name, error)
[2022/07/28 21:39:09.470] File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/runpy.py", line 111, in _get_module_details
[2022/07/28 21:39:09.470] __import__(pkg_name)
[2022/07/28 21:39:09.470] File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/venv/__init__.py", line 10, in <module>
[2022/07/28 21:39:09.470] import subprocess
[2022/07/28 21:39:09.470] File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/subprocess.py", line 70, in <module>
[2022/07/28 21:39:09.470] import select
[2022/07/28 21:39:09.470] ImportError: dlopen(/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/lib-dynload/select.cpython-38-darwin.so, 2): Symbol not found: ___darwin_check_fd_set_overflow
[2022/07/28 21:39:09.470] Referenced from: /Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/lib-dynload/select.cpython-38-darwin.so (which was built for Mac OS X 11.0)
[2022/07/28 21:39:09.470] Expected in: /usr/lib/libSystem.B.dylib
[2022/07/28 21:39:09.470] in /Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/lib-dynload/select.cpython-38-darwin.so
[2022/07/28 21:39:09.475] + command -v virtualenv
[2022/07/28 21:39:09.475] ++ command -v virtualenv
[2022/07/28 21:39:09.475] + VIRTUALENV='/usr/local/bin/virtualenv -p /Library/Frameworks/Python.framework/Versions/3.8/bin/python3 --system-site-packages --never-download'
[2022/07/28 21:39:09.475] + /usr/local/bin/virtualenv -p /Library/Frameworks/Python.framework/Versions/3.8/bin/python3 --system-site-packages --never-download .venv
[2022/07/28 21:39:09.966] /usr/local/bin/virtualenv
[2022/07/28 21:39:09.966] created virtual environment CPython3.8.10.final.0-64 in 358ms
[2022/07/28 21:39:09.966] creator CPython3Posix(dest=/data/mci/2a6095fdcfc5eb875c7b80b040ad3c72/libmongocrypt/bindings/python/.venv, clear=False, no_vcs_ignore=False, global=True)
[2022/07/28 21:39:09.966] seeder FromAppData(download=False, pip=bundle, wheel=bundle, setuptools=bundle, via=copy, app_data_dir=/Users/mci/Library/Application Support/virtualenv)
[2022/07/28 21:39:09.966] added seed packages: pip==22.1.2, setuptools==62.6.0, wheel==0.37.1
[2022/07/28 21:39:09.966] activators NushellActivator,PythonActivator,FishActivator,CShellActivator,PowerShellActivator,BashActivator
This might explain why the wheels are intel and not x86_64.
What if we just produce 2 macos wheels?
These two should give us the maximum compatibility. |
Sounds good |
.evergreen/config.yml
Outdated
|
||
- name: "release-python-linux" | ||
tags: ["release_python_tag"] | ||
run_on: ubuntu2004-large |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can we use ubuntu2004-small instead?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done
- func: "build python release" | ||
- func: "test python release" | ||
vars: { PYTHON: python } | ||
- func: "upload python release" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can you add the sdist to one of these tasks so that the tar.gz release is included too?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done
|
||
$PYTHON setup.py bdist_wheel | ||
rm -rf build libmongocrypt pymongocrypt/*.so pymongocrypt/*.dll pymongocrypt/*.dylib | ||
sudo rm -rf build libmongocrypt pymongocrypt/*.so pymongocrypt/*.dll pymongocrypt/*.dylib |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is this still a problem now that we're using Evergreen?
No description provided.