[package]
name = "jlrs"
version = "0.18.0-beta.2"
authors = ["Thomas van Doornmalen <thomas.vandoornmalen@gmail.com>"]
description = """
jlrs provides bindings to the Julia C API that enables Julia code to be called from Rust and more.
"""
documentation = "https://docs.rs/jlrs"
homepage = "https://github.com/Taaitaaiger/jlrs"
repository = "https://github.com/Taaitaaiger/jlrs"
readme = "../README.md"
keywords = ["Julia", "math", "mathematics", "bindings", "ffi"]
categories = ["api-bindings", "mathematics"]
license = "MIT"
edition = "2018"
rust-version = "1.65"
[features]
default = ["prelude"]
full = ["prelude", "sync-rt", "tokio-rt", "async-std-rt", "jlrs-ndarray", "f16", "pyplot", "internal-types", "uv", "jlrs-derive"]
sync-rt = []
async-rt = ["async", "deadqueue", "futures-concurrency"]
async-std-rt = ["async-rt", "async-std"]
tokio-rt = ["async-rt", "tokio"]
async = ["futures", "crossbeam-channel", "async-trait"]
ccall = ["jlrs-macros/ccall", "threadpool"]
f16 = ["half"]
internal-types = []
jlrs-ndarray = ["ndarray"]
extra-fields = []
jlrs-derive = ["jlrs-macros/derive"]
prelude = []
pyplot = []
uv = ["jl-sys/uv", "ccall"]
julia-1-6 = ["jl-sys/julia-1-6", "jlrs-macros/julia-1-6"]
julia-1-7 = ["jl-sys/julia-1-7", "jlrs-macros/julia-1-7"]
julia-1-8 = ["jl-sys/julia-1-8", "jlrs-macros/julia-1-8"]
julia-1-9 = ["jl-sys/julia-1-9", "jlrs-macros/julia-1-9"]
julia-1-10 = ["jl-sys/julia-1-10", "jlrs-macros/julia-1-10"]
debug = ["jl-sys/debug"]
i686 = ["jl-sys/i686"]
no-link = ["jl-sys/no-link"]
yggdrasil = ["jl-sys/yggdrasil"]
windows = ["jl-sys/windows", "jlrs-macros/windows"]
macos = ["jl-sys/macos"]
docs = ["jl-sys/docs", "full", "julia-1-10"]
[dependencies]
cfg-if = "1"
jl-sys = { version = "0.20", path = "../jl_sys" }
jlrs-macros = { version = "0.1", path = "../jlrs_macros" }
smallvec = "1"
thiserror = "1"
atomic = "0.5"
hashers = "1"
once_cell = "1"
threadpool = { version = "1", optional = true }
async-std = { version = "1.12", features = ["unstable"], optional = true }
async-trait = { version = "0.1", optional = true }
crossbeam-channel = { version = "0.5", optional = true }
futures = { version = "0.3", optional = true }
half = { version = "2", optional = true }
ndarray = { version = "0.15", optional = true }
tokio = { version = "1", optional = true, features = ["rt", "time", "sync"]}
deadqueue = { version = "0.2", optional = true, features = ["resizable"]}
futures-concurrency = { version = "7.0", optional = true }
[dev-dependencies]
tokio = { version = "1", features = ["macros", "rt-multi-thread", "rt", "time", "sync"]}
once_cell = "1"
[package.metadata.docs.rs]
features = ["docs"]