diff --git a/pyproject.toml b/pyproject.toml new file mode 100644 index 0000000..9e7e35f --- /dev/null +++ b/pyproject.toml @@ -0,0 +1,58 @@ +[build-system] +requires = ["setuptools>=61.0", "wheel"] +build-backend = "setuptools.build_meta" + +[project] +name = "git-insights-cli" +version = "1.0.0" +description = "A CLI tool that analyzes git repositories to generate developer productivity insights" +readme = "README.md" +license = {text = "MIT"} +requires-python = ">=3.8" +authors = [ + {name = "Git Insights Team"} +] +keywords = ["git", "cli", "analytics", "productivity", "developer-tools"] +classifiers = [ + "Development Status :: 4 - Beta", + "Intended Audience :: Developers", + "Environment :: Console :: Terminal", + "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" +] +dependencies = [ + "click>=8.1.7", + "rich>=13.7.0", + "gitpython>=3.1.40", + "dataclasses-json>=0.6.4", + "pyyaml>=6.0.1", + "jinja2>=3.1.3" +] + +[project.optional-dependencies] +dev = [ + "pytest>=7.4.3", + "pytest-cov>=4.1.0", + "ruff>=0.1.6", + "mypy>=1.7.1" +] + +[project.scripts] +git-insights = "src.cli:main" + +[tool.ruff] +target-version = "py38" + +[tool.ruff.lint] +select = ["E", "F", "I", "UP"] +ignore = [] + +[tool.mypy] +python_version = "3.8" +warn_return_any = true +warn_unused_ignores = true +disallow_untyped_defs = true