unum-cloud / usearch

Fast Open-Source Search & Clustering engine × for Vectors & 🔜 Strings × in C++, C, Python, JavaScript, Rust, Java, Objective-C, Swift, C#, GoLang, and Wolfram 🔍
https://unum-cloud.github.io/usearch/
Apache License 2.0
2.15k stars 130 forks source link

Refactor Csharp tests and small enhacement in public API #263

Closed alexbarev closed 1 year ago

alexbarev commented 1 year ago

In this pull request:

1) I've refactored the tests. I've updated the names, divided some tests into smaller parts, and added new ones. I followed the best practices for unit testing as outlined in the Microsoft Docs.

2) For the client API, I've added the option to initialize the USearchIndex using an IndexOptions structure.

3) I also noticed that it's possible to send custom data to a metric parameter, which is then passed to the underlying USearch library. This could result in unpredictable behavior, so I've disabled this feature by using a placeholder value.

NB: Commits have Improve keyword which could trigger Patch as there is small enhancement in public API. If it is undesirable, I could rename or squash commits.

ashvardanian commented 1 year ago

:tada: This PR is included in version 2.4.1 :tada:

The release is available on GitHub release

Your semantic-release bot :package::rocket: