sonic-rs 0.3.16

Sonic-rs is a fast Rust JSON library based on SIMD
Documentation
[package]
authors       = ["Volo Team <volo@cloudwego.io>"]
categories    = ["encoding", "parser-implementations"]
description   = "Sonic-rs is a fast Rust JSON library based on SIMD"
documentation = "https://docs.rs/sonic-rs"
edition       = "2021"
exclude       = ["benchmarks", "assets"]
keywords      = ["json", "simd", "serde", "serialization"]
license       = "Apache-2.0"
name          = "sonic-rs"
readme        = "README.md"
repository    = "https://github.com/cloudwego/sonic-rs"
version       = "0.3.16"

# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

[dependencies]
bumpalo      = "3.13"
bytes        = "1.8"
cfg-if       = "1.0"
faststr      = { version = "0.2", features = ["serde"] }
itoa         = "1.0"
ryu          = "1.0"
serde        = { version = "1.0", features = ["rc", "derive"] }
simdutf8     = "0.1"
sonic-number = { path = "./sonic-number", version = "0.1" }
sonic-simd   = { path = "./sonic-simd", version = "0.1" }
thiserror    = "2.0"

[dev-dependencies]
bytes        = { version = "1.4", features = ["serde"] }
chrono       = { version = "0.4", features = ["serde"] }
encoding_rs  = "0.8"
paste        = "1.0"
schema       = { path = "./benchmarks/benches/schema" }
serde_bytes  = "0.11"
serde_derive = "1.0"
serde_json   = { version = "1.0", features = ["float_roundtrip", "raw_value"] }

[profile.release]
codegen-units    = 1
debug            = true
debug-assertions = false
incremental      = false
lto              = true
opt-level        = 3
overflow-checks  = false
panic            = 'unwind'
rpath            = false

[features]
default = []

# Use an arbitrary precision number type representation when parsing JSON into `sonic_rs::Value`. 
# This allows the JSON numbers will be serialized without loss of precision.
arbitrary_precision = []

# Sort the keys when serializing `sonic_rs::Value`.
sort_keys = []

# Will record the raw message of number and string when parse JSON into `sonic::Value`, and serialize the value will use the raw message
use_raw = []

# Allow to parse JSON with invalid UTF-8 and UTF-16 characters. Will replace them with `\uFFFD` (displayed as �).
utf8_lossy = []