-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathCargo.toml
91 lines (70 loc) · 2.27 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
[package]
name = "arrow-wasm"
version = "0.1.0"
authors = ["Kyle Barron <kylebarron2@gmail.com>"]
edition = "2021"
description = "Core library for using Apache Arrow in Rust wasm-bindgen modules."
readme = "README.md"
repository = "https://github.com/kylebarron/parquet-wasm"
license = "MIT OR Apache-2.0"
keywords = ["webassembly", "arrow"]
categories = ["wasm"]
rust-version = "1.62"
[lib]
crate-type = ["cdylib", "rlib"]
[features]
default = ["all"]
all = [
"data_type",
"data",
"field",
"read_arrow_js",
"record_batch",
"schema",
"table",
"vector",
]
# Include Data classes for contiguous Arrow memory
data = []
# Include DataType classes for contiguous Arrow memory
data_type = []
field = ["data_type"]
# Include functionality to read Arrow JS objects directly.
read_arrow_js = []
record_batch = ["table"]
schema = []
# Include Table class
table = []
# Include Vector classes for chunked Arrow memory
vector = []
debug = ["dep:console_error_panic_hook"]
[dependencies]
wasm-bindgen = { version = "0.2.100", features = ["serde-serialize"] }
# The `console_error_panic_hook` crate provides better debugging of panics by
# logging them with `console.error`. This is great for development, but requires
# all the `std::fmt` and `std::panicking` infrastructure, so isn't great for
# code size when deploying.
console_error_panic_hook = { version = "0.1.6", optional = true }
# `wee_alloc` is a tiny allocator for wasm that is only ~1K in code size
# compared to the default allocator's ~10K. It is slower than the default
# allocator, however.
# if wee_alloc only saves 10KB, might not be worth the slower allocation speed?
# wee_alloc = "0.4.5"
js-sys = "0.3.72"
getrandom = { version = "0.2.15", features = ["js"] }
thiserror = "1.0"
arrow-schema = "53"
arrow = { version = "53", default-features = false, features = ["ffi", "ipc"] }
serde = { version = "1.0", features = ["derive"] }
serde-wasm-bindgen = "0.6"
[dev-dependencies]
wasm-bindgen-test = "0.3.45"
[package.metadata.cargo-all-features]
# Exclude certain features from the build matrix
denylist = ["read_arrow_js"]
[profile.release]
# Tell `rustc` to optimize for small code size.
# As of 3/15/22, opt-level = s was smallest
# https://github.com/kylebarron/parquet-wasm/pull/48
opt-level = "s"
lto = true