spotify / voyager

🛰️ An approximate nearest-neighbor search library for Python and Java with a focus on ease of use, simplicity, and deployability.
https://spotify.github.io/voyager/
Apache License 2.0
1.23k stars 48 forks source link

cpp wrappers are using default namespace #52

Open alexander-riss opened 4 months ago

alexander-riss commented 4 months ago

if one wanted to only use the cpp part of voyager, it would be a problem as some of the header files are not using a voyager specific namespace like e.g. spotify::voyager to avoid name collitions if used in a broader context and are instead in the default namespace.

markkohdev commented 3 months ago

Hey @alexander-riss, thanks for pointing this out! We originally didn't really intend for voyager to be used as a standalone C++ library because we want to ensure that we can change the underlying implementation easily. But there's no reason we shouldn't allow for c++ lib usage if people are willing to build it from source.

We've discussed that we will make this change, but with the caveat that we don't guarantee compatibility of the C++ interface between versions.

alexander-riss commented 3 months ago

That sounds great! this will enable a lot of new on-device workflows!