mirror of
https://github.com/RustPython/RustPython.git
synced 2026-10-28 18:59:04 +08:00
Add e, Zf and Zd storage, typecode routing, component byteswap and portable pickle decoding, preserving half float32 narrowing and complex sequence comparison semantics. Migrate test_array unchanged from CPython d220409 via update_lib. Replace byte-allocation ownership casts with aligned typed copies and correct signed pickle format selection. Assisted-by: OpenAI Codex: model version unavailable Co-authored-by: Codex <codex@openai.com>
115 lines
4.2 KiB
TOML
115 lines
4.2 KiB
TOML
[package]
|
|
name = "rustpython-stdlib"
|
|
description = "RustPython standard libraries in Rust."
|
|
version.workspace = true
|
|
authors.workspace = true
|
|
edition.workspace = true
|
|
rust-version.workspace = true
|
|
repository.workspace = true
|
|
license.workspace = true
|
|
|
|
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
|
|
|
[features]
|
|
default = ["compiler", "host_env", "doc", "ucd_3_2_0"]
|
|
ucd_3_2_0 = ["rustpython-unicode/ucd_3_2_0"]
|
|
doc = ["rustpython-vm/doc"]
|
|
host_env = ["rustpython-vm/host_env"]
|
|
compiler = ["rustpython-vm/compiler"]
|
|
threading = ["rustpython-common/threading", "rustpython-vm/threading"]
|
|
sqlite = ["dep:libsqlite3-sys"]
|
|
# SSL backends
|
|
ssl = ["rustpython-host_env/ssl"]
|
|
ssl-rustls = ["__ssl-rustls", "host_env", "rustls/custom-provider"]
|
|
ssl-openssl = ["ssl", "host_env", "openssl", "openssl-sys", "foreign-types-shared", "rustpython-host_env/native-certs"]
|
|
ssl-openssl-vendor = ["ssl-openssl", "openssl/vendored"]
|
|
tkinter = ["dep:tk-sys", "dep:tcl-sys", "dep:widestring"]
|
|
flame-it = ["flame"]
|
|
|
|
__ssl-rustls = ["ssl", "rustpython-host_env/ssl", "rustpython-host_env/rustls", "rustpython-host_env/native-certs", "rustls", "rustls-pemfile", "x509-parser", "pem-rfc7468", "webpki-roots"]
|
|
|
|
[dependencies]
|
|
# rustpython crates
|
|
rustpython-derive = { workspace = true }
|
|
rustpython-vm = { workspace = true, default-features = false, features = ["compiler"]}
|
|
rustpython-common = { workspace = true, features = ["binascii", "bz2", "cjk-codecs", "hashlib", "inet", "json", "lzma", "zlib"] }
|
|
rustpython-host_env = { workspace = true }
|
|
rustpython-unicode = { workspace = true }
|
|
|
|
ruff_python_parser = { workspace = true }
|
|
ruff_python_ast = { workspace = true }
|
|
ruff_text_size = { workspace = true }
|
|
ruff_source_file = { workspace = true }
|
|
|
|
ascii = { workspace = true }
|
|
half = { workspace = true }
|
|
crossbeam-utils = { workspace = true }
|
|
flame = { workspace = true, optional = true }
|
|
hex = { workspace = true }
|
|
getrandom = { workspace = true }
|
|
itertools = { workspace = true }
|
|
indexmap = { workspace = true }
|
|
libc = { workspace = true }
|
|
num-complex = { workspace = true }
|
|
malachite-bigint = { workspace = true }
|
|
num-traits = { workspace = true }
|
|
num_enum = { workspace = true }
|
|
parking_lot = { workspace = true }
|
|
phf = { workspace = true, default-features = true, features = ["macros"] }
|
|
rapidhash = { workspace = true }
|
|
scopeguard = { workspace = true }
|
|
|
|
memchr = { workspace = true }
|
|
pymath = { workspace = true }
|
|
xml = { workspace = true }
|
|
|
|
# random
|
|
rand = { workspace = true }
|
|
mt19937 = { workspace = true }
|
|
|
|
# Crypto:
|
|
constant_time_eq = { workspace = true }
|
|
|
|
# compression
|
|
adler32 = { workspace = true }
|
|
|
|
# tkinter
|
|
tk-sys = { workspace = true, optional = true }
|
|
tcl-sys = { workspace = true, optional = true }
|
|
widestring = { workspace = true, optional = true }
|
|
|
|
# uuid
|
|
[target.'cfg(not(any(target_os = "ios", target_os = "android", target_os = "windows", target_arch = "wasm32", target_os = "redox")))'.dependencies]
|
|
uuid = { workspace = true, features = ["v1"] }
|
|
|
|
# mmap + socket + OpenSSL dependencies
|
|
[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
|
|
openssl = { workspace = true, optional = true }
|
|
openssl-sys = { workspace = true, optional = true }
|
|
foreign-types-shared = { workspace = true, optional = true }
|
|
|
|
# Rustls is the WASI TLS engine as well as the native one.
|
|
[target.'cfg(any(not(target_arch = "wasm32"), target_os = "wasi"))'.dependencies]
|
|
rustls = { workspace = true, default-features = false, features = ["std", "tls12"], optional = true }
|
|
rustls-pemfile = { workspace = true, optional = true }
|
|
x509-parser = { workspace = true, optional = true }
|
|
pem-rfc7468 = { workspace = true, features = ["alloc"], optional = true }
|
|
webpki-roots = { workspace = true, optional = true }
|
|
|
|
[target.'cfg(not(any(target_os = "android", target_arch = "wasm32")))'.dependencies]
|
|
libsqlite3-sys = { workspace = true, features = ["bundled"], optional = true }
|
|
|
|
[target.'cfg(windows)'.dependencies]
|
|
paste = { workspace = true }
|
|
widestring = { workspace = true }
|
|
|
|
[dev-dependencies]
|
|
insta = { workspace = true }
|
|
rustpython-pylib = { workspace = true, features = [ "freeze-stdlib" ] }
|
|
|
|
[target.'cfg(not(target_arch = "wasm32"))'.dev-dependencies]
|
|
rustls = { workspace = true, features = ["aws_lc_rs"] }
|
|
|
|
[lints]
|
|
workspace = true
|