Skip to content
Merged
Show file tree
Hide file tree
Changes from 4 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
28 changes: 22 additions & 6 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -1,11 +1,27 @@
name: Dummy-CI
name: CI

on: [push]
on:
push:
branches: [main]
pull_request:

jobs:
build:
check-lockfile:
name: Check backend lockfile is up to date
if: github.event_name == 'pull_request'
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- name: Pass
run: echo Success!
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Ensure requirements.txt is updated when requirements.in changes
run: |
BASE=${{ github.event.pull_request.base.sha }}
HEAD=${{ github.event.pull_request.head.sha }}
CHANGED=$(git diff --name-only "$BASE" "$HEAD")
if echo "$CHANGED" | grep -q 'backend/requirements\.in'; then
if ! echo "$CHANGED" | grep -q 'backend/requirements\.txt'; then
echo "::error::backend/requirements.in was modified but backend/requirements.txt was not. Please run pip-compile to regenerate the lockfile."
Comment thread
ambv marked this conversation as resolved.
Outdated
exit 1
fi
fi
16 changes: 13 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,8 @@ This project consists of three main components:
## Quick Start

### Prerequisites
- Python 3.8+
- Node.js 16+
- CPython source repository (for benchmarking)
- Docker Engine 20.10+ and Docker Compose 2.0+
Comment thread
ambv marked this conversation as resolved.
- CPython source repository (for benchmarking with the worker)

### Setup & Installation
```bash
Expand Down Expand Up @@ -58,6 +57,17 @@ make build # Build frontend for production
make clean # Clean up generated files and caches
```

### Updating Backend Dependencies
```bash
# Edit backend/requirements.in, then regenerate the lockfile:
docker run --rm -v "$(pwd)/backend:/app" -w /app python:3.13-slim-bookworm \
sh -c "pip install --quiet pip-tools && pip-compile --strip-extras \
Comment thread
ambv marked this conversation as resolved.
Outdated
--generate-hashes --output-file requirements.txt requirements.in"

# Rebuild the backend container:
docker compose -f docker-compose.dev.yml up --build -d backend
Comment thread
ambv marked this conversation as resolved.
```

## Worker Setup

### Worker Usage
Expand Down
2 changes: 1 addition & 1 deletion backend/Dockerfile.dev
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM python:3.11-slim
FROM python:3.13-slim-bookworm

WORKDIR /app

Expand Down
14 changes: 14 additions & 0 deletions backend/requirements.in
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
fastapi>=0.115.0
uvicorn[standard]>=0.30.0
pydantic
pydantic-settings
sqlalchemy
aiosqlite
asyncpg
Comment thread
ambv marked this conversation as resolved.
python-multipart
python-dateutil
pytest
pytest-asyncio
Comment thread
ambv marked this conversation as resolved.
Outdated
httpx
authlib>=1.2.0
sqlparse
Loading
Loading