brainflow icon indicating copy to clipboard operation
brainflow copied to clipboard

Upload brainflow rust bindings to crates.io

Open Pandapip1 opened this issue 1 year ago • 5 comments

Use case:

I'd like to use brainflow in a rust project, and https://crates.io/ is the standard way of distributing Rust packages.

Describe the solution you'd like:

Brainflow should be uploaded to https://crates.io/

Describe alternatives you've considered:

N.A.

Pandapip1 avatar May 09 '24 16:05 Pandapip1

hi, there is one problem I cannot solve with crates. BrainFlow uses C\C++ dyn libs in all bindings and crates does not allow to package binary files properly, there is a strict limitation for max size of the package. idk how other projects bypass it

Andrey1994 avatar May 09 '24 18:05 Andrey1994

hi, there is one problem I cannot solve with crates. BrainFlow uses C\C++ dyn libs in all bindings and crates does not allow to package binary files properly, there is a strict limitation for max size of the package.

My understanding is that crates just assume that the user has the libraries installed somewhere in their LD_LIBRARY_PATH.

Pandapip1 avatar May 09 '24 21:05 Pandapip1

but in that case users still need to download libraries from somewhere and set LD_LIBRARY_PATH or PATH manually. Then advantage of using crates only for Rust code is debatable

Andrey1994 avatar May 09 '24 21:05 Andrey1994

but in that case users still need to download libraries from somewhere and set LD_LIBRARY_PATH or PATH manually. Then advantage of using crates only for Rust code is debatable

Not really. When you use your distro's package manager, they set LD_LIBRARY_PATH for you. So all you need to do is install the brainflow C library, then the crate. And even if you do all of the C library stuff manually, uploading it to crates.io makes depending on specific versions of the bindings that much easier.

Pandapip1 avatar May 09 '24 22:05 Pandapip1

It does seem to be the official package distribution for Rust https://github.com/rust-lang/crates.io.

retiutut avatar Aug 30 '24 02:08 retiutut