cvm-rs: version 0.2.0

- switch to napi-rs. this mostly affects only the backend side of things, but IMO napi-rs is better (also, way less boilerplate is needed compared to neon).

- jpeg encoding no longer clones the input buffer internally (or wraps it in a Mutex as well), thanks to napi-rs not sucking in this regard. this is *probably* a micro-optimization, but will make it easier to later on do parallel encoding of all rectangles

- guac encoding is weird. This is kind of a painpoint of napi-rs but it's bearable
This commit is contained in:
modeco80
2024-08-20 06:14:08 -04:00
parent 55566fbd3a
commit 17191b0917
6 changed files with 257 additions and 158 deletions

View File

@@ -1,7 +1,7 @@
[package]
name = "cvm-rs"
description = "Rust utility library for cvmts. Runs all the high performance code"
version = "0.1.1"
version = "0.2.0"
edition = "2021"
exclude = ["index.node"]
@@ -9,10 +9,17 @@ exclude = ["index.node"]
crate-type = ["cdylib"]
[dependencies]
neon = "1"
libc = "0.2.155"
# Required for JPEG
once_cell = "1.19.0"
turbojpeg-sys = "1.0.0"
rayon = "1.10.0"
# node sex
napi = { version = "2.16.9", features = [ "async", "napi8", "error_anyhow" ] }
napi-derive = "2.16.11"
anyhow = "1.0.86"
[build-dependencies]
napi-build = "2.1.3"