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

Bug: macos release builds do not contain the library #322

Closed
2 tasks done
comunidadio opened this issue Dec 21, 2023 · 10 comments
Closed
2 tasks done

Bug: macos release builds do not contain the library #322

comunidadio opened this issue Dec 21, 2023 · 10 comments
Assignees
Labels
bug Something isn't working invalid This doesn't seem right released

Comments

@comunidadio
Copy link

Describe the bug

The zip files usearch_macOS_arm64_2.8.14.zip and usearch_macOS_amd64_2.8.14.zip only contain usearch.h but no library (.so or .dyld).

Steps to reproduce

Download usearch_macOS_arm64_2.8.14.zip or usearch_macOS_amd64_2.8.14.zip and unzip.

Expected behavior

The release should contain the library (libusearch_c.so/dyld)

USearch version

v2.8.14

Operating System

macOS 14.2

Hardware architecture

Arm

Which interface are you using?

Other bindings

Contact Details

No response

Is there an existing issue for this?

  • I have searched the existing issues

Code of Conduct

  • I agree to follow this project's Code of Conduct
@comunidadio comunidadio added bug Something isn't working invalid This doesn't seem right labels Dec 21, 2023
@comunidadio comunidadio changed the title Bug: macos release builds have only the usearch.h Bug: macos release builds do not contain the library Dec 21, 2023
@comunidadio
Copy link
Author

comunidadio commented Dec 21, 2023

Checking older releases, it looks like the last release package with libusearch_c.so for mac was 2.7.4

@ehsanul
Copy link

ehsanul commented Dec 29, 2023

Note that this affects usage of the golang bindings with the latest releases. Using 2.7.4 is a fine workaround.

@ashvardanian
Copy link
Contributor

I haven’t had a chance to look into it yet. @comunidadio and @ehsanul can you by any chance help fix this?

@sroussey
Copy link
Contributor

sroussey commented Jan 5, 2024

The library being built is called libusearch_c.dylib but the script is assuming it is called libusearch_c.so so it is not being included in the ZIP file.

@ashvardanian
Copy link
Contributor

Nice catch, @sroussey! Then it would only take a wildcard to fix.

@phronmophobic
Copy link

This also seems to affect the Java bindings for mac osx. Maven only shows 2.8.12, 2.8.6, and 2.8.4 so the workaround of using 2.7.4 doesn't seem to be an option (see https://mvnrepository.com/artifact/cloud.unum/usearch).

Related: the docs for java show 2.8.11 which doesn't seem to be available on maven (https://unum-cloud.github.io/usearch/java/).

USearch version
v2.8.4 and v2.8.12

Operating System
macOS 14.0

Hardware architecture
Arm

Which interface are you using?
Java

@ashvardanian
Copy link
Contributor

@phronmophobic is it possible to mark only the major version for Java dependencies?

@ehsanul and @comunidadio, would you be open to patching the CI to match the right binaries, possibly using a wildcard?

@phronmophobic
Copy link

phronmophobic commented Feb 27, 2024

@ashvardanian
I ended up writing my own clojure wrapper, https://github.com/phronmophobic/usearch.clj

@ashvardanian
Copy link
Contributor

That's very cool, @phronmophobic!

As for the issue, it's solved now, will merge and release soon 🤗

@ashvardanian ashvardanian self-assigned this Mar 15, 2024
ashvardanian pushed a commit that referenced this issue Mar 31, 2024
# [2.10.0](v2.9.2...v2.10.0) (2024-03-31)

### Add

