None
4a4df14950
Add column visibility toggle and Source Info column to StreamsTable
...
- Add three-dot menu for toggling column visibility (Name, Group, M3U, TVG-ID, Source Info)
- Add Source Info column showing stream resolution and codec with detailed tooltip
- Column visibility persists to localStorage with proper migration handling for existing users
- Default hidden columns: TVG-ID, Source Info
- Auto-refresh table data when video preview closes to show updated stream stats
- Fix state spreading bug in CustomTable/index.jsx (was spreading options.state instead of state)
I think the people are gonna like this one!
2026-01-30 23:37:47 -06:00
None
f8ec970561
Add TVG-ID column with filter and sort to Streams table
...
Changes:
- frontend/src/components/tables/StreamsTable.jsx
Added TVG-ID column to streams table
Added search filter input in column header
Added sort button for ascending/descending order
Column follows same pattern as Name, Group, and M3U columns
- apps/channels/api_views.py
Added TVG-ID to filterable fields
Added TVG-ID to sortable fields
Enables backend support for search and sorting
Users can now view, search, and sort streams by their TVG-ID directly in the Streams table. Fulfills #866
2026-01-30 23:37:39 -06:00
SergeantPanda
bdcc865b9d
Bug Fix: Fixed NumPy baseline detection in Docker entrypoint. Now properly detects when NumPy crashes on import due to CPU baseline incompatibility and installs legacy NumPy version. Previously, if NumPy failed to import, the script would skip legacy installation assuming it was already compatible.
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
Base Image Build / prepare (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
2026-01-30 16:35:56 -06:00
SergeantPanda
fca50e1570
changelog: Update changelog for UV PR.
2026-01-30 15:40:33 -06:00
SergeantPanda
45da11eb7b
Merge pull request #885 from tobimichael96/main
...
Refactor: Migrate to UV
2026-01-30 13:49:28 -06:00
SergeantPanda
256d19a2cc
Move legacy numpy install to after init-dev. UV replaces.
2026-01-30 12:45:11 -06:00
SergeantPanda
68879ea933
Merge branch 'dev' of https://github.com/Dispatcharr/Dispatcharr into pr/tobimichael96/885
2026-01-30 12:37:07 -06:00
SergeantPanda
a3ed1d9628
Refactor for uv transition.
2026-01-30 12:12:42 -06:00
SergeantPanda
71e117a850
Remove uv.lock and add to gitignore. This gets generated automatically during build anyway and would add confusion to users not using our container.
2026-01-29 17:24:41 -06:00
SergeantPanda
29c0a6e524
fix: update dependencies in pyproject.toml for compatibility
2026-01-29 17:02:02 -06:00
SergeantPanda
3a959c2743
Fixed pip download (uv doesn't have an equivalent)
2026-01-29 16:15:04 -06:00
SergeantPanda
573b7d12ab
changelog: Update changelog for EPG Channel ID xml escaping.
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) Has been cancelled
2026-01-29 13:26:16 -06:00
SergeantPanda
efec46ea96
Merge pull request #908 from CodeBormen:Fix/765-&-in-channel-TVG-ID-causes-Jellyfin-to-fail-import
...
fix/765: Escape XML special characters in EPG channel IDs
2026-01-29 13:17:05 -06:00
SergeantPanda
5f4e645a48
changelog: Update changelog for frontend tests/refactoring PR.
2026-01-29 13:12:08 -06:00
SergeantPanda
09a83ca7bb
Merge pull request #905 from nick4810:tests/frontend-unit-tests
...
Tests/frontend unit tests
2026-01-29 13:09:24 -06:00
None
37a2a7b52b
fix: Escape XML special characters in EPG channel IDs
...
Fixed XML parsing errors in EPG output when channel IDs contain special
characters.
Changes:
- Added html.escape() to apps/output/views.py where
channel_id is used in XML attributes
- Added unit tests in apps/output/tests.py to validate XML
escaping for &, <, >, and " characters
2026-01-28 20:15:03 -06:00
Nick Sandstrom
c8430760c4
Added tests after sync
2026-01-28 13:15:26 -08:00
Nick Sandstrom
04e2886ba5
Updated tests after sync
2026-01-27 16:09:01 -08:00
Nick Sandstrom
216e582a91
Merge remote-tracking branch 'upstream/dev' into test/component-cleanup
2026-01-27 13:43:11 -08:00
Nick Sandstrom
525ae60157
Removed functionality not implemented
2026-01-27 13:41:50 -08:00
Nick Sandstrom
cf1625fab9
Slight refactoring
2026-01-27 13:41:25 -08:00
Nick Sandstrom
bd4c9e1d95
Added unit tests
2026-01-27 13:39:04 -08:00
SergeantPanda
5cb0b7dd3b
Add pytz to requirements. Was included as a dependency of drf-yasg before.
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
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-01-27 14:52:12 -06:00
SergeantPanda
bd1e0e8f07
Bug fix: Admin URL Conflict with XC Streams: Updated nginx configuration to only redirect exact /admin and /admin/ paths to login in production, preventing interference with stream URLs that use "admin" as a username (e.g., /admin/password/stream_id now properly routes to stream handling instead of being redirected).
2026-01-27 14:36:57 -06:00
SergeantPanda
43f08c418d
Merge pull request #901 from Dispatcharr:drf-spectacular
...
Migrate API documentation from drf-yasg to drf-spectacular
2026-01-27 14:08:33 -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
8616933ad7
Replace drf-yasg pip with drf-spectactular
2026-01-27 13:17:59 -06:00
GitHub Actions
ddbda17ae4
Release v0.18.1
2026-01-27 17:06:41 +00:00
SergeantPanda
b55ed77516
Downgrade version from 0.18.1 to 0.18.0
2026-01-27 11:05:52 -06:00
SergeantPanda
967bb4d7be
Merge pull request #899 from Dispatcharr/dev
...
Update Series Rules API Swagger Documentation to include required ite…
2026-01-27 11:05:25 -06:00
SergeantPanda
e21a0217b8
Merge branch 'main' into dev
2026-01-27 11:05:18 -06:00
GitHub Actions
39ed48e0e5
Release v0.18.1
2026-01-27 16:57:57 +00:00
SergeantPanda
2abe07fe1c
Update Series Rules API Swagger Documentation to include required items parameter for TYPE_ARRAY schemas
2026-01-27 10:56:04 -06:00
GitHub Actions
b5fedc1a6c
Release v0.18.0
2026-01-27 16:44:10 +00:00
SergeantPanda
ed4fabd773
Downgrade version from 0.18.0 to 0.17.0
2026-01-27 10:41:28 -06:00
SergeantPanda
abdb9f53d6
Merge pull request #898 from Dispatcharr/dev
...
Docs: Added comprehensive Swagger/OpenAPI documentation for all serie…
2026-01-27 10:40:43 -06:00
GitHub Actions
9026ece87a
Release v0.18.0
2026-01-27 16:38:36 +00:00
SergeantPanda
a505138e1a
Merge pull request #897 from Dispatcharr/dev
...
Dispatcharr - v0.18.0
2026-01-27 10:38:06 -06:00
SergeantPanda
497bb819b9
Docs: Added comprehensive Swagger/OpenAPI documentation for all series-rules endpoints
2026-01-27 09:50:27 -06:00
SergeantPanda
76c895f613
Security: Fixed moderate severity Prototype Pollution vulnerability in Lodash (_.unset and _.omit functions) See [GHSA-xxjr-mmjv-4gpg]( https://github.com/advisories/GHSA-xxjr-mmjv-4gpg ) for details.
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) Has been cancelled
2026-01-26 17:37:50 -06:00
SergeantPanda
e2a915f10b
Perf: lazy load editable cells on focus, not on unlock. Also don't wait for all channels to load before logging in.
2026-01-26 16:19:07 -06:00
SergeantPanda
716dc25c52
Enhancement: Prevent duplicate fetch requests in ChannelsTable and StreamsTable by tracking last fetch parameters and in-progress status
2026-01-25 21:14:44 -06:00
SergeantPanda
e0829719cd
Merge branch 'dev' of https://github.com/Dispatcharr/Dispatcharr into dev
2026-01-25 20:56:48 -06:00
SergeantPanda
9440bbe2ab
Performance: Removed unnecessary double wait that was causing fetching of channel data to not run in parallel.
2026-01-25 20:56:41 -06:00
SergeantPanda
596d4adb5b
Merge pull request #891 from Dispatcharr/Data-Loading-Refactor
...
Data loading and initialization refactor: Major performance improveme…
2026-01-25 19:48:38 -06:00
SergeantPanda
e22e003be9
Data loading and initialization refactor: Major performance improvement reducing initial page load time by eliminating duplicate API requests caused by race conditions between authentication flow and route rendering:
...
- Fixed authentication race condition where `isAuthenticated` was set before data loading completed, causing routes to render and tables to mount prematurely
- Added `isInitialized` flag to delay route rendering until after all initialization data is loaded via `initData()`
- Consolidated version and environment settings fetching into centralized settings store with caching to prevent redundant calls
- Implemented stale fetch prevention in ChannelsTable and StreamsTable using fetch version tracking to ignore outdated responses
- Fixed filter handling in tables to use `debouncedFilters` consistently, preventing unnecessary refetches
- Added initialization guards using refs to prevent double-execution of auth and superuser checks during React StrictMode's intentional double-rendering in development
- Removed duplicate version/environment fetch calls from Sidebar, LoginForm, and SuperuserForm by using centralized store
2026-01-25 19:46:34 -06:00
SergeantPanda
655760f652
When moving a channel down (higher number) don't increase channel numbers, decrease.
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-01-23 18:10:16 -06:00
SergeantPanda
22ecee4f85
Bug Fix: Fix No EPG filter on channels table.
2026-01-23 17:56:21 -06:00
SergeantPanda
e3122b1a1b
Bug Fix: Fix reordering during drag and drop.
2026-01-23 17:31:46 -06:00
SergeantPanda
037b6e62e3
Merge pull request #886 from Dispatcharr/dynamic-tables
...
Editable Channel Table
2026-01-23 16:55:40 -06:00