Commit graph

74 commits

Author SHA1 Message Date
dekzter
bc72ea7310 merged in dev 2026-02-11 19:51:21 -05:00
SergeantPanda
1df802341d
Merge pull request #937 from CodeBormen:Feature/Support-External-Redis-Auth
feat: Add Redis authentication support for modular deployment
2026-02-09 17:29:38 -06:00
dekzter
24f812dc4d initial connect feature 2026-02-08 09:29:22 -05:00
SergeantPanda
e26c1908c5 Bug Fix: Automatic backups not enabled by default on new installations: Added backups app to INSTALLED_APPS and implemented automatic scheduler initialization in BackupsConfig.ready(). The backup scheduler now properly syncs the periodic task on startup, ensuring automatic daily backups are enabled and scheduled immediately on fresh database creation without requiring manual user intervention. 2026-02-04 16:56:11 -06:00
None
e217960500 feat: Add Redis authentication support for modular deployment
Add support for authentication when connecting to external Redis instances in modular deployment mode. This enables secure Redis deployments using either password-only authentication (Redis <6) or
username + password authentication (Redis 6+ ACL).

Changes:
- Add REDIS_PASSWORD and REDIS_USER environment variables
- Implement URL encoding for special characters in passwords
- Update all Redis connection points to support auth
- Add comprehensive documentation and examples to docker-compose.yml
- Maintains full backward compatibility (empty defaults = no auth)

All authentication mechanisms have been fully tested including pasword-only authentication, Redis 6+ ACL authentication with username + password, volume-mounted configuration files, and special character handling.

Existing deployments are not effected, authentication support is entirely opt-in using docker-compose.

Also, acknowledging the fact that the docker-compose file for modular deployments has been getting out of hand with auth support, the docker-compose.yml file was re-formatted for better visibility in configuration. This seemed like a better way to go than mandating a .env file.
2026-02-03 21:42:06 -06:00
SergeantPanda
b01eb9585c feat: add system notifications and update checks
Real-time notifications for system events and alerts
Per-user notification management and dismissal
Update check on startup and every 24 hours to notify users of available versions
Notification center UI component
Automatic cleanup of expired notifications
2026-02-03 09:24:02 -06:00
SergeantPanda
5364123745 - Swagger/OpenAPI Migration: Migrated from drf-yasg (OpenAPI 2.0) to drf-spectacular (OpenAPI 3.0) for API documentation. This provides:
- Native Bearer token authentication support in Swagger UI - users can now enter just the JWT token and the "Bearer " prefix is automatically added
  - Modern OpenAPI 3.0 specification compliance
  - Better auto-generation of request/response schemas
  - Improved documentation accuracy with serializer introspection
2026-01-27 13:33:33 -06:00
SergeantPanda
de31826137 refactor: externalize Redis and Celery configuration via environment variables
Replace hardcoded localhost:6379 values throughout codebase with environment-based configuration. Add REDIS_PORT support and allow REDIS_URL override for external Redis services. Configure Celery broker/result backend to use Redis settings with environment variable overrides.

Closes #762
2025-12-18 16:54:59 -06:00
SergeantPanda
4878e92f44
Merge pull request #488 from stlalpha/feature/automated-backups
Enhancement: Add automated configuration backups
2025-12-15 16:17:33 -06:00
dekzter
f3a901cb3a Security Fix - generate JWT on application init 2025-12-06 13:40:10 -05:00
SergeantPanda
f1320c9a5d Merge branch 'dev' of https://github.com/Dispatcharr/Dispatcharr into pr/stlalpha/488 2025-12-02 13:39:06 -06:00
Jim McBride
3eaa76174e Feature: Automated configuration backups with scheduling
- Create/Download/Upload/Restore database backups (PostgreSQL and SQLite)
- Configurable data directory backups (via settings.py)
- Scheduled backups (daily/weekly) via Celery Beat
- Retention policy (keep last N backups)
- Token-based auth for async task polling
- X-Accel-Redirect support for nginx file serving
- Comprehensive tests
2025-11-26 21:11:13 -06:00
SergeantPanda
afedce5cb2 Enhancement: Implement background profile refresh task with rate limiting to prevent provider bans during account profile updates. 2025-11-18 09:27:22 -06:00
SergeantPanda
ed065f718d Enhancement: Implement caching for proxy settings to improve performance and reduce database load. Also, ensure database connections are closed after use in both config and stream manager. 2025-10-14 13:44:28 -05:00
Dispatcharr
424a450654 DVR Features and bug fixes
Added ability to use custom comskip.ini
Added series recording without reliance on EPG
Fixed comskip bug
Fixed timezone mismatch when scheduling DVR recordings

