ae57090d7f
- 修复了 相对方向Py.__reduce__ 中 str() 返回 相对方向.向上 导致 getattr 失败的问题(拆分取 . 后变体名) - 重新编译后 __module__ 正确返回 chanlun._chanlun - 所有 4 个类型(相对方向、买卖点类型、分型结构、缺口)pickle 往返测试通过 2. from_py_object 消除 163 个弃用警告 - 给 14 个 #[derive(Clone)] 的 pyclass 添加了 from_py_object - #[pyclass] 中的正确写法:#[pyclass(name = "X", module = "chanlun._chanlun", from_py_object)] - cargo clean 重新编译后零 from_py_object 警告 3. #[classattr] + __members__ - 为 3 个枚举类型(相对方向、买卖点类型、分型结构)添加了 __members__ 类属性 - __members__ 是 dict[str, 实例],行为与 Python Enum.__members__ 一致 - 通过 pickle 反序列化的值也在 __members__.values() 中 4. __richcmp__ - 为 3 个枚举类型 + 缺口实现了 __richcmp__,替换手写 __eq__ - 相对方向/分型结构:支持全部 6 种比较(基于判别值排序) - 买卖点类型:支持 Eq/Ne + 与字符串比较 - 缺口:支持全部 6 种比较(按 (高, 低) 元组排序) 5. 补充文档
40 lines
1.3 KiB
TOML
40 lines
1.3 KiB
TOML
[build-system]
|
|
requires = ["maturin>=1.0,<2.0"]
|
|
build-backend = "maturin"
|
|
|
|
[project]
|
|
name = "chanlun"
|
|
version = "2605.67"
|
|
description = "缠论技术分析库 — Rust 高性能实现"
|
|
readme = { file = "README.md", content-type = "text/markdown" }
|
|
license = { file = "LICENSE", content-type = "text/plain" }
|
|
authors = [
|
|
{ name = "YuYuKunKun" },
|
|
]
|
|
keywords = ["chanlun", "technical-analysis", "trading", "stock", "crypto"]
|
|
classifiers = [
|
|
"Development Status :: 3 - Alpha",
|
|
"Intended Audience :: Financial and Insurance Industry",
|
|
"License :: OSI Approved :: MIT License",
|
|
"Programming Language :: Python :: 3",
|
|
"Programming Language :: Python :: 3.9",
|
|
"Programming Language :: Python :: 3.10",
|
|
"Programming Language :: Python :: 3.11",
|
|
"Programming Language :: Python :: 3.12",
|
|
"Programming Language :: Python :: 3.13",
|
|
"Programming Language :: Rust",
|
|
"Topic :: Office/Business :: Financial :: Investment",
|
|
]
|
|
requires-python = ">=3.9"
|
|
|
|
[project.urls]
|
|
Homepage = "https://github.com/YuYuKunKun/chanlun.rs"
|
|
Repository = "https://github.com/YuYuKunKun/chanlun.rs"
|
|
Issues = "https://github.com/YuYuKunKun/chanlun.rs/issues"
|
|
|
|
[tool.maturin]
|
|
features = ["pyo3/extension-module"]
|
|
python-source = "."
|
|
module-name = "chanlun._chanlun"
|
|
manifest-path = "Cargo.toml"
|