Dispatcharr/apps/channels/migrations
SergeantPanda d33d047a94 Enhancement: - Mature content filtering support:
- Added `is_adult` boolean field to both Stream and Channel models with database indexing for efficient filtering and sorting
  - Automatically populated during M3U/XC refresh operations by extracting `is_adult` value from provider data
  - Type-safe conversion supporting both integer (0/1) and string ("0"/"1") formats from different providers
  - UI controls in channel edit form (Switch with tooltip) and bulk edit form (Select dropdown) for easy management
  - XtreamCodes API support with proper integer formatting (0/1) in live stream responses
  - Automatic propagation from streams to channels during both single and bulk channel creation operations
  - Included in serializers for full API support
  - User-level content filtering: Non-admin users can opt to hide mature content channels across all interfaces (web UI, M3U playlists, EPG data, XtreamCodes API) via "Hide Mature Content" toggle in user settings (stored in custom_properties, admin users always see all content)
2026-01-17 15:00:28 -06:00
..
0001_initial.py new migrations 2025-03-05 17:18:04 -05:00
0002_rename_channel_name_channel_name_and_more.py modified database fields for consistency, removed custom_url from streams (no longer needed) 2025-03-16 09:07:10 -04:00
0003_channel_uuid.py updated channel with uuid 2025-03-16 09:46:07 -04:00
0004_stream_is_custom.py custom streams now work 2025-03-17 18:38:37 -04:00
0005_stream_channel_group_stream_last_seen_and_more.py 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
0006_migrate_stream_groups.py 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
0007_remove_stream_group_name.py 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
0008_stream_stream_hash.py Refactored m3u refresh, optimized it, added progress notification on the frontend 2025-03-20 16:55:10 -04:00
0009_remove_channel_tvg_name_channel_epg_data.py epg refactor, new relations and matching 2025-03-26 13:28:03 -04:00
0010_stream_custom_properties.py logos, channel numbers, websocket regex test so we can properly test against python regex and not javascript 2025-04-02 16:27:28 -04:00
0011_logo_remove_channel_logo_file_and_more.py logos, channel numbers, websocket regex test so we can properly test against python regex and not javascript 2025-04-02 16:27:28 -04:00
0012_channelprofile_channelprofilemembership.py fully supported channel profiles 2025-04-03 08:59:06 -04:00
0013_alter_logo_url.py updated logo url field 2025-04-04 11:24:31 -04:00
0014_recording.py first run at recordings, among other things 2025-04-05 18:59:15 -04:00
0015_recording_custom_properties.py forgot to commit migration 2025-04-07 15:02:01 -04:00
0016_channelstream_unique_channel_stream.py more table bug fixes, query optimizations, re-added channel expansion stream table with reworked drag-and-drop 2025-04-19 08:37:43 -04:00
0017_alter_channelgroup_name.py hopefully finalizing table rewrite 2025-04-23 11:02:00 -04:00
0018_channelgroupm3uaccount_custom_properties_and_more.py removed db index here, I don't think it's needed 2025-04-27 10:54:39 -04:00
0019_channel_tvc_guide_stationid.py Add support for Channels DVR tvc-guide-stationid 2025-05-03 19:24:51 -05:00
0020_alter_channel_channel_number.py Fixed migrations. 2025-05-15 14:38:28 -05:00
0021_channel_user_level.py user management, user levels, user level channel access 2025-05-18 11:19:34 -04:00
0022_channel_auto_created_channel_auto_created_by_and_more.py Combined migrations. 2025-07-13 18:09:30 -05:00
0023_stream_stream_stats_stream_stream_stats_updated_at.py Save stream stats to database. 2025-07-28 21:40:29 -05:00
0024_alter_channelgroupm3uaccount_channel_group.py added vod category filtering 2025-08-22 16:59:00 -04:00
0025_alter_channelgroupm3uaccount_custom_properties_and_more.py Convert custom_properties to jsonb in the backend. 2025-09-02 09:41:51 -05:00
0026_recurringrecordingrule.py DVR Features and bug fixes 2025-09-18 10:23:16 -05:00
0027_recurringrecordingrule_end_date_and_more.py Time Zones 2025-10-06 07:46:23 -05:00
0028_channel_created_at_channel_updated_at.py Enhancement: Properly track channel creation time and channel update times in the database. XC Get Live streams will now use this for the added field. 2025-10-06 18:07:51 -05:00
0029_backfill_custom_stream_hashes.py Bug fix: Unable to preview custom streams. 2025-10-18 15:52:48 -05:00
0030_alter_stream_url.py Enhancement: Increase maximum URL length for Stream model to 4096 characters (from 2000) and add validation for URL length in processing tasks. 2025-10-28 15:02:36 -05:00
0031_channelgroupm3uaccount_is_stale_and_more.py Enhancement: Stale status indicators for streams and groups: Added is_stale field to both Stream and ChannelGroupM3UAccount models to track items in their grace period (seen in previous refresh but not current). 2026-01-09 13:53:01 -06:00
0032_channel_is_adult_stream_is_adult.py Enhancement: - Mature content filtering support: 2026-01-17 15:00:28 -06:00
__init__.py Initial commit 2025-02-18 11:14:09 -06:00