[workspace] members = ["packages/cli", "packages/lib", "packages/lib-roblox"] default-members = ["packages/cli"] # Package config values shared across all packages, # such as version, license, and other metadata [workspace.package] version = "0.6.2" edition = "2021" license = "MPL-2.0" repository = "https://github.com/filiptibell/lune" description = "A Luau script runner" readme = "README.md" keywords = ["cli", "lua", "luau", "scripts"] categories = ["command-line-interface"] # Shared dependencies that are used across 2 or more packages # These are declared here to ensure consistent versioning [workspace.dependencies] console = "0.15" futures-util = "0.3" lazy_static = "1.4" mlua = { version = "0.8", features = ["luau", "serialize"] } # Serde dependencies, supporting user-facing formats: json, yaml, toml 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"] } # Tokio runtime & async clients tokio = { version = "1.24", features = ["full"] } reqwest = { version = "0.11", default-features = false, features = [ "rustls-tls", ] } # Profile for building the release binary, with the following options set: # # 1. Optimize for size # 2. Automatically strip symbols from the binary # 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 # [profile.release] opt-level = "z" strip = true lto = true