SergeantPanda
d86f56a5aa
fix: Update Docker Hub image tags to conditionally format based on event type
Build and Push Multi-Arch Docker Image / build-and-push (push) Has been cancelled
2026-03-23 20:11:40 -05:00
SergeantPanda
cf5f81af0f
Bug Fix: Fix CI Pipline attempting login to Docker Hub for PR's.
2026-03-23 18:02:39 -05:00
SergeantPanda
3e12be3ac0
Update Open Collective username in FUNDING.yml
Build and Push Multi-Arch Docker Image / build-and-push (push) Has been cancelled
2026-03-21 13:15:46 -05:00
SergeantPanda
a8b217e2fb
docs: Slight reorganization of the readme. Fix link on Open Collective.
2026-03-21 13:06:10 -05:00
dekzter
b5c13a00ce
added support section
Build and Push Multi-Arch Docker Image / build-and-push (push) Waiting to run
2026-03-20 20:32:08 -04:00
SergeantPanda
161150f0f8
changelog: Update changelog for 0.21.1
Base Image Build / prepare (push) Has been cancelled
CI Pipeline / prepare (push) Has been cancelled
Build and Push Multi-Arch Docker Image / build-and-push (push) Has been cancelled
Frontend Tests / test (push) Has been cancelled
Base Image Build / docker (amd64, ubuntu-24.04) (push) Has been cancelled
Base Image Build / docker (arm64, ubuntu-24.04-arm) (push) Has been cancelled
Base Image Build / create-manifest (push) Has been cancelled
CI Pipeline / docker (amd64, ubuntu-24.04) (push) Has been cancelled
CI Pipeline / docker (arm64, ubuntu-24.04-arm) (push) Has been cancelled
CI Pipeline / create-manifest (push) Has been cancelled
2026-03-17 21:41:44 -05:00
GitHub Actions
ac1de7bb5d
Release v0.21.1
2026-03-18 01:06:57 +00:00
SergeantPanda
9d27b5b4e6
Merge pull request #1114 from Dispatcharr/dev
...
Dispatcharr - v0.21.1
2026-03-17 20:05:35 -05:00
SergeantPanda
5a159c505e
Merge pull request #1115 from CodeBormen/fix/graceful-chown-external-mounts
...
Fix/graceful chown + external mounts
2026-03-17 19:42:50 -05:00
None
7e22172070
fix: remove PUID auto-detect
...
The auto-detect read PUID/PGID from /data/db ownership (UID 102 in pre-PUID images), causing all upgrading users to run as UID 102 instead of the expected UID 1000. This broke host-side access (SSH, WinSCP), made existing DATA_DIR files unwritable, and failed comskip on recordings created before the change.
2026-03-17 19:32:07 -05:00
SergeantPanda
8d20c76d54
changelog: Update changelog for backups fix.
2026-03-17 18:52:31 -05:00
SergeantPanda
1ded6dde4c
Merge branch 'dev' of https://github.com/Dispatcharr/Dispatcharr into dev
2026-03-17 18:41:34 -05:00
SergeantPanda
cbaedec905
Update GitHub Actions to use latest versions of checkout, Docker Buildx, and login actions
2026-03-17 18:41:27 -05:00
None
9e720f4fc7
fix: handle chown failures gracefully on external mounts
...
DATA_DIRS chown failures (NFS, SMB/CIFS, FUSE) crashed the container under set -e. The old image never chowned these directories, so users with external mounts had a working setup that broke on upgrade with zero config changes.
- Collect mkdir and chown failures per-directory instead of crashing
- Emit a single consolidated warning listing all affected directories with current ownership and remediation steps
- Container continues to start; Django reports at runtime if it cannot write to a specific directory
- Local volumes are unaffected: chown still runs and succeeds silently
2026-03-17 18:27:19 -05:00
SergeantPanda
d776e3c6dc
Merge pull request #1113 from CodeBormen/fix/missing-data-backups-ownership
...
fix: add /data/backups to init script DATA_DIRS
2026-03-17 17:56:49 -05:00
None
19d3f4258f
Add /data/backups to DATA_DIRS
...
Corrects issue with user ownership migration on previous installations with /data/backups in-use
2026-03-17 17:46:13 -05:00
SergeantPanda
08b2e92920
Update GitHub Actions to use latest versions of checkout, Docker Buildx, and login actions
Base Image Build / prepare (push) Waiting to run
Base Image Build / docker (amd64, ubuntu-24.04) (push) Blocked by required conditions
Base Image Build / docker (arm64, ubuntu-24.04-arm) (push) Blocked by required conditions
Base Image Build / create-manifest (push) Blocked by required conditions
CI Pipeline / prepare (push) Waiting to run
CI Pipeline / docker (amd64, ubuntu-24.04) (push) Blocked by required conditions
CI Pipeline / docker (arm64, ubuntu-24.04-arm) (push) Blocked by required conditions
CI Pipeline / create-manifest (push) Blocked by required conditions
Build and Push Multi-Arch Docker Image / build-and-push (push) Waiting to run
Frontend Tests / test (push) Waiting to run
2026-03-17 16:44:20 -05:00
GitHub Actions
50d90ab0ee
Release v0.21.0
Build and Push Multi-Arch Docker Image / build-and-push (push) Waiting to run
Frontend Tests / test (push) Waiting to run
2026-03-17 21:25:50 +00:00
SergeantPanda
cfdfc32736
Merge pull request #1112 from Dispatcharr/dev
...
Dispatcharr - v0.21.0
2026-03-17 16:25:14 -05:00
SergeantPanda
c0340c9250
changelog: Added missed issue for recent pr.
2026-03-17 14:39:18 -05:00
SergeantPanda
9654d3e293
changelog: Update changelog for highest channel number pr.
2026-03-17 14:32:59 -05:00
SergeantPanda
406267965a
Merge pull request #1047 from JCBird1012/auto-assign-next-available
...
fix: single stream channel modal; remove unused ChannelNumberingModal; add "Next Highest Channel" numbering mode
2026-03-17 13:05:14 -05:00
SergeantPanda
0fbeb16970
changelog: Added thanks for recent PR, removed security change that never hit main branch, moved security to the top to match previous versions of changelog.
2026-03-17 11:08:25 -05:00
SergeantPanda
ab7eb5b5d8
Merge pull request #1111 from CodeBormen/fix/1059-series-rules-corrupted-data
...
Fix/1059 series rules corrupted data
2026-03-17 10:54:40 -05:00
SergeantPanda
6b373c41cf
refactor: remove unused getNextHighestChannelNumber method and related variable
2026-03-17 09:57:53 -05:00
SergeantPanda
149ef17424
Update label for auto-assigning channel numbers after highest
2026-03-17 09:51:49 -05:00
SergeantPanda
b4281c83bb
Switch to backend logic instead of frontend. Use '-1' as 'highest' so not break the api.
2026-03-17 09:27:18 -05:00
Matt Grutza
b75fcf26de
Merge branch 'dev' into fix/1059-series-rules-corrupted-data
2026-03-16 18:51:25 -05:00
None
b7eb299aac
Update changelog
2026-03-16 18:50:24 -05:00
SergeantPanda
07863a181e
refactor: streamline channel numbering logic; consolidate loading states and variable names
2026-03-16 18:05:33 -05:00
SergeantPanda
d9dea82f40
docs: Add pronounciation to readme.
Build and Push Multi-Arch Docker Image / build-and-push (push) Waiting to run
2026-03-16 17:00:34 -05:00
None
8624436367
fix(frontend): validate series_rules as array in settings parse/save
...
- Add Array.isArray() guard in parseSettings for series_rules, matching the existing EPG ignore list pattern
- Include series_rules in arrayFields list in getChangedSettings to prevent stringification during settings round-trip
- Add 5 tests covering valid, corrupted, and missing series_rules data
2026-03-16 16:52:22 -05:00
SergeantPanda
e82ec87fc3
Merge branch 'dev' of https://github.com/Dispatcharr/Dispatcharr into dev
CI Pipeline / prepare (push) Has been cancelled
Build and Push Multi-Arch Docker Image / build-and-push (push) Has been cancelled
Frontend Tests / test (push) Has been cancelled
CI Pipeline / docker (amd64, ubuntu-24.04) (push) Has been cancelled
CI Pipeline / docker (arm64, ubuntu-24.04-arm) (push) Has been cancelled
CI Pipeline / create-manifest (push) Has been cancelled
2026-03-15 21:08:38 -05:00
SergeantPanda
6638ba4b77
changelog: Update changelog for proxy pr.
2026-03-15 21:08:31 -05:00
SergeantPanda
946f636837
Merge pull request #1105 from cmcpherson274/patch-1
...
Fix: audio loss during stream failover and ghost client accumulation
2026-03-15 21:04:16 -05:00
SergeantPanda
d4e52f70db
Merge branch 'dev' into pr/cmcpherson274/1105
2026-03-15 21:02:52 -05:00
SergeantPanda
92f98a24c7
fix: increase ghost client multiplier to improve client detection timing
2026-03-15 20:45:55 -05:00
SergeantPanda
7e07c9552d
changelog: Update changelog for ghost client pr.
2026-03-15 20:13:42 -05:00
SergeantPanda
cd0eba9654
Merge pull request #1098 from CodeBormen/fix/ghost-streams-stuck-initializing
...
fix: stuck channel states and ghost clients in TS proxy
2026-03-15 20:07:44 -05:00
None
55f0a49d68
fix: improve test coverage and add missing metadata constants
...
- Rewrite ghost client tests to call real ChannelStatus and ClientManager code paths instead of reimplementing detection logic in test helpers
- Rewrite initializing state tests to invoke StreamManager.run() so the real finally block executes under test
- Replace hardcoded state list tests with assertions against ChannelState.PRE_ACTIVE frozenset
- Add missing SOURCE_BITRATE and FFMPEG_BITRATE constants to ChannelMetadataField (referenced by channel_status.py but never defined, causing AttributeError on detailed stats)
2026-03-15 19:39:15 -05:00
SergeantPanda
2d2b3e45f4
fix: harden ghost client cleanup and PRE_ACTIVE state guard
...
- Change ChannelState.PRE_ACTIVE from list to frozenset (immutable,
O(1) membership tests, no risk of silent mutation)
- Add optional client_ids parameter to ClientManager.remove_ghost_clients()
so callers that have already fetched SMEMBERS can pass it through,
eliminating a redundant Redis round-trip
- Pass pre-fetched client_ids from get_basic_channel_info() into
remove_ghost_clients() to remove the duplicate SMEMBERS call
2026-03-15 19:08:38 -05:00
Jonathan Caicedo
d19c53b145
fix: single stream channel modal; remove unused ChannelNumberingModal, add 'after highest' channel numbering mode
2026-03-15 19:40:14 -04:00
SergeantPanda
159c2d0de7
Merge branch 'dev' of https://github.com/Dispatcharr/Dispatcharr into dev
2026-03-15 17:46:44 -05:00
SergeantPanda
d84580710b
changelog: Update changelog for uWSGI config PR.
2026-03-15 17:46:37 -05:00
SergeantPanda
cc5a0eb7f7
Merge pull request #929 from jcasimir/fix/uwsgi-gevent-segfault-clean
...
Fix uWSGI segfaults by disabling threads when using gevent
2026-03-15 17:45:24 -05:00
SergeantPanda
41ce381130
changelog: Update changelog for tests PR.
2026-03-15 17:28:00 -05:00
SergeantPanda
28b9de94dc
Merge branch 'dev' of https://github.com/Dispatcharr/Dispatcharr into dev
2026-03-15 17:00:00 -05:00
SergeantPanda
c44a3ad5f9
Bug Fix: Stream.last_seen and ChannelGroupM3UAccount.last_seen model defaults now use django.utils.timezone.now instead of datetime.datetime.now, eliminating spurious RuntimeWarning: DateTimeField received a naive datetime warnings emitted during test database creation and on new record creation when USE_TZ=True.
2026-03-15 16:59:51 -05:00
SergeantPanda
c4a8e01fb4
Merge pull request #1108 from nick4810/tests/frontend-unit-tests
...
Tests/frontend unit tests
2026-03-15 16:54:02 -05:00
SergeantPanda
e0ed2296b2
Merge pull request #1096 from Dispatcharr/xc-account-expiration-management
...
CI Pipeline / prepare (push) Waiting to run
CI Pipeline / docker (amd64, ubuntu-24.04) (push) Blocked by required conditions
CI Pipeline / docker (arm64, ubuntu-24.04-arm) (push) Blocked by required conditions
CI Pipeline / create-manifest (push) Blocked by required conditions
Build and Push Multi-Arch Docker Image / build-and-push (push) Waiting to run
Frontend Tests / test (push) Waiting to run
Enhancement: Account expiration tracking and notifications for M3U profiles
2026-03-15 16:42:33 -05:00