Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .codespellrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
[codespell]
# Ignore Polish language words that codespell flags as misspellings
ignore-words-list = tekst,numer,Tekst
9 changes: 9 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
build/
**/*.egg-info/
**/.eggs/
.git/
.git*
**/.gitlab/
**/__pycache__/
**/.venv/
**/.vscode/
8 changes: 6 additions & 2 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,12 +25,14 @@ jobs:

- name: Install uv
uses: astral-sh/setup-uv@v5
with:
cache-dependency-glob: "pyproject.toml"

- name: Generate proto stubs
run: |
uv venv .venv
source .venv/bin/activate
uv pip install --quiet "grpcio-tools>=1.70.0,<1.71.0"
uv pip install --quiet "grpcio-tools>=1.70.0,<1.71.0" setuptools
PYTHONPATH=. python setup.py build_grpc

- name: Run tests via tox
Expand All @@ -53,12 +55,14 @@ jobs:

- name: Install uv
uses: astral-sh/setup-uv@v5
with:
cache-dependency-glob: "pyproject.toml"

- name: Generate proto stubs
run: |
uv venv .venv
source .venv/bin/activate
uv pip install --quiet "grpcio-tools>=1.70.0,<1.71.0"
uv pip install --quiet "grpcio-tools>=1.70.0,<1.71.0" setuptools
PYTHONPATH=. python setup.py build_grpc

- name: Run tests via tox
Expand Down
23 changes: 17 additions & 6 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -59,22 +59,33 @@ instance/
.ipynb_checkpoints

# Environments
.env
.venv
env/
venv/
ENV/
env.bak/
venv.bak/

# proto sources
tts_client_python/proto/*
# audio files
*.wav
*.ogg

# ignore files in directory `docker/wav`
docker/wav/*
# ignore files in directory `wav`
docker/audio/*

# ignore files in directory `docker/tls`
# ignore files in directory `tls`
docker/tls/*

# ignore files in directory `docker/txt`
# ignore files in directory `txt`
docker/txt/*

# ignore files in directory 'proto'
tts_client_python/proto/*

# but keep the directories with .gitkeep file
!/**/.gitkeep

# generated by setup.sh from internal pre-commit repo — not versioned
.pre-commit-config.yaml
pre-commit/
2 changes: 1 addition & 1 deletion .gitmodules
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
[submodule "submodules/tts-service-api"]
path = submodules/tts-service-api
url = https://github.com/techmo-pl/tts-service-api.git
url = https://github.com/techmo-pl/tts-service-api
28 changes: 23 additions & 5 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,28 @@
# Techmo TTS gRPC Python client Changelog

**Note** - this project was previously developed in the github repository: https://github.com/techmo-pl/tts-client
To find the older versions of the application or check the history of changes, use the old repository.
The changelog below only describes the changes made within the new repository.
## [3.2.8] - 2026-03-25

### Fixed

- `tts_client_python/tts_client.py`: legal header corrected from "Techmo ASR Client" to "Techmo TTS Client".
- `README.md`: removed non-existent `-v` short flag from `--print-service-version` option table.
- `tests/conftest.py`: removed dead `asr_service_address` fixture (no test uses it).
- `pytest.ini`: removed dead `asr` marker and `not asr` from `addopts`.
- `tox.ini`: removed `ASR_*` from `passenv` (no ASR tests exist).


## [3.2.7] - 2026-03-23

## [3.0.0] - 2022-07-07
### Added
- Handling new proto messages for TTS Service API 3.0.0

- `install.sh`: check for `uv` before use and print install instructions.
- `install.sh`: check for uninitialised `tts-service-api` submodule at startup.
- `install.sh`: warn about missing `libportaudio2` after install completes.
- `README.md`: add `uv` to prerequisites with canonical install command.

### Fixed

- `setup.py`: proto generation now raises a clear `FileNotFoundError` when the
submodule is absent instead of a bare path error.
- `tests/conftest.py`: print `libportaudio2` install hint to stderr at session
start instead of relying on pytest's end-of-session warnings summary.
42 changes: 32 additions & 10 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,24 +1,46 @@
FROM python:3.6-slim
FROM python:3.8-slim AS build-stage

LABEL maintainer="<jan.wozniak@techmo.pl>"
ARG DEBIAN_FRONTEND=noninteractive
ENV PIP_ROOT_USER_ACTION=ignore

ADD ./tts_client_python /tts_client/tts_client_python
ADD ./requirements.txt setup.py README.md /tts_client/
COPY submodules/tts-service-api /tts-client-python/submodules/tts-service-api
COPY tts_client_python /tts-client-python/tts_client_python
COPY setup.py pyproject.toml README.md /tts-client-python/

WORKDIR /tts_client
WORKDIR /tts-client-python

# hadolint ignore=DL3008
RUN apt-get update \
&& apt-get dist-upgrade -y \
&& apt-get install -y --no-install-recommends \
build-essential \
libportaudio2 \
python3-pip \
python3-dev \
&& apt-get clean \
&& rm -fr /var/lib/apt/lists/* \
&& rm -fr /var/cache/apt/* \
&& pip3 install -r requirements.txt \
&& pip install -e .
&& rm -fr /var/cache/apt/*

ENTRYPOINT ["python3", "tts_client_python/tts_client.py"]
# hadolint ignore=DL3013
RUN pip install --no-cache-dir --upgrade pip \
&& pip install --no-cache-dir .


FROM python:3.8-slim

LABEL maintainer="Techmo sp. z o.o. <https://github.com/techmo-pl>"

# hadolint ignore=DL3008
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
libportaudio2 \
&& apt-get clean \
&& rm -fr /var/lib/apt/lists/* \
&& rm -fr /var/cache/apt/*

COPY --from=build-stage /usr/local/lib/python3.8/site-packages /usr/local/lib/python3.8/site-packages
COPY --from=build-stage /tts-client-python/tts_client_python /tts-client-python/tts_client_python

WORKDIR /tts-client-python

COPY ./docker-entrypoint.sh /
ENTRYPOINT ["/docker-entrypoint.sh"]
Loading
Loading