# REDOX START # cargo-features = ["edition2021"] # REDOX END [package] name = "rustpython" version = "0.2.0" authors = ["RustPython Team"] edition = "2021" description = "A python interpreter written in rust." repository = "https://github.com/RustPython/RustPython" license = "MIT" include = ["LICENSE", "Cargo.toml", "src/**/*.rs"] [workspace] resolver = "2" members = [ "compiler", "compiler/ast", "compiler/core", "compiler/codegen", "compiler/parser", "compiler/cli", ".", "common", "derive", "jit", "vm", "pylib", "stdlib", "wasm/lib", "derive-impl", ] [workspace.dependencies] ahash = "0.7.6" anyhow = "1.0.45" ascii = "1.0" atty = "0.2.14" bincode = "1.3.3" bitflags = "1.3.2" bstr = "0.2.17" cfg-if = "1.0" chrono = "0.4.19" crossbeam-utils = "0.8.9" flame = "0.2.2" glob = "0.3" hex = "0.4.3" indexmap = "1.8.1" insta = "1.14.0" itertools = "0.10.3" libc = "0.2.133" log = "0.4.16" nix = "0.24" num-complex = "0.4.0" num-bigint = "0.4.3" num-integer = "0.1.44" num-rational = "0.4.0" num-traits = "0.2" num_enum = "0.5.7" once_cell = "1.13" parking_lot = "0.12" paste = "1.0.7" rand = "0.8.5" rustyline = "10.0.0" serde = "1.0" schannel = "0.1.19" static_assertions = "1.1" syn = "1.0.91" thiserror = "1.0" thread_local = "1.1.4" widestring = "0.5.1" [features] default = ["threading", "stdlib", "zlib", "importlib", "encodings", "rustpython-parser/lalrpop"] importlib = ["rustpython-vm/importlib"] encodings = ["rustpython-vm/encodings"] stdlib = ["rustpython-stdlib", "rustpython-pylib"] flame-it = ["rustpython-vm/flame-it", "flame", "flamescope"] freeze-stdlib = ["rustpython-vm/freeze-stdlib", "rustpython-pylib?/freeze-stdlib"] jit = ["rustpython-vm/jit"] threading = ["rustpython-vm/threading", "rustpython-stdlib/threading"] zlib = ["stdlib", "rustpython-stdlib/zlib"] bz2 = ["stdlib", "rustpython-stdlib/bz2"] ssl = ["rustpython-stdlib/ssl"] ssl-vendor = ["rustpython-stdlib/ssl-vendor"] [dependencies] rustpython-compiler = { path = "compiler", version = "0.2.0" } rustpython-parser = { path = "compiler/parser", version = "0.2.0" } rustpython-pylib = { path = "pylib", optional = true, default-features = false } rustpython-stdlib = { path = "stdlib", optional = true, default-features = false } rustpython-vm = { path = "vm", version = "0.2.0", default-features = false, features = ["compiler"] } atty = { workspace = true } cfg-if = { workspace = true } log = { workspace = true } flame = { workspace = true, optional = true } clap = "2.34" dirs = { package = "dirs-next", version = "2.0.0" } env_logger = { version = "0.9.0", default-features = false, features = ["atty", "termcolor"] } flamescope = { version = "0.1.2", optional = true } [target.'cfg(windows)'.dependencies] libc = { workspace = true } [target.'cfg(not(target_arch = "wasm32"))'.dependencies] rustyline = { workspace = true } [dev-dependencies] cpython = "0.7.0" criterion = "0.3.5" python3-sys = "0.7.0" [[bench]] name = "execution" harness = false [[bench]] name = "microbenchmarks" harness = false [[bin]] name = "rustpython" path = "src/main.rs" [profile.dev.package."*"] opt-level = 3 [profile.test] opt-level = 3 # https://github.com/rust-lang/rust/issues/92869 # lto = "thin" [profile.bench] lto = "thin" codegen-units = 1 opt-level = 3 [profile.release] lto = "thin" [profile.small] inherits = "release" opt-level = "s" lto = "thin" [patch.crates-io] # REDOX START, Uncomment when you want to compile/check with redoxer # REDOX END