curiosity-ai / rocksdb-sharp

.net bindings for the rocksdb by facebook
BSD 2-Clause "Simplified" License
155 stars 38 forks source link

Use official builds for all platforms #49

Open rubo opened 7 months ago

rubo commented 7 months ago

Could we please have the official binaries by Facebook for all platforms? The linkage to snappy and bz2 causes many problems on Linux, sometimes on macOS. Replacing those with ones from Facebook works as expected without having to install third-party packages and configure symlinks for some Linux distros. Furthermore, it will be more consistent to have all the binaries in the package from Facebook built the same way with no surprises on different platforms.

This is a major headache for us and I raised this a few times here and here but no action so far. Please reconsider this; otherwise, we will have to fork and maintain a separate package and that's just another burden for us.

Also, we can't use chiseled Docker images from Microsoft straight away without ugly workarounds because of those dependencies. Again, with Facebook builds, there's no problem.

theolivenbaum commented 6 months ago

@rubo Just published a new version built with the official package libraries (except for windows, because for some reason the function names are exported weirdly in the java package).

image

I'll do a round of testing on our end to make sure these builds won't break anything, if that's the case we can switch to this permanently.

rubo commented 6 months ago

Thank you. Yeah, for Windows, they use this. Luckily, there's no need to install any dependency on Windows.

Please let us know when the package is available; we will also test it.

chenjing1294 commented 5 months ago

I encounter a lot of errors when compiling and I don't know how to handle them. Can anyone provide a compiled Windows 64 dll?

rubo commented 5 months ago

@chenjing1294 Doesn't the DLL bundled in the NuGet package work for you?

chenjing1294 commented 5 months ago

@rubo I forgot to introduce this, now it's back to normal

<PackageReference Include="RocksDbNative" Version="6.2.2" />