erg/Cargo.toml
2024-10-01 12:50:08 +09:00

99 lines
3.4 KiB
TOML

[package]
name = "erg"
description = "The Erg programming language"
documentation = "https://docs.rs/erg"
keywords = ["erg", "programming-language"]
build = "build.rs"
version.workspace = true
authors.workspace = true
license.workspace = true
edition.workspace = true
repository.workspace = true
homepage.workspace = true
[workspace]
members = [
"crates/erg_common",
"crates/erg_compiler",
"crates/erg_linter/",
"crates/erg_parser",
"crates/els",
"crates/erg_proc_macros/",
]
[workspace.package]
version = "0.6.45"
authors = ["erg-lang team <moderation.erglang@gmail.com>"]
license = "MIT OR Apache-2.0"
edition = "2021"
repository = "https://github.com/erg-lang/erg"
homepage = "https://erg-lang.org/"
[features]
# when "debug" feature is turned on, that of the following crates will also be turned on.
debug = ["erg_common/debug", "erg_parser/debug", "erg_compiler/debug", "erg_linter/debug"] # "els/debug"
backtrace = ["erg_common/backtrace", "els/backtrace"]
japanese = [
"erg_common/japanese",
"erg_parser/japanese",
"erg_compiler/japanese",
"els/japanese",
"erg_linter/japanese",
]
simplified_chinese = [
"erg_common/simplified_chinese",
"erg_parser/simplified_chinese",
"erg_compiler/simplified_chinese",
"els/simplified_chinese",
"erg_linter/simplified_chinese",
]
traditional_chinese = [
"erg_common/traditional_chinese",
"erg_parser/traditional_chinese",
"erg_compiler/traditional_chinese",
"els/traditional_chinese",
"erg_linter/traditional_chinese",
]
unicode = ["erg_common/unicode", "erg_parser/unicode", "erg_compiler/unicode", "els/unicode", "erg_linter/unicode"]
pretty = ["erg_common/pretty", "erg_parser/pretty", "erg_compiler/pretty", "els/pretty", "erg_linter/pretty"]
large_thread = [
"erg_common/large_thread",
"erg_parser/large_thread",
"erg_compiler/large_thread",
"els/large_thread",
"erg_linter/large_thread",
]
py_compat = ["erg_compiler/py_compat", "els/py_compat"]
gal = ["erg_common/gal", "erg_compiler/gal"]
els = ["erg_common/els", "erg_compiler/els", "dep:els"]
full-repl = ["erg_common/full-repl"]
full = ["els", "full-repl", "unicode", "pretty"]
experimental = ["erg_common/experimental", "erg_parser/experimental", "erg_compiler/experimental", "erg_linter/experimental", "parallel"]
log-level-error = ["erg_common/log-level-error", "erg_parser/log-level-error", "erg_compiler/log-level-error", "erg_linter/log-level-error"]
# The parallelizing compiler was found to contain a bug that caused it to hang in complex dependencies, so it is disabled by default.
parallel = ["erg_common/parallel", "erg_parser/parallel", "erg_compiler/parallel", "erg_linter/parallel"]
[workspace.dependencies]
erg_common = { version = "0.6.45", path = "./crates/erg_common" }
erg_parser = { version = "0.6.45", path = "./crates/erg_parser" }
erg_compiler = { version = "0.6.45", path = "./crates/erg_compiler" }
erg_linter = { version = "0.6.45", path = "./crates/erg_linter" }
els = { version = "0.1.57", path = "./crates/els" }
erg_proc_macros = { version = "0.6.45", path = "./crates/erg_proc_macros" }
pyo3 = { version = "0.21", features = ["extension-module"] }
[dependencies]
erg_common = { workspace = true }
erg_parser = { workspace = true }
erg_compiler = { workspace = true }
erg_linter = { workspace = true }
els = { workspace = true, optional = true, features = ["lint"] }
[build-dependencies]
erg_common = { workspace = true }
[lib]
path = "src/lib.rs"
# [profile.release]
# panic = 'abort'