diff --git a/pyproject.toml b/pyproject.toml index 83d6fce3..21776b83 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,100 +1,101 @@ -[build-system] -requires = ["hatchling"] -build-backend = "hatchling.build" - -[project] -name = "shell_gpt" -description = "A command-line productivity tool powered by large language models, will help you accomplish your tasks faster and more efficiently." -keywords = ["shell", "gpt", "openai", "ollama", "cli", "productivity", "cheet-sheet"] -readme = "README.md" -license = "MIT" -requires-python = ">=3.10" -authors = [{ name = "Farkhod Sadykov", email = "farkhod@sadykov.dev" }] -dynamic = ["version"] -classifiers = [ - "Operating System :: OS Independent", - "Topic :: Software Development", - "License :: OSI Approved :: MIT License", - "Intended Audience :: Information Technology", - "Intended Audience :: System Administrators", - "Intended Audience :: Developers", - "Programming Language :: Python :: 3.10", - "Programming Language :: Python :: 3.11", - "Programming Language :: Python :: 3.12", - "Programming Language :: Python :: 3.13", -] +[build-system] +requires = ["hatchling"] +build-backend = "hatchling.build" + +[project] +name = "shell_gpt" +description = "A command-line productivity tool powered by large language models, will help you accomplish your tasks faster and more efficiently." +keywords = ["shell", "gpt", "openai", "ollama", "cli", "productivity", "cheet-sheet"] +readme = "README.md" +license = "MIT" +requires-python = ">=3.10" +authors = [{ name = "Farkhod Sadykov", email = "farkhod@sadykov.dev" }] +dynamic = ["version"] +classifiers = [ + "Operating System :: OS Independent", + "Topic :: Software Development", + "License :: OSI Approved :: MIT License", + "Intended Audience :: Information Technology", + "Intended Audience :: System Administrators", + "Intended Audience :: Developers", + "Programming Language :: Python :: 3.10", + "Programming Language :: Python :: 3.11", + "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", +] dependencies = [ + "click >= 8.1.0, < 9.0.0", "openai >= 2.0.0, < 3.0.0", "typer >= 0.7.0, < 1.0.0", - "rich >= 13.1.0, < 14.0.0", - "distro >= 1.8.0, < 2.0.0", - 'pyreadline3 >= 3.4.1, < 4.0.0; sys_platform == "win32"', - "prompt_toolkit >= 3.0.51", -] - -[project.optional-dependencies] -litellm = [ - "litellm == 1.83.4" -] -test = [ - "pytest >= 7.2.2, < 8.0.0", - "requests-mock[fixture] >= 1.10.0, < 2.0.0", - "isort >= 5.12.0, < 6.0.0", - "black == 23.1.0", - "mypy == 1.1.1", - "types-requests == 2.28.11.17", - "codespell >= 2.2.5, < 3.0.0" -] -dev = [ - "ruff == 0.0.256", - "pre-commit >= 3.1.1, < 4.0.0", -] - -[project.scripts] -sgpt = "sgpt:cli" - -[project.urls] -homepage = "https://github.com/ther1d/shell_gpt" -repository = "https://github.com/ther1d/shell_gpt" -documentation = "https://github.com/TheR1D/shell_gpt/blob/main/README.md" - -[tool.hatch.version] -path = "sgpt/__version__.py" - -[tool.hatch.build.targets.wheel] -only-include = ["sgpt"] - -[tool.hatch.build.targets.sdist] -only-include = [ - "sgpt", - "tests", - "README.md", - "LICENSE", - "pyproject.toml", -] - -[tool.isort] -profile = "black" -skip = "__init__.py" - -[tool.mypy] -strict = true -exclude = ["llm_functions"] - -[tool.ruff] -select = [ - "E", # pycodestyle errors. - "W", # pycodestyle warnings. - "F", # pyflakes. - "C", # flake8-comprehensions. - "B", # flake8-bugbear. -] -ignore = [ - "E501", # line too long, handled by black. - "C901", # too complex. - "B008", # do not perform function calls in argument defaults. - "E731", # do not assign a lambda expression, use a def. -] - -[tool.codespell] -skip = '.git,venv' + "rich >= 13.1.0, < 14.0.0", + "distro >= 1.8.0, < 2.0.0", + 'pyreadline3 >= 3.4.1, < 4.0.0; sys_platform == "win32"', + "prompt_toolkit >= 3.0.51", +] + +[project.optional-dependencies] +litellm = [ + "litellm == 1.83.4" +] +test = [ + "pytest >= 7.2.2, < 8.0.0", + "requests-mock[fixture] >= 1.10.0, < 2.0.0", + "isort >= 5.12.0, < 6.0.0", + "black == 23.1.0", + "mypy == 1.1.1", + "types-requests == 2.28.11.17", + "codespell >= 2.2.5, < 3.0.0" +] +dev = [ + "ruff == 0.0.256", + "pre-commit >= 3.1.1, < 4.0.0", +] + +[project.scripts] +sgpt = "sgpt:cli" + +[project.urls] +homepage = "https://github.com/ther1d/shell_gpt" +repository = "https://github.com/ther1d/shell_gpt" +documentation = "https://github.com/TheR1D/shell_gpt/blob/main/README.md" + +[tool.hatch.version] +path = "sgpt/__version__.py" + +[tool.hatch.build.targets.wheel] +only-include = ["sgpt"] + +[tool.hatch.build.targets.sdist] +only-include = [ + "sgpt", + "tests", + "README.md", + "LICENSE", + "pyproject.toml", +] + +[tool.isort] +profile = "black" +skip = "__init__.py" + +[tool.mypy] +strict = true +exclude = ["llm_functions"] + +[tool.ruff] +select = [ + "E", # pycodestyle errors. + "W", # pycodestyle warnings. + "F", # pyflakes. + "C", # flake8-comprehensions. + "B", # flake8-bugbear. +] +ignore = [ + "E501", # line too long, handled by black. + "C901", # too complex. + "B008", # do not perform function calls in argument defaults. + "E731", # do not assign a lambda expression, use a def. +] + +[tool.codespell] +skip = '.git,venv'