@@ -100,35 +100,25 @@ jobs:
100100 uses : actions/setup-python@v5
101101 with :
102102 python-version : 3.12
103- - name : Load cached Poetry Binary
104- id : cached-poetry-binary
105- uses : actions/cache@v4
106- with :
107- path : ~/.local
108- key : venv-${{ runner.os }}-${{ steps.setup-python.outputs.python-version }}-1.8.3
109- - name : Install Poetry
110- uses : snok/install-poetry@v1
103+ - name : Install uv
104+ uses : astral-sh/setup-uv@v4
111105 with :
112- version : 1.8.3
113- virtualenvs-create : true
114- virtualenvs-in-project : true
106+ version : " latest"
115107 - name : Load cached venv
116- id : cached-poetry -dependencies
108+ id : cached-uv -dependencies
117109 uses : actions/cache@v4
118110 with :
119111 path : .venv
120- key : venv-${{ runner.os }}-${{ steps.setup-python.outputs.python-version }}-${{ hashFiles('**/poetry.lock') }}${{ inputs.install-args || '-E dev -E postgres -E external-tools -E tests -E cloud-tool-sandbox' }}
121- # Restore cache with this prefix if not exact match with key
122- # Note cache-hit returns false in this case, so the below step will run
112+ key : venv-${{ runner.os }}-${{ steps.setup-python.outputs.python-version }}-${{ hashFiles('**/uv.lock') }}
123113 restore-keys : |
124114 venv-${{ runner.os }}-${{ steps.setup-python.outputs.python-version }}-
125115 - name : Install dependencies
126- if : steps.cached-poetry -dependencies.outputs.cache-hit != 'true'
116+ if : steps.cached-uv -dependencies.outputs.cache-hit != 'true'
127117 shell : bash
128- run : poetry install --no-interaction --no-root ${{ inputs.install-args || '-E dev -E postgres -E external-tools -E tests -E cloud-tool-sandbox -E google' }}
129- - name : Install letta packages via Poetry
118+ run : uv sync --extra dev --extra postgres --extra external-tools --extra cloud-tool-sandbox --extra google
119+ - name : Install letta packages
130120 run : |
131- poetry run pip install --upgrade letta-client letta
121+ uv run pip install --upgrade letta-client letta
132122 - name : Migrate database
133123 env :
134124 LETTA_PG_PORT : 5432
@@ -138,7 +128,7 @@ jobs:
138128 LETTA_PG_HOST : localhost
139129 run : |
140130 psql -h localhost -U postgres -d postgres -c 'CREATE EXTENSION vector'
141- poetry run alembic upgrade head
131+ uv run alembic upgrade head
142132 - name : Run integration tests for ${{ matrix.config_file }}
143133 env :
144134 LLM_CONFIG_FILE : ${{ matrix.config_file }}
@@ -161,7 +151,7 @@ jobs:
161151 GOOGLE_CLOUD_LOCATION : ${{ secrets.GOOGLE_CLOUD_LOCATION }}
162152 LETTA_GEMINI_FORCE_MINIMUM_THINKING_BUDGET : true
163153 run : |
164- poetry run pytest \
154+ uv run pytest \
165155 -s -vv \
166156 tests/integration_test_send_message.py \
167157 --maxfail=1 --durations=10
0 commit comments