diff --git a/.gitea/workflows/ci.yml b/.gitea/workflows/ci.yml index 9903253..d37e702 100644 --- a/.gitea/workflows/ci.yml +++ b/.gitea/workflows/ci.yml @@ -80,14 +80,16 @@ jobs: - name: Install package and dev dependencies run: | - python3 -m pip install --upgrade pip - python3 -m pip install -e .[dev] + python3 -m venv .venv + . .venv/bin/activate + python -m pip install --upgrade pip + python -m pip install -e .[dev] - name: Lint - run: python3 -m ruff check . + run: .venv/bin/python -m ruff check . - name: Type-check - run: python3 -m mypy src + run: .venv/bin/python -m mypy src - name: Test - run: python3 -m pytest + run: .venv/bin/python -m pytest diff --git a/CHANGELOG.md b/CHANGELOG.md index 2035ff4..068452c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -15,6 +15,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/). - `.gitea/workflows/ci.yml` — Gitea Actions CI workflow for push and pull request events - Gitea CI now uses native `git` checkout and system Python setup to avoid host-executor JavaScript action path issues - Gitea native checkout now uses `CI_GIT_TOKEN` repository secret for authenticated fetch from private repos +- Gitea CI now installs dependencies in a local `.venv` to avoid Debian/PEP 668 externally-managed pip errors - Python package scaffold with `src` layout and project metadata in `pyproject.toml` - Initial CLI entrypoint with agreed SSH flags: `--identity-file`, `--jump-host`, and `--ignore-ssh-config` - Input parsing/validation module and core request model