forked from ijl/orjson
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Cargo.toml
93 lines (82 loc) · 2.85 KB
/
Cargo.toml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
[package]
name = "orjson"
version = "3.10.3"
authors = ["ijl <[email protected]>"]
description = "Fast, correct Python JSON library supporting dataclasses, datetimes, and numpy"
edition = "2021"
resolver = "2"
rust-version = "1.72"
license = "Apache-2.0 OR MIT"
repository = "https://github.com/ijl/orjson"
homepage = "https://github.com/ijl/orjson"
readme = "README.md"
keywords = ["fast", "json", "dataclass", "dataclasses", "datetime", "rfc", "8259", "3339"]
include = [
"Cargo.toml",
"CHANGELOG.md",
"data",
"include",
"LICENSE-APACHE",
"LICENSE-MIT",
"pyproject.toml",
"README.md",
"src",
"test/*.py",
"test/requirements.txt",
]
[lib]
name = "orjson"
crate-type = ["cdylib"]
[features]
default = []
# Use SIMD intrinsics. This requires Rust on the nightly channel.
unstable-simd = []
# Include runtime-detected functions that use AVX512VL. Requires unstable-simd and amd64.
avx512 = []
no-panic = [
"itoa/no-panic",
"ryu/no-panic",
]
# Build yyjson as a backend and panic if it fails. The default is to attempt
# to build and on failure fall back to another backend.
yyjson = []
[dependencies]
ahash = { version = "^0.8.9", default-features = false, features = ["compile-time-rng"] }
arrayvec = { version = "0.7", default-features = false, features = ["std", "serde"] }
associative-cache = { version = "2", default-features = false }
beef = { version = "0.5", default-features = false, features = ["impl_serde"] }
bytecount = { version = "^0.6.7", default-features = false, features = ["runtime-dispatch-simd"] }
chrono = { version = "=0.4.34", default-features = false }
compact_str = { version = "0.7", default-features = false, features = ["serde"] }
encoding_rs = { version = "0.8", default-features = false }
half = { version = "2", default-features = false, features = ["std"] }
itoa = { version = "1", default-features = false }
itoap = { version = "1", features = ["std", "simd"] }
once_cell = { version = "1", default-features = false, features = ["race"] }
pyo3-ffi = { version = "^0.21", default-features = false, features = ["extension-module"]}
ryu = { version = "1", default-features = false }
serde = { version = "1", default-features = false }
serde_json = { version = "1", default-features = false, features = ["std", "float_roundtrip"] }
simdutf8 = { version = "0.1", default-features = false, features = ["std", "aarch64_neon"] }
smallvec = { version = "^1.11", default-features = false, features = ["union", "write"] }
[build-dependencies]
cc = { version = "1" }
pyo3-build-config = { version = "^0.21" }
version_check = { version = "0.9" }
[profile.dev]
codegen-units = 1
debug = 2
debug-assertions = true
incremental = false
lto = "off"
opt-level = 3
overflow-checks = true
[profile.release]
codegen-units = 1
debug = false
incremental = false
lto = "thin"
opt-level = 3
panic = "abort"
[profile.release.build-override]
opt-level = 0