-
Notifications
You must be signed in to change notification settings - Fork 18
Expand file tree
/
Copy pathCargo.toml
More file actions
70 lines (66 loc) · 2.47 KB
/
Cargo.toml
File metadata and controls
70 lines (66 loc) · 2.47 KB
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
[package]
name = "fastexcel"
version = "0.19.0"
description = "A fast excel reader for Rust and Python"
rust-version = "1.85.0"
edition = "2024"
license = "MIT"
homepage = "https://github.com/ToucanToco/fastexcel"
repository = "https://github.com/ToucanToco/fastexcel.git"
readme = "README.md"
include = [
"/pyproject.toml",
"/README.md",
"/LICENSE",
"/Makefile",
"/src",
"/python/fastexcel",
"!__pycache__",
"!*.pyc",
"!*.so",
]
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[lib]
name = "fastexcel"
crate-type = ["cdylib", "rlib"]
[dependencies]
arrow-array = { version = "^57", features = ["ffi"], optional = true }
arrow-pyarrow = { version = "^57", optional = true }
arrow-schema = { version = "^57", optional = true }
calamine = { version = "^0.33.0", features = ["chrono"] }
chrono = { version = "^0.4.43", default-features = false }
log = "^0.4"
polars-core = { version = ">=0.50", default-features = false, features = [
"dtype-date",
"dtype-datetime",
"dtype-duration",
], optional = true }
pyo3 = { version = "^0.26", features = ["abi3-py310"], optional = true }
pyo3-arrow = { version = "^0.14", default-features = false, optional = true }
pyo3-log = { version = "^0.13.3", optional = true }
[dev-dependencies]
anyhow = "1.0.102"
pretty_assertions = { version = "^1.4.1", features = ["unstable"] }
rstest = { version = "^0.26.1", default-features = false }
# NOTE: This is a hack to bypass pyo3 limitations when testing:
# https://pyo3.rs/v0.22.3/faq.html#i-cant-run-cargo-test-or-i-cant-build-in-a-cargo-workspace-im-having-linker-issues-like-symbol-not-found-or-undefined-reference-to-_pyexc_systemerror
[features]
default = []
__arrow = ["dep:arrow-schema", "dep:arrow-array"]
python = ["__arrow", "dep:pyo3", "dep:pyo3-log", "dep:pyo3-arrow"]
extension-module = ["pyo3/extension-module"]
polars = ["dep:polars-core"]
pyarrow = ["dep:arrow-pyarrow", "python"]
# Private features for internal usage, should not be used directly as they may
# change without notice
__pyo3-tests = [
# feature for tests only. This makes Python::with_gil auto-initialize Python
# interpreters, which allows us to instantiate Python objects in tests
# (see https://pyo3.rs/v0.22.3/features#auto-initialize)
"pyo3/auto-initialize",
"pyarrow",
]
__rust-tests-standalone = []
__rust-tests-polars = ["polars"]
# Private feature for maturin usage, should not be used directly
__maturin = ["extension-module", "pyarrow"]