[package]
name = "underthesea_core"
version = "3.3.1"
homepage = "https://github.com/undertheseanlp/underthesea/tree/main/extensions/underthesea_core"
repository = "https://github.com/undertheseanlp/underthesea/"
authors = ["Vu Anh <anhv.ict91@gmail.com>"]
license = "GPL-3.0"
edition = "2021"
readme = "README.md"
description = "Underthesea Core"

exclude = [
  "rust-toolchain",
  "target/*",
  "Cargo.lock",
  "benches/*.txt"
]

[lib]
name = "underthesea_core"
path = "src/lib.rs"
crate-type = ["cdylib", "rlib"]

#[[bench]]
#name = "lab"
#harness = false

[[bench]]
name = "featurizers"
harness = false

[dependencies]
serde = { version = "1.0", features = [ "derive" ] }
regex = "1"
rayon = "1.5"
crfs = "0.1"

# CRF implementation dependencies
hashbrown = { version = "0.15", features = ["serde"] }  # Fast hash maps with serde support
bincode = "1.3"             # Binary serialization for model files
byteorder = "1.5"           # For reading CRFsuite binary format
liblbfgs = "0.1"            # L-BFGS optimization (port of Naoaki Okazaki's libLBFGS)

# LR implementation dependencies
rand = "0.8"                # Random number generation for SGD shuffling

# Text preprocessing dependencies
unicode-normalization = "0.1"  # Unicode NFC normalization for Vietnamese text

[dependencies.pyo3]
version = "0.25.1"
features = ["extension-module"]

[dev-dependencies]
criterion = "0.3.5"
