Skip to content

Commit 5eaf287

Browse files
Migrate to uv and add GitHub CI workflow (#4)
* Migrate from Poetry to uv and add CI pipeline - Convert pyproject.toml from Poetry to standard PEP 621 format - Add pytest as a dev dependency - Create basic test structure with initial tests - Add GitHub Actions CI workflow that runs pytest on Python 3.8 - Remove poetry.lock and add uv.lock to .gitignore - CI runs on ubuntu, windows, and macos to ensure cross-platform compatibility * Disable uv cache in CI workflow Since uv.lock is not committed to the repository, the cache option should be disabled to avoid build failures. * Skip project installation in CI workflow This is a Sublime Text plugin, not a traditional Python package, so we use --no-install-project flag to only install dependencies without trying to install the project itself. --------- Co-authored-by: Claude <[email protected]>
1 parent b0804dc commit 5eaf287

File tree

6 files changed

+73
-373
lines changed

6 files changed

+73
-373
lines changed

.github/workflows/ci.yml

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
name: CI
2+
3+
on:
4+
push:
5+
branches: [ main, master ]
6+
pull_request:
7+
branches: [ main, master ]
8+
workflow_dispatch:
9+
10+
jobs:
11+
test:
12+
runs-on: ${{ matrix.os }}
13+
strategy:
14+
fail-fast: false
15+
matrix:
16+
os: [ubuntu-latest, windows-latest, macos-latest]
17+
18+
steps:
19+
- uses: actions/checkout@v4
20+
21+
- name: Install uv
22+
uses: astral-sh/setup-uv@v3
23+
24+
- name: Set up Python 3.8
25+
uses: actions/setup-python@v5
26+
with:
27+
python-version: '3.8'
28+
29+
- name: Install dependencies
30+
run: uv sync --all-extras --dev --no-install-project
31+
32+
- name: Run tests
33+
run: uv run --no-project pytest tests/ -v

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -84,6 +84,9 @@ ipython_config.py
8484
# pyenv
8585
.python-version
8686

87+
# uv
88+
uv.lock
89+
8790
# pipenv
8891
# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
8992
# However, in case of collaboration, if having platform-specific dependencies or dependencies

0 commit comments

Comments
 (0)