rustpython 0.5.0

A python interpreter written in rust.
Documentation
# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2024"
rust-version = "1.93.0"
name = "rustpython"
version = "0.5.0"
authors = ["RustPython Team"]
build = false
include = [
    "LICENSE",
    "Cargo.toml",
    "src/**/*.rs",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "A python interpreter written in rust."
readme = "README.md"
license = "MIT"
repository = "https://github.com/RustPython/RustPython"
resolver = "2"

[package.metadata.packager]
product-name = "RustPython"
identifier = "com.rustpython.rustpython"
description = "An open source Python 3 interpreter written in Rust"
homepage = "https://rustpython.github.io/"
license_file = "LICENSE"
authors = ["RustPython Team"]
publisher = "RustPython Team"
resources = [
    "LICENSE",
    "README.md",
    "Lib",
]
icons = ["32x32.png"]

[package.metadata.packager.nsis]
installer_mode = "both"
template = "installer-config/installer.nsi"

[package.metadata.packager.wix]
template = "installer-config/installer.wxs"

[features]
default = [
    "threading",
    "stdlib",
    "stdio",
    "importlib",
    "ssl-rustls",
    "host_env",
]
encodings = ["rustpython-vm/encodings"]
flame-it = [
    "rustpython-vm/flame-it",
    "rustpython-stdlib/flame-it",
    "flame",
    "flamescope",
]
freeze-stdlib = [
    "stdlib",
    "rustpython-vm/freeze-stdlib",
    "rustpython-pylib?/freeze-stdlib",
]
host_env = [
    "rustpython-vm/host_env",
    "rustpython-stdlib?/host_env",
]
importlib = ["rustpython-vm/importlib"]
jit = ["rustpython-vm/jit"]
sqlite = ["rustpython-stdlib/sqlite"]
ssl = []
ssl-openssl = [
    "ssl",
    "rustpython-stdlib/ssl-openssl",
]
ssl-rustls = [
    "ssl",
    "rustpython-stdlib/ssl-rustls",
]
ssl-vendor = [
    "ssl-openssl",
    "rustpython-stdlib/ssl-vendor",
]
stdio = ["rustpython-vm/stdio"]
stdlib = [
    "rustpython-stdlib",
    "rustpython-pylib",
    "encodings",
]
threading = [
    "rustpython-vm/threading",
    "rustpython-stdlib/threading",
]
tkinter = ["rustpython-stdlib/tkinter"]

[lib]
name = "rustpython"
path = "src/lib.rs"

[[bin]]
name = "rustpython"
path = "src/main.rs"

[dependencies.cfg-if]
version = "1.0"

[dependencies.dirs]
version = "2.0"
package = "dirs-next"

[dependencies.env_logger]
version = "0.11"

[dependencies.flame]
version = "0.2.2"
optional = true

[dependencies.flamescope]
version = "0.1.2"
optional = true

[dependencies.lexopt]
version = "0.3"

[dependencies.log]
version = "0.4.29"

[dependencies.rustpython-compiler]
version = "0.5.0"

[dependencies.rustpython-pylib]
version = "0.5.0"
optional = true

[dependencies.rustpython-stdlib]
version = "0.5.0"
features = ["compiler"]
optional = true
default-features = false

[dependencies.rustpython-vm]
version = "0.5.0"
features = [
    "compiler",
    "gc",
]
default-features = false

[dev-dependencies.criterion]
version = "0.8"
features = ["html_reports"]

[dev-dependencies.pyo3]
version = "0.28.2"
features = ["auto-initialize"]

[dev-dependencies.ruff_python_parser]
version = "0.15.8"
package = "rustpython-ruff_python_parser"

[dev-dependencies.rustpython-stdlib]
version = "0.5.0"
default-features = false

[build-dependencies.winresource]
version = "0.1"

[target.'cfg(not(target_arch = "wasm32"))'.dependencies.rustyline]
version = "17.0.1"

[target."cfg(windows)".dependencies.libc]
version = "0.2.183"

[profile.bench]
opt-level = 3
lto = "thin"
codegen-units = 1

[profile.dev.package."*"]
opt-level = 3

[profile.release]
lto = "thin"

[profile.release.package.rustpython-common]
codegen-units = 1

[profile.release.package.rustpython-doc]
codegen-units = 1

[profile.release.package.rustpython-literal]
codegen-units = 1

[profile.release.package.rustpython-wtf8]
codegen-units = 1

[profile.test]
opt-level = 3