lune/Cargo.toml

137 lines
3.3 KiB
TOML
Raw Normal View History

2023-07-20 08:47:00 +01:00
[package]
name = "lune"
2023-08-09 22:33:04 +01:00
version = "0.7.6"
2023-01-19 01:47:14 +00:00
edition = "2021"
2023-01-25 01:36:59 +00:00
license = "MPL-2.0"
2023-01-19 02:19:10 +00:00
repository = "https://github.com/filiptibell/lune"
description = "A Luau script runner"
2023-02-06 00:13:58 +00:00
readme = "README.md"
2023-01-19 02:19:10 +00:00
keywords = ["cli", "lua", "luau", "scripts"]
categories = ["command-line-interface"]
2023-01-19 01:47:14 +00:00
2023-07-20 08:47:00 +01:00
[[bin]]
name = "lune"
path = "src/main.rs"
2023-01-23 02:46:30 +00:00
2023-07-20 08:47:00 +01:00
[lib]
name = "lune"
path = "src/lib.rs"
2023-07-20 08:47:00 +01:00
[features]
default = ["cli", "roblox"]
cli = [
"dep:anyhow",
"dep:env_logger",
"dep:itertools",
"dep:clap",
"dep:include_dir",
"dep:regex",
]
roblox = [
"dep:glam",
"dep:rand",
"dep:rbx_cookie",
"dep:rbx_binary",
"dep:rbx_dom_weak",
"dep:rbx_reflection",
"dep:rbx_reflection_database",
"dep:rbx_xml",
]
2023-02-25 12:41:50 +00:00
# Profile for building the release binary, with the following options set:
#
2023-02-25 12:41:50 +00:00
# 1. Optimize for size
# 2. Automatically strip symbols from the binary
2023-05-06 10:10:59 +01:00
# 3. Enable link-time optimization
#
# Note that we could abort instead of panicking to cut down on size
# even more, but because we use the filesystem & some other APIs we
# need the panic unwinding to properly handle usage of said APIs
#
2023-02-24 16:44:09 +00:00
[profile.release]
2023-02-25 12:41:50 +00:00
opt-level = "z"
strip = true
2023-05-06 10:10:59 +01:00
lto = true
2023-07-20 08:47:00 +01:00
# All of the dependencies for Lune.
#
# Dependencies are categorized as following:
#
# 1. General dependencies with no specific features set
# 2. Large / core dependencies that have many different crates and / or features set
# 3. Dependencies for specific features of Lune, eg. the CLI or massive Roblox builtin library
#
[dependencies]
console = "0.15"
directories = "5.0"
futures-util = "0.3"
once_cell = "1.17"
thiserror = "1.0"
async-trait = "0.1"
dialoguer = "0.10"
dunce = "1.0"
2023-08-04 19:32:07 +01:00
lz4_flex = "0.11"
2023-07-20 08:47:00 +01:00
pin-project = "1.0"
os_str_bytes = "6.4"
2023-08-04 19:32:07 +01:00
urlencoding = "2.1"
2023-07-20 08:47:00 +01:00
### RUNTIME
2023-08-18 00:54:05 +01:00
mlua = { version = "0.9.0", features = [
"macros",
2023-08-05 23:53:32 +01:00
"luau",
"luau-jit",
"serialize",
] }
2023-07-20 08:47:00 +01:00
tokio = { version = "1.24", features = ["full"] }
### SERDE
async-compression = { version = "0.4", features = [
"tokio",
"brotli",
"deflate",
"gzip",
"zlib",
] }
serde = { version = "1.0", features = ["derive"] }
serde_json = { version = "1.0", features = ["preserve_order"] }
serde_yaml = "0.9"
toml = { version = "0.7", features = ["preserve_order"] }
### NET
hyper = { version = "0.14", features = ["full"] }
2023-08-04 19:32:07 +01:00
hyper-tungstenite = { version = "0.11" }
2023-07-20 08:47:00 +01:00
reqwest = { version = "0.11", default-features = false, features = [
"rustls-tls",
] }
2023-08-04 19:32:07 +01:00
tokio-tungstenite = { version = "0.20", features = ["rustls-tls-webpki-roots"] }
2023-07-20 08:47:00 +01:00
### CLI
anyhow = { optional = true, version = "1.0" }
env_logger = { optional = true, version = "0.10" }
2023-08-09 22:29:56 +01:00
itertools = { optional = true, version = "0.11" }
2023-07-20 08:47:00 +01:00
clap = { optional = true, version = "4.1", features = ["derive"] }
include_dir = { optional = true, version = "0.7.3", features = ["glob"] }
regex = { optional = true, version = "1.7", default-features = false, features = [
"std",
"unicode-perl",
] }
2023-08-16 16:05:53 +01:00
rustyline = "12.0.0"
2023-07-20 08:47:00 +01:00
### ROBLOX
glam = { optional = true, version = "0.24" }
rand = { optional = true, version = "0.8" }
2023-08-07 22:18:21 +01:00
rbx_cookie = { optional = true, version = "0.1.3", default-features = false }
2023-07-20 08:47:00 +01:00
rbx_binary = { optional = true, version = "0.7.1" }
rbx_dom_weak = { optional = true, version = "2.5.0" }
rbx_reflection = { optional = true, version = "4.3.0" }
rbx_reflection_database = { optional = true, version = "0.2.7" }
rbx_xml = { optional = true, version = "0.13.1" }