diff --git a/.gitignore b/.gitignore index 93932ec7..d1fb50ca 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,6 @@ .idea/ venv/ pr_agent/settings/.secrets.toml -__pycache__ \ No newline at end of file +__pycache__ +dist/ +*.egg-info/ \ No newline at end of file diff --git a/pyproject.toml b/pyproject.toml index 0bcb8f7c..a3ef5a12 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,3 +1,61 @@ +[build-system] +requires = ["setuptools>=61.0"] +build-backend = "setuptools.build_meta" + +[project] +name = "pr_agent" +version = "0.0.1" + +# FIXME: add authors/maintainers +authors = [ + {name = "Ori Kotek", email = "ori.k@codium.ai"}, +] +maintainers = [ + {name = "Ori Kotek", email = "ori.k@codium.ai"}, +] +description = "CodiumAI PR-Agent is an open-source tool to automatically analyze a pull request and provide several types of feedback" +readme = "README.md" +requires-python = ">=3.9" +keywords = ["ai", "tool", "developer", "review", "agent"] +license = {file = "LICENSE", name = "Apache 2.0 License"} +classifiers = [ + "Development Status :: 3 - Alpha", + "Intended Audience :: Developers", + "Operating System :: Independent", + "Programming Language :: Python :: 3", +] + +dependencies = [ + "dynaconf==3.1.12", + "fastapi==0.99.0", + "PyGithub==1.59.*", + "retry==0.9.2", + "openai==0.27.8", + "Jinja2==3.1.2", + "tiktoken==0.4.0", + "uvicorn==0.22.0", + "python-gitlab==3.15.0", + "pytest~=7.4.0", + "aiohttp~=3.8.4", + "atlassian-python-api==3.39.0", + "GitPython~=3.1.32", +] + +[project.urls] +"Homepage" = "https://github.com/Codium-ai/pr-agent" + +[tool.setuptools] +include-package-data = false +license-files = ["LICENSE"] + +[tool.setuptools.packages.find] +where = ["."] +include = ["pr_agent"] + +[project.scripts] +pr-agent = "pr_agent.cli:run" + + [tool.ruff] line-length = 120 diff --git a/requirements.txt b/requirements.txt index 51dc6fee..ecf975e2 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,13 +1 @@ -dynaconf==3.1.12 -fastapi==0.99.0 -PyGithub==1.59.* -retry==0.9.2 -openai==0.27.8 -Jinja2==3.1.2 -tiktoken==0.4.0 -uvicorn==0.22.0 -python-gitlab==3.15.0 -pytest~=7.4.0 -aiohttp~=3.8.4 -atlassian-python-api==3.39.0 -GitPython~=3.1.32 \ No newline at end of file +-e . \ No newline at end of file diff --git a/setup.py b/setup.py new file mode 100644 index 00000000..dc4e2095 --- /dev/null +++ b/setup.py @@ -0,0 +1,5 @@ +# for compatibility with legacy tools +# see: https://setuptools.pypa.io/en/latest/userguide/pyproject_config.html +from setuptools import setup + +setup() \ No newline at end of file