No migrations completed yet
2025-09-18 10:23:16 -05:00
OkinawaBoss
3fb8e0ebd1
Merge pull request #363 from Dispatcharr/Plugins
Plugins
2025-09-08 09:11:19 -05:00
Dispatcharr
e9a11588c4 Init Plugins 2025-09-05 17:10:11 -05:00
SergeantPanda
870e77b137 Disable fetch-channel-statuses 2025-09-05 10:23:25 -05:00
SergeantPanda
d709d92936 Refactor channel stats fetching and enhance settings UI for better user experience 2025-09-05 09:42:52 -05:00
SergeantPanda
84aa631196 Initial backend commit for vod 2025-08-02 10:42:36 -05:00
SergeantPanda
c4a6b1469e Change to JSON settings 2025-06-13 14:36:08 -05:00
dekzter
9f96529707 merged in main 2025-06-03 17:49:24 -04:00
SergeantPanda
6ce387b0b0 Auto-scales Celery based on demand. Should lower overall memory and CPU usage while allowing for high cpu demand tasks to complete quickly.
Closes #111
2025-06-02 18:03:32 -05:00
dekzter
a96c5f0f5c merged in dev 2025-05-21 08:16:35 -04:00
SergeantPanda
eb223e1df2 Enable logging for core utils. 2025-05-19 09:53:52 -05:00
dekzter
74d58515d0 user management, user levels, user level channel access 2025-05-18 11:19:34 -04:00
SergeantPanda
1174e2e0c7 EPG processing enhancements. Celery memory management. 2025-05-17 16:42:37 -05:00
SergeantPanda
f18ca4de37 Initial rework of EPG processesing. 2025-05-16 19:26:06 -05:00
SergeantPanda
1aac0f8011 Separated beat schedules. Scan files now only runs every 20 seconds. 2025-05-15 12:12:41 -05:00
SergeantPanda
67aca64420 Properly set EV for all profiles so uWSGI daemons can see it. 2025-05-10 13:25:03 -05:00
SergeantPanda
d3615e1a66 Huge overhaul of logging. More standardized and we are now capturing logs from celery task and sening to console.
Also adds a new environmental variable: DISPATCHARR_LOG_LEVEL, log levels available: TRACE, DEBUG, INFO, WARNING, ERROR, CRITICAL
2025-05-10 09:29:06 -05:00
dekzter
5570562960 epg match run externally to keep memory usage low 2025-04-07 11:57:00 -04:00
dekzter
8807b442db reverted to uwsgi for now - gunicorn will need work to keep the proxy working 2025-04-06 16:40:00 -04:00
dekzter
354cd84c88 filesystem watch and process of m3u and epg 2025-04-06 15:58:55 -04:00
dekzter
ecc96f8b69 memory optimization, m3u processing, re-added group filtering before m3u ingestion 2025-04-06 11:36:16 -04:00
SergeantPanda
f565e1fade Refactor DEBUG setting in settings.py and optimize Dockerfile build process 2025-04-05 20:26:46 -05:00
dekzter
7351264e8a centralized and lazy-loaded redis client singleton, check for manage.py commands so we don't init proxyservers (redis connection), put manage commmands before starting uwsgi 2025-04-04 16:18:12 -04:00
dekzter
2e1b00782d Merge remote-tracking branch 'origin/dev' into epg-refactor 2025-03-31 11:13:22 -04:00
dekzter
6175d910f4 settings for django celery beat 2025-03-31 10:04:05 -04:00
SergeantPanda
dde9e96878 Update Redis key prefix for Celery task results 2025-03-28 11:03:36 -05:00
dekzter
cb013c0a0d merged in singular-redis branch 2025-03-22 09:58:48 -04:00
SergeantPanda
d622c96aba Improved connection handling for redis pubsub. 2025-03-22 08:48:39 -05:00
dekzter
8cdf9a40cf m3u modifications so streams are identified by hash, configurable, also streams now have channel_groups instead of a string for groups 2025-03-19 16:35:49 -04:00
dekzter
7a7cd0711d live stats dashboard 2025-03-17 12:42:58 -04:00
dekzter
9711d7ab34 modified database fields for consistency, removed custom_url from streams (no longer needed) 2025-03-16 09:07:10 -04:00
SergeantPanda
b300ee5bcf Merge branch 'mantine' of https://github.com/Dispatcharr/Dispatcharr into Proxy-Redis 2025-03-12 16:49:33 -05:00
dekzter
0433352ee2 static file changes 2025-03-11 19:20:17 -04:00
dekzter
e991211c9b full mantine refactor 2025-03-11 17:43:16 -04:00
SergeantPanda
f3b1636579 Merge branch 'sidebar' of https://github.com/Dispatcharr/Dispatcharr into Proxy-Redis 2025-03-10 16:23:27 -05:00
SergeantPanda
c83189dfcc Initial test switching to redis for buffer. Only 1 client connecting. 2025-03-09 12:25:36 -05:00