mirror of
https://github.com/OpenBMB/ChatDev.git
synced 2026-05-13 12:03:42 +00:00
Review feedback on #611: 1. `Path.match` (used by uvicorn to filter reload candidates) does not expand `**` on Python < 3.13, so the flat `WareHouse/*` default only caught direct children — the agent-generated files that actually triggered #569 live at `WareHouse/<project>/<file>` and deeper. Expand defaults to multi-depth glob patterns (up to 10 levels) for each excluded dir. 2. `--reload-exclude` is only honoured by the watchfiles-backed reloader; without watchfiles uvicorn silently falls back to StatReload and drops every exclude pattern. Add `watchfiles` to requirements.txt so the filter works out of the box, and log a WARNING when --reload runs without watchfiles installed instead of failing silently. Test coverage: - `TestExcludePatternDepth` parametrised over 4 WareHouse depths plus logs/data/node_modules cases; also asserts real source paths like `server/app.py` are NOT matched (no over-exclusion regression). - `TestWatchfilesWarning` covers the new `_watchfiles_available` probe and the WARNING log path. 20/20 tests pass; 8 new.
31 lines
358 B
Plaintext
Executable File
31 lines
358 B
Plaintext
Executable File
pyyaml
|
|
openai
|
|
tenacity
|
|
mcp
|
|
fastmcp
|
|
faiss-cpu
|
|
fastapi==0.124.0
|
|
click>=8.1.8,<8.3
|
|
uvicorn
|
|
watchfiles
|
|
websockets
|
|
wsproto
|
|
pydantic==2.12.5
|
|
requests
|
|
pytest
|
|
ddgs
|
|
beautifulsoup4
|
|
matplotlib
|
|
networkx
|
|
cartopy
|
|
pandas>=2.3.3
|
|
openpyxl>=3.1.2
|
|
numpy>=2.3.5
|
|
seaborn>=0.13.2
|
|
google-genai>=1.52.0
|
|
chardet>=5.2.0
|
|
pygame>=2.6.1
|
|
filelock>=3.20.1
|
|
markdown>=3.10
|
|
xhtml2pdf>=0.2.17
|