summaryrefslogtreecommitdiffstats
path: root/CLAUDE.md
diff options
context:
space:
mode:
authorChristophe Besson <cbesson@gmail.com>2026-08-09 22:28:47 +0200
committerChristophe Besson <cbesson@gmail.com>2026-08-09 22:28:47 +0200
commit82ce18ef9f45f817505b12e24c958beda45465f0 (patch)
tree2e33da4474b33153a1071281b0c03af447a76ea7 /CLAUDE.md
parenta4dbeb368d19f6afc0f6da3819c8e0d6242b0732 (diff)
downloadmeshbay-82ce18ef9f45f817505b12e24c958beda45465f0.tar.gz
fix: complete pyproject.toml deps + graceful QUIC fallback
meshbay-node/pyproject.toml: add aioquic>=1.0 (was commented 'v2'), websockets>=12.0 (revocation push). Both are production code since Phase 5. meshbay-hub/pyproject.toml: add aiosqlite (tests without PostgreSQL), slowapi (rate limiting), websockets (revocation push), PyJWT (explicit). transport/__init__.py: QUIC imports wrapped in try/except — node works without aioquic (TCP+TLS + HTTP fallback). QUIC_AVAILABLE flag exported. QUICKSTART.md: replace manual pip list with 'pip install -e' that pulls all deps from pyproject.toml automatically. Add dependency table. CLAUDE.md: clarify that all deps go in pyproject.toml, not manual installs. 81/81 tests. Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
Diffstat (limited to 'CLAUDE.md')
-rw-r--r--CLAUDE.md13
1 files changed, 10 insertions, 3 deletions
diff --git a/CLAUDE.md b/CLAUDE.md
index 6293bdb..32c4e8b 100644
--- a/CLAUDE.md
+++ b/CLAUDE.md
@@ -32,12 +32,19 @@ Jamais de processus orphelins ni de ports ouverts après un test.
- **Build backend:** hatchling (per package `pyproject.toml`)
```bash
-# Créer le venv et installer les packages
-python3 -m venv .venv && source .venv/bin/activate
+# Créer le venv (--clear si recréation sur une autre machine/OS)
+python3 -m venv .venv --clear
+source .venv/bin/activate
+
+# Toutes les dépendances sont déclarées dans les pyproject.toml — un seul pip install suffit
pip install -e packages/meshbay-common -e packages/meshbay-hub -e packages/meshbay-node
-pip install httpx blake3 uvicorn pytest pytest-asyncio
+pip install pytest pytest-asyncio aiosqlite # extras dev
```
+Les deps clés (aioquic, watchdog, fastapi, blake3, etc.) sont dans les `pyproject.toml`
+et installées automatiquement. Ne pas ajouter manuellement des packages sans les déclarer
+dans le bon `pyproject.toml`.
+
> **Ne jamais copier `.venv/` entre machines d'OS différents.** Si rsync depuis Fedora vers Ubuntu,
> exclure `.venv/` et recréer sur la cible avec `python3 -m venv .venv --clear`.
> Sans `--clear`, `certifi.where()` pointe vers un chemin Fedora inexistant sur Ubuntu → `FileNotFoundError`.