commit e3d5d0d3cd79a1a898a91a4a1051aa1532872c40
parent 00c3e7db1e35106d6e0cc33b7a25b43ea53a8afe
Author: andrewlaack-collab <andrew.laack@imbue.com>
Date: Wed, 11 Feb 2026 01:34:04 +0000
Updates to support CD pipeline (#54)
Diffstat:
6 files changed, 65 insertions(+), 11 deletions(-)
diff --git a/.github/workflows/publish-to-pypi.yml b/.github/workflows/publish-to-pypi.yml
@@ -0,0 +1,22 @@
+name: Publish to PyPI
+on:
+ push:
+ tags:
+ - "v*"
+
+jobs:
+ build:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v4
+ - uses: actions/setup-python@v5
+ with:
+ python-version: "3.12"
+ - name: Install build tools
+ run: python -m pip install --upgrade pip build
+ - name: Build package
+ run: python -m build
+ - name: Publish to PyPI
+ uses: pypa/gh-action-pypi-publish@release/v1
+ with:
+ password: ${{ secrets.PYPI_API_TOKEN }}
diff --git a/README.md b/README.md
@@ -7,6 +7,12 @@ It reviews git diffs, and optionally an agent's conversation history, to find is
## Installation
```bash
+pip install verify-everything
+```
+
+Or install from source:
+
+```bash
pip install git+https://github.com/imbue-ai/vet.git
```
@@ -52,7 +58,7 @@ jobs:
- uses: actions/setup-python@v5
with:
python-version: "3.11"
- - run: pip install git+https://github.com/imbue-ai/vet.git
+ - run: pip install verify-everything
- name: Run vet
if: github.event.pull_request.head.repo.full_name == github.repository
env:
diff --git a/pyproject.toml b/pyproject.toml
@@ -3,17 +3,32 @@ requires = ["setuptools", "wheel"]
build-backend = "setuptools.build_meta"
[project]
-name = "vet"
+name = "verify-everything"
version = "0.1.0"
+description = "LLM-based code review tool that finds issues tests and linters miss"
readme = "README.md"
license = "AGPL-3.0-only"
+requires-python = ">=3.11"
+keywords = ["code-review", "llm", "verification", "linting", "ai", "git", "diff"]
+authors = [
+ { name = "Imbue" },
+]
+classifiers = [
+ "Development Status :: 4 - Beta",
+ "Environment :: Console",
+ "Intended Audience :: Developers",
+ "Programming Language :: Python :: 3",
+ "Programming Language :: Python :: 3.11",
+ "Programming Language :: Python :: 3.12",
+ "Programming Language :: Python :: 3.13",
+ "Topic :: Software Development :: Quality Assurance",
+ "Topic :: Software Development :: Testing",
+]
dependencies = [
# Original vet dependencies
"jinja2",
"loguru",
"pydantic>=2.11.4",
- "pytest",
- "syrupy",
# From imbue_core
"anyio",
@@ -39,7 +54,11 @@ dependencies = [
"async_lru",
"libcst",
]
-requires-python = ">=3.11"
+
+[project.urls]
+Homepage = "https://github.com/imbue-ai/vet"
+Repository = "https://github.com/imbue-ai/vet"
+Issues = "https://github.com/imbue-ai/vet/issues"
[project.scripts]
vet = "vet.cli.main:main"
@@ -54,6 +73,8 @@ include = ["vet*"]
dev = [
"black",
"hypothesis",
+ "pytest",
+ "syrupy",
]
[tool.black]
diff --git a/uv.lock b/uv.lock
@@ -1522,7 +1522,7 @@ wheels = [
]
[[package]]
-name = "vet"
+name = "verify-everything"
version = "0.1.0"
source = { editable = "." }
dependencies = [
@@ -1544,8 +1544,6 @@ dependencies = [
{ name = "pydantic" },
{ name = "pygit2" },
{ name = "pyhumps" },
- { name = "pytest" },
- { name = "syrupy" },
{ name = "tblib" },
{ name = "tiktoken" },
{ name = "toml" },
@@ -1557,6 +1555,8 @@ dependencies = [
dev = [
{ name = "black" },
{ name = "hypothesis" },
+ { name = "pytest" },
+ { name = "syrupy" },
]
[package.metadata]
@@ -1579,8 +1579,6 @@ requires-dist = [
{ name = "pydantic", specifier = ">=2.11.4" },
{ name = "pygit2", specifier = ">=1.18.0" },
{ name = "pyhumps" },
- { name = "pytest" },
- { name = "syrupy" },
{ name = "tblib", specifier = "==2.0.0" },
{ name = "tiktoken" },
{ name = "toml" },
@@ -1592,6 +1590,8 @@ requires-dist = [
dev = [
{ name = "black" },
{ name = "hypothesis" },
+ { name = "pytest" },
+ { name = "syrupy" },
]
[[package]]
diff --git a/vet/__main__.py b/vet/__main__.py
@@ -0,0 +1,5 @@
+import sys
+
+from vet.cli.main import main
+
+sys.exit(main())
diff --git a/vet/cli/main.py b/vet/cli/main.py
@@ -38,7 +38,7 @@ from vet.formatters import format_issue_text
from vet.formatters import issue_to_dict
from vet.formatters import validate_output_fields
-VERSION = version("vet")
+VERSION = version("verify-everything")
_ISSUE_CODE_FIELDS = frozenset({"enabled_issue_codes", "disabled_issue_codes"})
_PATH_FIELDS = frozenset({"repo", "output"})