soulsync/requirements.txt
Broque Thomas a9dcd60d3f Bust Docker layer cache to rebuild dev nightly image
User reported (eN1gma) the dev nightly Docker image fails to start
with ``ModuleNotFoundError: No module named 'requests'`` despite
``requests>=2.31.0`` being correctly listed in requirements.txt.
Local Docker builds + python imports both work — the issue is a
poisoned GHA Docker layer cache: the ``pip install -r requirements.txt``
step is cached based on the file's content hash, so once a bad
layer (e.g. an aborted/incomplete pip install from a previous run)
makes it into the cache, every subsequent build reuses it.

Touching this comment changes the requirements.txt hash, which
forces ``cache-from: type=gha`` in dev-nightly.yml to skip the
poisoned layer and run a fresh ``pip install``. The next dev nightly
build (or push-to-dev triggered build) will produce a clean image.

No functional change.
2026-05-02 21:13:20 -07:00

51 lines
1 KiB
Text

# SoulSync requirements
# Web application dependencies only
# (cache-bust 2026-05-02: dev nightly image was serving a poisoned layer
# with missing dependencies; touching this comment forces the GHA Docker
# layer cache to invalidate the pip-install step on the next build.)
# Core web framework
Flask>=3.0.0
Flask-Limiter>=3.5.0
# Music service APIs
spotipy>=2.23.0
PlexAPI>=4.17.0
# HTTP and async support
requests>=2.31.0
aiohttp>=3.9.0
# Security and encryption
cryptography>=41.0.0
# Media metadata handling
mutagen>=1.47.0
Pillow>=10.0.0
# Text processing
unidecode>=1.3.8
beautifulsoup4>=4.12.0
# System monitoring
psutil>=6.0.0
# YouTube support — pinned for reproducible builds; bump per release. See #367.
yt-dlp==2026.3.17
# Lyrics support
lrclibapi>=0.3.1
# Audio fingerprinting for download verification
pyacoustid>=1.3.0
# WebSocket client for Hydrabase connection
websocket-client>=1.7.0
# Tidal download support
tidalapi>=0.7.6
# WebSocket server for real-time UI updates
flask-socketio>=5.3.0
gunicorn>=25.3.0
simple-websocket>=1.1.0