hdbscan
hdbscan copied to clipboard
Missing binary wheels
The readme claims that the project has binary wheels available, however looking at PyPi non-source wheels haven't been built since 0.8.15 for any platform, and 0.8.13 for Linux wheels. Is this an intentional omission? If it's in error, I'd be happy to fix it.
Wheel building got broken at some point; I would appreciate it if you wanted to update the readme.
On Tue, Feb 8, 2022 at 2:54 PM Tyler Kennedy @.***> wrote:
The readme claims that the project has binary wheels available, however looking at PyPi https://pypi.org/simple/hdbscan/ non-source wheels haven't been built since 0.8.15 for any platform, and 0.8.13 for Linux wheels. Is this an intentional omission? If it's in error, I'd be happy to fix it.
— Reply to this email directly, view it on GitHub https://github.com/scikit-learn-contrib/hdbscan/issues/525, or unsubscribe https://github.com/notifications/unsubscribe-auth/AC3IUBO2XRO2GCZ2YEVOTX3U2FYGRANCNFSM5N3ORUSQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you are subscribed to this thread.Message ID: @.***>
Any idea what broke? Having wheels for amd64 and arm64 would reduce our build / deploy times by 20-30 minutes. I'd love to help with this.
I built some wheels here: https://github.com/rxfork/hdbscan/releases/tag/0.8.28
If you use poetry you can use them like this
[[tool.poetry.dependencies.hdbscan]]
python = "^3.9"
markers = "platform_python_implementation == 'CPython' and sys_platform == 'linux' and platform_machine == 'x86_64'"
url = "https://github.com/rxfork/hdbscan/releases/download/0.8.28/hdbscan-0.8.28-cp39-cp39-linux_x86_64.whl"
[[tool.poetry.dependencies.hdbscan]]
python = "^3.9"
markers = "platform_python_implementation == 'CPython' and sys_platform == 'linux' and platform_machine == 'aarch64'"
url = "https://github.com/rxfork/hdbscan/releases/download/0.8.28/hdbscan-0.8.28-cp39-cp39-linux_aarch64.whl"
[[tool.poetry.dependencies.hdbscan]]
python = "^3.9"
markers = "platform_python_implementation == 'CPython' and sys_platform == 'Windows' and platform_machine == 'amd64'"
url = "https://github.com/rxfork/hdbscan/releases/download/0.8.28/hdbscan-0.8.28-cp39-cp39-win_amd64.whl"
[[tool.poetry.dependencies.hdbscan]]
python = "^3.10"
markers = "platform_python_implementation == 'CPython' and sys_platform == 'linux' and platform_machine == 'x86_64'"
url = "https://github.com/rxfork/hdbscan/releases/download/0.8.28/hdbscan-0.8.28-cp310-cp310-linux_x86_64.whl"
[[tool.poetry.dependencies.hdbscan]]
python = "^3.10"
markers = "platform_python_implementation == 'CPython' and sys_platform == 'linux' and platform_machine == 'aarch64'"
url = "https://github.com/rxfork/hdbscan/releases/download/0.8.28/hdbscan-0.8.28-cp310-cp310-win_amd64.whl"
[[tool.poetry.dependencies.hdbscan]]
python = "^3.10"
markers = "platform_python_implementation == 'CPython' and sys_platform == 'Windows' and platform_machine == 'amd64'"
url = "https://github.com/rxfork/hdbscan/releases/download/0.8.28/hdbscan-0.8.28-cp310-cp310-win_amd64.whl"
[[tool.poetry.dependencies.hdbscan]]
version = "0.8.28"
and add to poetry.lock under [metadata.files]
hdbscan = [
{file = "hdbscan-0.8.28-cp39-cp39-linux_x86_64.whl", hash = "sha256:a0ba50b476ff7b4b6ea0817ba7f57825aad3fefee88392f502556a0c90780665"},
{file = "hdbscan-0.8.28-cp39-cp39-linux_aarch64.whl", hash = "sha256:047caf1b1b44593e4f0cc0f4559322ae2f8a01855849db9ce6db6fd301e0cea4"},
{file = "hdbscan-0.8.28-cp39-cp39-win_amd64.whl", hash = "sha256:49e660acac2990e09ad9d90a32752f582feb607557d428eadb8a1f61cabe5b69"},
{file = "hdbscan-0.8.28-cp310-cp310-linux_x86_64.whl", hash = "sha256:dae680bda710387930b98cde76cb347560c9ded57306187d8f34813c5520587b"},
{file = "hdbscan-0.8.28-cp310-cp310-linux_aarch64.whl", hash = "sha256:826fdf10af2f87bbdca7a9b77e8a3f04f94fb0e412e2adedd04eadb6080770bd"},
{file = "hdbscan-0.8.28-cp310-cp310-win_amd64.whl", hash = "sha256:8e58387ae81b612b3b203b798cb8fe38aed4f272bf7fec6393f46627f8dc5580"},
{file = "hdbscan-0.8.28.tar.gz", hash = "sha256:eedaf71f2f3bbedfc4c38da1ad4897454ce5ebd4792e1a689c979c2853edc05a"},
]
Note that there is a bug in Poetry that will only pick one of the URLs to put in the lockfile, so if you depend on the lockfile in your build (it's failing on different environments) then you will need to do something like this (modify as needed to "fix" the url for the one you are building for)
sed -r 's/(url = ".*)(x86_64)(\.whl.*)/\1aarch64\3/g' poetry.lock > poetry.lock.tmp \
&& mv poetry.lock.tmp poetry.lock
Update: Instead of find and replace, you can use poetry lock --no-update.
Perhaps this is a related issue?
Hello,
First of all, thanks for all the work ! I would like to know if there is any update on providing wheels on pypi for hdbscan version 0.8.29 for python 3.8+ ? That would be greatly appreciated as we're unable to build from sources since compilers are not available easily in our corporate environment.
Regards,
Would maintainer support a PR that introduced https://github.com/pypa/cibuildwheel ?