From 118c0ede465ebfebe21e4bbba9245b235ae7938e Mon Sep 17 00:00:00 2001 From: Evan Doyle Date: Wed, 10 Jul 2024 16:31:39 -0700 Subject: [PATCH] Implement tach to lint module boundaries --- .github/workflows/tach-check.yml | 25 +++++++++ pyproject.toml | 5 +- tach.yml | 95 ++++++++++++++++++++++++++++++++ 3 files changed, 123 insertions(+), 2 deletions(-) create mode 100644 .github/workflows/tach-check.yml create mode 100644 tach.yml diff --git a/.github/workflows/tach-check.yml b/.github/workflows/tach-check.yml new file mode 100644 index 00000000..2bbbd15e --- /dev/null +++ b/.github/workflows/tach-check.yml @@ -0,0 +1,25 @@ + +name: Tach Check + +on: [pull_request] + +jobs: + tach-check: + runs-on: ubuntu-latest + + steps: + - name: Checkout code + uses: actions/checkout@v2 + + - name: Set up Python + uses: actions/setup-python@v2 + with: + python-version: '3.11' # Specify the version of Python you need + + - name: Install dependencies + run: | + python -m pip install --upgrade pip + pip install tach + + - name: Run Tach + run: tach check \ No newline at end of file diff --git a/pyproject.toml b/pyproject.toml index babcae43..d8ef4275 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -23,12 +23,13 @@ dependencies = [ "requests==2.31.0", "psutil==5.9.8", "packaging==23.2", - "termcolor==2.4.0" + "termcolor==2.4.0", ] [project.optional-dependencies] dev = [ "pytest==7.4.0", - "requests_mock==1.11.0" + "requests_mock==1.11.0", + "tach==0.6.9", ] langchain = [ "langchain~=1.19" diff --git a/tach.yml b/tach.yml new file mode 100644 index 00000000..bd03b83d --- /dev/null +++ b/tach.yml @@ -0,0 +1,95 @@ +# yaml-language-server: $schema=https://raw.githubusercontent.com/gauge-sh/tach/v0.6.9/public/tach-yml-schema.json +modules: + - path: agentops + depends_on: + - agentops.agent + - agentops.client + - agentops.config + - agentops.decorators + - agentops.event + - agentops.log_config + - agentops.partners + - agentops.session + - path: agentops.agent + depends_on: + - agentops + - agentops.log_config + - path: agentops.client + depends_on: + - agentops.config + - agentops.enums + - agentops.event + - agentops.exceptions + - agentops.helpers + - agentops.host_env + - agentops.llm_tracker + - agentops.log_config + - agentops.meta_client + - agentops.partners + - agentops.session + - path: agentops.config + depends_on: + - agentops.exceptions + - path: agentops.decorators + depends_on: + - agentops + - agentops.client + - agentops.session + - path: agentops.enums + depends_on: [] + - path: agentops.event + depends_on: + - agentops.enums + - agentops.helpers + - path: agentops.exceptions + depends_on: + - agentops.log_config + - path: agentops.helpers + depends_on: + - agentops.log_config + - path: agentops.host_env + depends_on: + - agentops.helpers + - agentops.log_config + - path: agentops.http_client + depends_on: + - agentops.log_config + - path: agentops.langchain_callback_handler + depends_on: + - agentops + - agentops.helpers + - path: agentops.llm_tracker + depends_on: + - agentops.event + - agentops.helpers + - agentops.log_config + - agentops.session + - path: agentops.log_config + depends_on: [] + - path: agentops.meta_client + depends_on: + - agentops.helpers + - agentops.host_env + - agentops.http_client + - agentops.log_config + - path: agentops.partners + depends_on: + - agentops + - agentops.enums + - agentops.helpers + - agentops.log_config + - path: agentops.session + depends_on: + - agentops.config + - agentops.event + - agentops.helpers + - agentops.http_client + - agentops.log_config +exclude: + - .*__pycache__ + - .*egg-info + - docs + - examples + - tests + - venv +source_root: .