diff --git a/.github/workflows/legacy_ci.yml b/.github/workflows/legacy_ci.yml index 57fe6f9..98b9e36 100644 --- a/.github/workflows/legacy_ci.yml +++ b/.github/workflows/legacy_ci.yml @@ -21,10 +21,10 @@ jobs: - "3.11" steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - name: Python ${{ matrix.python-version }} Setup - uses: actions/setup-python@v2 + uses: actions/setup-python@v4 with: python-version: ${{ matrix.python-version }} @@ -38,7 +38,6 @@ jobs: shell: bash run: | pip install poetry - if [ -d /poetryenvs ]; then rm -rf ~/poetryenvs; fi poetry config virtualenvs.path ~/poetryenvs poetry install @@ -66,13 +65,13 @@ jobs: poetry run pytest tests/custom/_legacy --cov=hume --cov-report=html --cov-report=xml --cov-branch -m "(not service) and (not microphone)" - name: Upload HTML Coverage - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v4 with: name: hume-unit-coverage-html path: hume/htmlcov - name: Upload XML Coverage - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v4 with: name: hume-unit-coverage-xml path: hume/coverage.xml @@ -93,10 +92,10 @@ jobs: - "3.10" steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - name: Python ${{ matrix.python-version }} Setup - uses: actions/setup-python@v2 + uses: actions/setup-python@v4 with: python-version: ${{ matrix.python-version }} @@ -110,7 +109,6 @@ jobs: shell: bash run: | pip install poetry - if [ -d /poetryenvs ]; then rm -rf ~/poetryenvs; fi poetry config virtualenvs.path ~/poetryenvs poetry install @@ -124,13 +122,13 @@ jobs: poetry run pytest tests/custom/_legacy --cov=hume --cov-report=html --cov-report=xml --cov-branch -m service - name: Upload HTML Coverage - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v4 with: name: hume-service-coverage-html path: hume/htmlcov - name: Upload XML Coverage - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v4 with: name: hume-service-coverage-xml path: hume/coverage.xml @@ -149,10 +147,10 @@ jobs: - "3.10" steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - name: Python ${{ matrix.python-version }} Setup - uses: actions/setup-python@v2 + uses: actions/setup-python@v4 with: python-version: ${{ matrix.python-version }} diff --git a/src/hume/empathic_voice/chat/socket_client.py b/src/hume/empathic_voice/chat/socket_client.py index 9aa3f4a..7c19cab 100644 --- a/src/hume/empathic_voice/chat/socket_client.py +++ b/src/hume/empathic_voice/chat/socket_client.py @@ -61,7 +61,7 @@ def __init__( async def __aiter__(self): async for message in self.websocket: - yield message + yield parse_obj_as(SubscribeEvent, json.loads(message)) # type: ignore async def _send(self, data: typing.Any) -> None: if isinstance(data, dict): diff --git a/src/hume/expression_measurement/stream/socket_client.py b/src/hume/expression_measurement/stream/socket_client.py index daa1202..f9c7d30 100644 --- a/src/hume/expression_measurement/stream/socket_client.py +++ b/src/hume/expression_measurement/stream/socket_client.py @@ -38,7 +38,7 @@ def __init__( async def __aiter__(self): async for message in self.websocket: - yield message + yield parse_obj_as(SubscribeEvent, json.loads(message)) # type: ignore # TODO: we can likely coerce the right response model within the union here, if we're # assuming request-response pattern and 1:1 mapping between request and response types