* `Index.__repr_pretty__` ([7087138](7087138))
* Introspect Rust builds ([16fa90f](16fa90f))
* Standalone SQLite binary ([227083b](227083b)), closes [#358](#358)

### Chore

* 120-char lines in Python ([92cf01e](92cf01e))

### Docs

* Cover cross-compilation ([de1a8e9](de1a8e9))
* Typo - "desnse" -> "dense" (#370) ([719cf7a](719cf7a)), closes [#370](#370)

### Fix

* `ascii` name collision in Py ([4ac3509](4ac3509))
* Allow missing metric state ([4b8e1a8](4b8e1a8))
* Avoid dynamic arrays for MSVC ([89d70cd](89d70cd))
* Exceptions for missing distances ([349c02d](349c02d))
* JIT compilation in Python ([a3287f1](a3287f1))
* JS compilation ([cea50ba](cea50ba))
* Missing `download_binary` arg ([64d211a](64d211a))
* Missing include ([6454aae](6454aae))
* mixed-precision tolerance in JS tests ([b72f658](b72f658))
* No `-Wno-vla` MSVC flag ([84e8e1e](84e8e1e))
* No extensions in some SQLite builds ([39264d0](39264d0))
* OpenMP max threads issue ([6fd4a2d](6fd4a2d)), closes [ClickHouse/ClickHouse#61780](ClickHouse/ClickHouse#61780)
* Silence false warnings ([ed3a23b](ed3a23b))

### Improve

* bit-casting for negative flaots ([1d03a9d](1d03a9d))
* Clean Python w. Ruff ([87e200b](87e200b))
* Concrete `scalar_kind_t` values ([27d911a](27d911a))
* Handle failing downloads ([8649815](8649815))
* Normalize Pearson as distance ([8a697f7](8a697f7))
* Pass `vectors` to `self_recall` ([565625e](565625e))
* Python evals for exact search ([36f6c5e](36f6c5e))
* Silence warnings ([3d229e0](3d229e0))

### Make

* `CMP0135` CMake policy ([d335df7](d335df7))
* `pypy` and `musl` wheels ([31665d5](31665d5))
* Add SimSIMD dynamic dispatch ([8b8d2f5](8b8d2f5))
* Avoid SimSIMD inner dispatch ([28b0850](28b0850))
* Build SQLite from source ([0dc59a8](0dc59a8))
* CMake pre 3.22 support ([145a4f4](145a4f4))
* Cross-compilation deps ([1de8d7a](1de8d7a))
* Cross-compile with Clang ([94f97cb](94f97cb)), closes [#322](#322)
* Disable SQLite extension for Windows ([c612cc2](c612cc2))
* Fetch local or remote SQLite builds ([f6b75e0](f6b75e0))
* Format Py lines to 120 columns ([5b5973c](5b5973c))
* Lantern build issues ([a400742](a400742)), closes [/github.com/unum-cloud/usearch/blob/4747ef42f4140a1fde16118f25f079f9af79649e/include/usearch/index_plugins.hpp#L43-L45](https://github.com//github.com/unum-cloud/usearch/blob/4747ef42f4140a1fde16118f25f079f9af79649e/include/usearch/index_plugins.hpp/issues/L43-L45) [/github.com/unum-cloud/usearch/blob/ce54b814a8a10f4c0c32fee7aad9451231b63f75/include/usearch/index_plugins.hpp#L50](https://github.com//github.com/unum-cloud/usearch/blob/ce54b814a8a10f4c0c32fee7aad9451231b63f75/include/usearch/index_plugins.hpp/issues/L50)
* Prebuild JS binaries (#342) ([267fbb5](267fbb5)), closes [#342](#342) [#336](#336)
* Pull submodules before cross-comp ([24b3529](24b3529))
* Read UTF8 README on Windows ([a49d17e](a49d17e))
* shared libs on MacOS are `.dylib` ([fd94aa8](fd94aa8))
* SimSIMD in Windows Python wheels ([ecb4948](ecb4948)), closes [#325](#325)
* SQlite as shared library ([3db3d33](3db3d33))
* Take SQLite source for cross-compilation ([95b260f](95b260f))
* Upgrade SimSIMD ([908df0d](908df0d))
* Upgrade SimSIMD to 4.2.2 ([9f53f15](9f53f15))
* Use AVX in Windows Python images ([c694880](c694880)), closes [#325](#325)
@ashvardanian
Copy link
Contributor

🎉 This issue has been resolved in version 2.10.0 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working invalid This doesn't seem right released
Projects
None yet
Development

No branches or pull requests

5 participants