[build-system] requires = ["maturin>=1.0,<2.0"] build-backend = "maturin" [project] name = "optimizr" version = "0.3.0" description = "High-performance optimization algorithms in Rust with Python bindings" authors = [ {name = "Your Name", email = "your.email@example.com"} ] readme = "README.md" license = {text = "MIT"} requires-python = ">=3.8" classifiers = [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "Intended Audience :: Science/Research", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Rust", "Topic :: Scientific/Engineering", "Topic :: Scientific/Engineering :: Mathematics", "Topic :: Software Development :: Libraries :: Python Modules", ] dependencies = [ "numpy>=1.20.0", ] [project.optional-dependencies] dev = [ "pytest>=7.0", "pytest-cov>=4.0", "black>=23.0", "ruff>=0.1.0", "mypy>=1.0", ] scipy = [ "scipy>=1.7.0", ] all = [ "optimizr[dev,scipy]", ] [project.urls] Homepage = "https://github.com/yourusername/optimiz-r" Documentation = "https://github.com/yourusername/optimiz-r/blob/main/README.md" Repository = "https://github.com/yourusername/optimiz-r" Issues = "https://github.com/yourusername/optimiz-r/issues" [tool.maturin] python-source = "python" module-name = "optimizr._core" features = ["pyo3/extension-module"] [tool.pytest.ini_options] testpaths = ["tests"] python_files = "test_*.py" python_functions = "test_*" [tool.black] line-length = 100 target-version = ['py38', 'py39', 'py310', 'py311', 'py312'] [tool.ruff] line-length = 100 target-version = "py38" [tool.mypy] python_version = "3.8" warn_return_any = true warn_unused_configs = true disallow_untyped_defs = true