SergeantPanda
1d3cd5fd75
tests: Update floating video test.
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-28 18:14:25 -05:00
SergeantPanda
f00d1fe63c
Bug Fix/Enhancement:
...
- Web UI stream preview (`FloatingVideo`) was calling `mpegts.createPlayer()` with all `Config` options (e.g. `enableWorker`, `liveSync`, `headers`) merged into the first `MediaDataSource` argument. mpegts.js only reads `Config` from the optional second argument; unrecognised fields in the first are silently ignored. As a result all player configuration was effectively the library defaults — worker offloading was disabled, latency management had no effect, and the `Authorization: Bearer` header (required for user identification) was never sent. Fixed by splitting into the correct two-argument call. Both `liveBufferLatencyChasing` and `liveSync` have been disabled, eliminating playback-rate fluctuations that caused audible stuttering on live streams. SourceBuffer cleanup thresholds were also relaxed from 10s/5s to 120s/60s to prevent frequent SourceBuffer pauses.
- Web UI stream preview now sends an `Authorization: Bearer` header with each mpegts.js request, identifying the logged-in user. Live channel previews initiated from the web UI now appear on the Stats page with the correct username rather than as unknown user.
2026-03-28 18:04:11 -05:00
SergeantPanda
3cb0925357
tests: Add user store mock and additional icons for VodConnectionCard tests
2026-03-28 17:04:57 -05:00
SergeantPanda
38f5156ca6
Enhancement: Show username in VOD cards.
2026-03-28 16:46:06 -05:00
SergeantPanda
30246a4d49
changelog: Add change for VOD XC endpoint.
2026-03-28 16:28:47 -05:00
SergeantPanda
17b8e6587f
changelog: Move issue to correct location and formatted them for auto-closing.
2026-03-28 15:49:35 -05:00
SergeantPanda
7ece48bdf2
tests: Update frontend tests
2026-03-28 15:12:24 -05:00
SergeantPanda
dd97b642c7
Bug Fix: preserve original file mtime during HTML entity resolution to prevent infinite refresh loop
2026-03-28 14:21:37 -05:00
SergeantPanda
6f516c0074
Enhancement: CustomTable column layout now supports flexible (grow) columns alongside fixed-width ones:
...
- Column definitions accept a `grow` property (boolean or number) to opt into flex layout. A numeric value sets the flex-grow weight, allowing relative sizing between grow columns (e.g. `grow: 2` gives a column twice the share of spare space as `grow: 1`).
- `maxSize` is now respected on grow columns, capping how wide they expand via `maxWidth`.
- The wrapper's `minWidth` calculation now uses `minSize` (not TanStack's 150px default) for grow columns, preventing the table from overflowing its container when columns would otherwise be sized larger than available space.
2026-03-28 13:36:47 -05:00
SergeantPanda
5f4e066147
Enhancements:
...
- Connection cards on the Stats page now show the **username** of the connected user in a new User column (between IP Address and Connected). The username is resolved from the user store using the `user_id` stored in Redis client metadata; unauthenticated connections display "Anonymous". (Closes #766 )
- `ip_address` and `user_id` were not included in the client info returned by `get_detailed_channel_info()` despite being available in the Redis hash. Both fields are now extracted and returned. (Closes #586 )
2026-03-28 13:33:29 -05:00
SergeantPanda
49f6871ba8
changelog: Update formatting a bit.
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-27 16:36:34 -05:00
SergeantPanda
b9e2a878df
Merge pull request #1152 from Dispatcharr/donate-button
...
Enhancement: Donate button added to the sidebar footer
2026-03-27 15:16:58 -05:00
SergeantPanda
3ee925ca71
tests: add Heart icon and Tooltip mock to Sidebar tests
2026-03-27 15:14:04 -05:00
SergeantPanda
c29deeb007
Merge branch 'dev' into donate-button
2026-03-27 15:05:02 -05:00
SergeantPanda
456f9ef6e6
Merge pull request #1145 from Dispatcharr/user-priority-fixes
...
User stream limits
2026-03-27 14:18:38 -05:00
SergeantPanda
3064be8194
tests: Fix settings page test.
2026-03-27 14:15:20 -05:00
SergeantPanda
0827908b53
fix: lazy load UserLimitsForm and correct spelling in user limits section
2026-03-27 14:12:21 -05:00
SergeantPanda
110c8623ed
delete temp script used for debugging.
2026-03-27 13:59:50 -05:00
SergeantPanda
5f45d3e9ad
changelog: User stream limits
2026-03-27 13:55:16 -05:00
SergeantPanda
36ce5a8c71
changelog: Update changelog for base image changes.
2026-03-27 11:54:00 -05:00
SergeantPanda
9c9de12b19
chore: remove unnecessary python-is-python3, python3-pip and streamlink from Dockerfile dependencies
2026-03-27 11:49:28 -05:00
SergeantPanda
2253e18ef8
changelog: Update changelog for dependency upgrades
2026-03-27 11:04:37 -05:00
SergeantPanda
b20c42f25a
chore: update dependencies for celery, requests, torch, and sentence-transformers
2026-03-27 11:03:55 -05:00
SergeantPanda
7d8619f644
Security: Update npm dependencies to resolve frontend vulernabilities.
2026-03-27 09:30:01 -05:00
SergeantPanda
8e9a6285a4
Enhancement: Donate button added to the sidebar footer. A heart icon links to the project's Open Collective page, visible in both expanded and collapsed states. Hovering shows a "Support Dispatcharr" tooltip. The version string is also now clickable to copy it to the clipboard.
2026-03-26 21:16:18 -05:00
SergeantPanda
7964b2c2cb
fix: enhance stream termination logic to handle multiple connections on the same channel
2026-03-26 20:33:03 -05:00
SergeantPanda
7e6041286a
fix: update user limit settings key in migration and frontend form for consistency with other settings keys.
2026-03-26 20:16:16 -05:00
SergeantPanda
46d4063524
fix: change logging level from info to debug in user connection checks
2026-03-26 20:10:03 -05:00
SergeantPanda
aa6fb033d3
fix: update user stream limit checks to include media_id and rename user_limits_settings key
2026-03-26 20:02:54 -05:00
SergeantPanda
58befaa52b
fix: correct indentation in check_user_stream_limits function
2026-03-26 19:14:46 -05:00
SergeantPanda
b671a72707
fix: resolve decode_responses migration bugs and user-limit regressions
...
Fix a wave of bugs introduced by the user-priority branch's migration
from manual .decode('utf-8') calls to decode_responses=True on the
metadata Redis client:
core/utils.py
- Rewrite _init_client: fix SyntaxError at line 138, missing
redis_password/redis_user params, cls._client corruption when
decode_responses=False was requested, and dead retry backoff logic
apps/proxy/utils.py
- Fix get_user_limit_settings() → get_user_limits_settings() (2 sites)
- Fix VOD scan key vod_persistent_connections:* → vod_persistent_connection:*
- Fix undefined channel_id in VOD loop (use content_uuid from Redis hash)
- Remove leftover print(active_connections) debug statement
- Refactor manual cursor SCAN while-loops to scan_iter()
apps/channels/tasks.py
- Fix closure bug in _d(): md.get(key) → md.get(bkey) (was reading
the outer loop variable instead of the local bytes key)
apps/proxy/ts_proxy/server.py
- Replace stale b'init_time', b'total_bytes', b'state' byte-string
key lookups and .decode() calls with plain string equivalents
apps/proxy/ts_proxy/services/channel_service.py
- Fix ChannelMetadataField.STATE.encode() / .OWNER.encode() →
.STATE / .OWNER (pre-existing, broke under decoded client)
apps/proxy/ts_proxy/views.py
- Fix ChannelMetadataField.OWNER.encode("utf-8") → .OWNER
apps/proxy/ts_proxy/client_manager.py
- Fix cid.decode('utf-8') in remove_ghost_clients(): smembers()
already returns str with decode_responses=True
2026-03-26 18:41:42 -05:00
dekzter
90a600b48f
merged in dev
2026-03-26 12:17:43 -04:00
SergeantPanda
af54366d76
changelog: Update changelog for XML parsing fixes.
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
2026-03-26 10:15:24 -05:00
SergeantPanda
5095f8d5ce
Merge pull request #1099 from CodeBormen/fix/1095-epg-special-characters
...
fix: resolve HTML named entities in XMLTV files before parsing
2026-03-26 10:07:59 -05:00
dekzter
a19be96ced
fleshed out user limits and termination logic
2026-03-25 17:33:26 -04:00
SergeantPanda
cee94282f9
Merge pull request #1128 from CodeBormen/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
feat: add TLS connection support for Redis and PostgreSQL (#950 )
2026-03-24 18:56:57 -05:00
None
c005b1ac56
changelog: add TLS connection support for Redis and PostgreSQL ( #950 )
2026-03-24 18:25:15 -05:00
SergeantPanda
6d694c8475
Bug Fix: Sort max stream column by total of streams from all profiles.
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-24 13:41:46 -05:00
SergeantPanda
58f40ff276
Bug Fix: Fixed stale references to old guideutils location. Also change dockerfile to get clear error messages during failure.
2026-03-24 13:19:48 -05:00
SergeantPanda
ec876716c5
tests: Fix tests that use guide utils.
2026-03-24 13:08:45 -05:00
SergeantPanda
1246f75c6b
Enhancement: Toggling an M3U profile's active state now immediately updates the playlist store (including the playlists array), so the **Max Streams** total in the M3U table reflects the change without a page reload.
...
- M3U account form: **Max Streams** field changed from a plain text input to a number input with increment/decrement controls, consistent with other integer fields.
- M3U account form: removed unused `useMantineTheme` import and `theme` variable.
2026-03-24 13:03:19 -05:00
SergeantPanda
0ac8b21964
Enhancement: M3U table **Max Streams** column now reflects the combined limit across all active profiles. When a playlist has multiple active profiles, the column displays their summed total (or ∞ if any profile is unlimited) and a hover tooltip lists each profile's individual limit by name. ( Closes #816 )
2026-03-24 12:53:08 -05:00
SergeantPanda
99fe8c96a2
refactor: Move utility functions from pages/guideUtils.js to utils/guideUtils.js and update imports
2026-03-24 12:39:09 -05:00
SergeantPanda
b141b6214d
Merge branch 'main' of https://github.com/Dispatcharr/Dispatcharr into dev
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
2026-03-23 20:12:07 -05:00
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
516c2e478c
Conditionally render Connection Security panel based on deployment mode
2026-03-23 19:55:43 -05:00
SergeantPanda
9da6f7794c
fix: ensure PGID defaults to PUID when setting ownership for PostgreSQL SSL key (matching entrypoint.celery behavior.
2026-03-23 18:26:52 -05:00
SergeantPanda
cf56707e69
Merge branch 'main' of https://github.com/Dispatcharr/Dispatcharr into dev
2026-03-23 18:03:08 -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
3831d72d13
changelog: Update changelog for dvr recording pr.
2026-03-23 17:54:27 -05:00