[project] name = "studies" version = "0.1.0" description = "A curated collection of mathematics and data science projects developed during my academic journey." readme = "README.md" requires-python = ">= 3.11" dependencies = [ "accelerate>=1.12.0", "catboost>=1.2.8", "datasets>=4.4.2", "faiss-cpu>=1.13.2", "imblearn>=0.0", "ipykernel>=6.29.5", "langchain>=1.2.0", "langchain-community>=0.4.1", "langchain-huggingface>=1.2.0", "langchain-ollama>=1.0.1", "langchain-text-splitters>=1.1.0", "matplotlib>=3.10.1", "nbformat>=5.10.4", "numpy>=2.2.5", "opencv-python>=4.11.0.86", "openpyxl>=3.1.5", "pandas>=2.2.3", "pandas-stubs>=2.3.2.250926", "plotly>=6.3.0", "polars>=1.37.0", "pypdf>=6.5.0", "scikit-learn>=1.6.1", "scipy>=1.15.2", "seaborn>=0.13.2", "sentence-transformers>=5.2.0", "shap>=0.49.1", "tensorflow>=2.20.0", "tf-keras>=2.20.1", "xgboost>=3.1.2", "yfinance>=0.2.66", ] [dependency-groups] dev = [ "ipykernel>=6.29.5", "uv>=0.6.16", ] [tool.ty.rules] index-out-of-bounds = "ignore" [tool.ruff] extend-include = ["*.ipynb"] line-length = 88 [tool.ruff.lint] # Activer les règles de linting courantes select = ["ALL"] # Désactiver certaines règles ignore = [ "E501", # line too long, géré par le formatter "E402", # Imports in top of file "T201", # Print "N806", "N803", "N802" ] # Exclure certains fichiers ou répertoires exclude = [ ".bzr", ".direnv", ".eggs", ".git", ".hg", ".mypy_cache", ".nox", ".pants.d", ".pytype", ".ruff_cache", ".svn", ".tox", ".venv", "__pypackages__", "_build", "buck-out", "build", "dist", "node_modules", "venv", ] # Permettre à Ruff de corriger automatiquement certaines erreurs fixable = ["ALL"] unfixable = [] [tool.ruff.lint.isort] # Regrouper les imports par thématiques section-order = ["future", "standard-library", "third-party", "data-science", "ml", "first-party", "local-folder"] [tool.ruff.lint.isort.sections] # On sépare les outils de manipulation de données des frameworks de ML lourds "data-science" = ["numpy", "pandas", "scipy", "matplotlib", "seaborn", "plotly"] "ml" = ["tensorflow", "keras", "torch", "sklearn", "xgboost", "catboost", "shap"]