v1.0.0-beta.11: Fresh Baked & Ported 🍞
"Fresh Baked" because of the massive new content expansion. "Ported" because the development environment has successfully migrated to a new, more robust home.
This release combines the unreleased features of Beta 10 with the stability fixes of Beta 11. It brings a significant expansion to the site index (now 149 verified sources), major reliability improvements like retry queues and webhook notifications, and a full upgrade to Python 3.12.
🚀 Highlights
- Massive Content Expansion: We have grown from 100 to 149 verified sites, adding depth in Balkan, Middle Eastern, African, and South American cuisines.
- Smart Deduplication: The new
SYNC_LIBRARYfeature pre-fetches your existing recipe URLs into memory at startup. This drastically reduces API calls and ensures zero duplicates are imported. - Fail-Fast Checks: The dredger now verifies connectivity to your Mealie/Tandoor instance immediately upon startup, preventing wasted cycles if credentials or IPs are misconfigured.
📋 Full Changelog
Added - Content
- Massive Site List Expansion: Now supporting 149 verified food blogs (up from 100), with new granular categories for Balkan, Middle Eastern, African, and South American cuisine.
- Smart Organization:
sites.jsonis now fully categorized by region/diet with clear headers.
Added - Reliability & Features
- Retry Queue Processing: Automatically retries transient failures (timeouts, 500 errors) from previous runs to maximize success rates.
- Webhook Notifications: Get notified via Discord/Slack/Gotify when a dredge cycle completes (set
NOTIFICATION_WEBHOOK_URL). - Startup Connectivity Check: Fast-fail logic verifies Mealie/Tandoor API connection immediately on startup.
- Library Sync: New
SYNC_LIBRARYoption to pre-fetch existing recipes to local memory, drastically reducing API calls for large libraries. - Language Filtering: Filter recipes by language (e.g.
en,fr,de) usingLANGUAGE_FILTERenvironment variable.
Changed
- Lightweight Core:
dredger.pyfallback list reduced to 10 major sites to keep the script clean; full power is insites.json. - Python 3.12: Docker image upgraded to Python 3.12 slim-bookworm for better performance and security.
- Refactored Codebase: Configuration logic moved to
config.pyfor better separation of concerns.
📦 How to Update
Docker Compose:
docker compose pull
docker compose up -dManual/Bare Metal:
git pull
source venv/bin/activate
pip install -r requirements.txt
python3 dredger.py