Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
41 changes: 26 additions & 15 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,22 +6,30 @@ This project follows [Semantic Versioning](https://semver.org/).

---

## v4.2.1 - 2025-11-10
## v4.3.0 - 2025-11-14

### Added
- Added horizontal scroll/refresh as time moves forward
- Added API dynamic guide timing refresh
- New mobile UI assets including mobile.css, mobile-header.css, mobile-popup.css, and mobile-submenu.css to improve layout and usability on mobile devices.
- New mobile-related JavaScript files including mobile-nav.js, mobile-scroll-fix.js, and mobile-player-adapt.js.
- Added tuner management enhancements through the new tuner-settings.js script.
- New templates added: _header.html, about.html, change_tuner.html, manage_users.html, and logs.html to support expanded UI functionality.

### Changed
- Updated app.py to support the expanded template set, updated tuner handling, and new mobile behavior.
- Updated bump_version.py and bump_version.sh for compatibility with the current file layout and new release processes.
- Updated installation scripts: retroiptv_linux.sh, retroiptv_rpi.sh, retroiptv_windows.bat, and retroiptv_windows.ps1 to align with the new release structure.

---

## [Unreleased]
## v4.2.1 - 2025-11-10

- Planned: add `.m3u8` tuner support.
- Planned: move logs to SQLite DB.
- Planned: log filtering and pagination.
### Added
- Added horizontal scroll/refresh as time moves forward
- Added API dynamic guide timing refresh

---


## v4.2.0 - 2025-11-06
This version introduces mobile responsiveness, a new theme, refinements to auto-scroll, and backend API structures.

Expand All @@ -40,6 +48,7 @@ This version introduces mobile responsiveness, a new theme, refinements to auto-
- Resolved layout inconsistencies across themes and display sizes.
- General code cleanup and alignment for CI/CD consistency.

---

## v4.1.0 - 2025-10-25
### New Features
Expand Down Expand Up @@ -71,6 +80,8 @@ This version introduces mobile responsiveness, a new theme, refinements to auto-
- Improved guide performance and browser compatibility with the new auto-scroll implementation.
- Minor visual and layout corrections across settings and guide pages.

---

## v4.0.0 — 2025-10-19
**Status:** Public Release (Feature Complete)

Expand Down Expand Up @@ -100,6 +111,8 @@ This version introduces mobile responsiveness, a new theme, refinements to auto-
- PlutoTV / custom tuner aggregation features
- Enhanced guide refresh logic for long-running sessions

---

## v3.3.0 - 2025-10-15
### Added

Expand All @@ -118,7 +131,6 @@ This version introduces mobile responsiveness, a new theme, refinements to auto-

---


## [v3.2.0] - 2025-10-11
### Added
- **Containerization & TrueNAS Deployment Support**
Expand All @@ -137,6 +149,7 @@ This version introduces mobile responsiveness, a new theme, refinements to auto-
### Fixed
- Corrected GHCR tag formatting for TrueNAS (eliminated `:latest:latest` errors).
- Fixed workflow permissions with explicit `packages: write` and PAT authentication.

---

## v3.1.0 - 2025-10-09
Expand Down Expand Up @@ -188,10 +201,8 @@ This version introduces mobile responsiveness, a new theme, refinements to auto-
- Prevented guide from displaying outdated EPG after tuner change.
- Corrected case where missing XML data produced empty grid.


---


## [3.0.0] - 2025-10-03
### Added
- **Windows Support**:
Expand Down Expand Up @@ -220,6 +231,8 @@ This version introduces mobile responsiveness, a new theme, refinements to auto-
- Consistent logging of user agreement and installer actions.
- Ensured firewall rule removal on Windows during uninstall.

---

## [2.3.2] - 2025-09-26
### Added
- Introduced unified **Themes submenu** (Light, Dark, AOL/CompuServe, TV Guide Magazine) across all admin and user pages.
Expand All @@ -238,10 +251,8 @@ This version introduces mobile responsiveness, a new theme, refinements to auto-
- Theme persistence issues: selected theme now applies instantly and consistently on every page.
- AOL and Magazine themes now update **immediately** on About and other pages (previously only visible after navigating away).


---


## v2.3.1 - 2025-09-26

### Added
Expand Down Expand Up @@ -295,9 +306,9 @@ This version introduces mobile responsiveness, a new theme, refinements to auto-
- Fixed alignment of tuner forms with consistent dropdowns and validation.
- Ensured flash messages and logging work consistently across all tuner operations.

---


## [v2.0.0] – 2025-09-24
## [v2.0.0] 2025-09-24
### Added
- Tuner URL validation: new validate_tuner_url() function checks XML/M3U inputs before saving.
- Detects invalid/empty URLs, unresolvable hostnames, and distinguishes between public vs. private IPs.
Expand Down Expand Up @@ -335,7 +346,7 @@ This version introduces mobile responsiveness, a new theme, refinements to auto-

---

## [v1.x.x] – 2025-09-01 → 2025-09-23
## [v1.x.x] 2025-09-01 - 2025-09-23
### Added
- Initial IPTV Flask application with:
- User authentication (login/logout, password change).
Expand Down
7 changes: 3 additions & 4 deletions INSTALL.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# Installation Guide

**Version:** v4.2.1
**Last Updated:** 2025-10-25
**Version:** v4.3.0
**Last Updated:** 2025-11-14

---

Expand All @@ -20,7 +20,6 @@

## 🐳 Quick Docker Run

The fastest way to launch **RetroIPTVGuide v3.2.0**:

```bash
docker pull ghcr.io/thehack904/retroiptvguide:latest
Expand Down Expand Up @@ -110,7 +109,7 @@ sudo retroiptv_rpi.sh update
```

### 🪟 Windows
**Alignment with Linux/Pi currently on track for v4.0.1 release**

```powershell
git fetch --all ; git reset --hard origin/main ; Restart-Service RetroIPTVGuide
```
Expand Down
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
# 📺 RetroIPTVGuide v4.2.1
# 📺 RetroIPTVGuide vv4.3.0

<p align="center">
<a href="https://github.com/thehack904/RetroIPTVGuide">
<img src="https://img.shields.io/badge/version-v4.2.1-blue?style=for-the-badge" alt="Version">
<img src="https://img.shields.io/badge/version-vv4.3.0-blue?style=for-the-badge" alt="Version">
</a>
<a href="https://github.com/thehack904/RetroIPTVGuide/pkgs/container/retroiptvguide">
<img src="https://img.shields.io/badge/GHCR-ghcr.io/thehack904/retroiptvguide-green?style=for-the-badge&logo=docker" alt="GHCR">
Expand Down
90 changes: 40 additions & 50 deletions ROADMAP.md
Original file line number Diff line number Diff line change
@@ -1,130 +1,120 @@
# 📌 RetroIPTVGuide — Roadmap

This document tracks **planned upgrades** and ideas for improving the IPTV Flask server.
These are **not yet implemented**, but provide a development path for future releases.
These are **not yet implemented**, partially implemented, or completed in previous releases.

---
# Current Version: **v4.2.1 (2025-11-10)**
This version adds horizontal scroll/refresh as time moves forward, API dynamic guide timing refresh
# Current Version: **v4.3.0 (2025-11-14)**

## 🔮 Feature Upgrades

### 1. Tuner Management
- [x] Add ability to **add/remove tuners** from the UI (v2.3.0).
- [x] Add ability to rename tuners via the UI (v2.3.0).
- [ ] Support for **.m3u8 single-channel playlists** as tuner sources (planned v3.2.0).
- [ ] Support for **.m3u8 single-channel playlists** as tuner sources.
- [x] Validate tuner URLs (ping/check format before saving) (v2.0.0).
- [ ] Optional auto-refresh of tuner lineup on a schedule.
- [ ] Add per-user tuner assignment and default tuner preferences. *(v4.3.x planned)*
- [ ] Introduce combined tuner builder (custom tuner aggregation). *(v5.x.x planned)*
- [x] Optional auto-refresh of tuner lineup on a schedule. *(v4.3.0)*
- [ ] Add per-user tuner assignment and default tuner preferences.
- [ ] Introduce combined tuner builder (custom tuner aggregation).

---

### 2. Logging & Monitoring
- [ ] Move logs from flat file (`activity.log`) into **SQLite DB** for better querying.
- [ ] Add filtering and pagination in logs view.
- [ ] Add system health checks (tuner reachability, XMLTV freshness).
- [x] **Admin log management**: clear logs + file size indicator (v2.3.1).
- [x] Admin log management: clear logs + size indicator (v2.3.1).
- [x] Post-install HTTP service verification in Pi installer (v3.1.0).
- [x] Unified “Refresh Guide” scheduler. *(v4.2.0)*
- [x] Unified “Refresh Guide” scheduler. (v4.2.0)

---

### 3. Guide & Playback
- [x] **Auto-Scroll feature** added for the Live Guide (v4.1.0).
- Uses `requestAnimationFrame` for smooth scroll with fallback watchdog.
- Deterministic looping and localStorage preference tracking.
- [x] Auto-Scroll feature added for the Live Guide (v4.1.0).
- [x] Improved auto-scroll performance and modular handling (v4.2.0).
- [x] Added responsive layout for mobile devices (v4.2.0).
- [ ] Add search/filter box to guide.
- [ ] Add ability to set favorites.
- [x] Fallback message for missing EPG info (v3.0.1).
- [ ] Add reminders/notifications for upcoming programs.
- [ ] Add EPG caching for faster guide reloads. *(v5.x.x planned)*
- [ ] Add EPG caching for faster guide reloads.

---

### 4. User Management
- [x] Add **manage_users.html** for integrated user control panel. *(v4.0.0)*
- [ ] Role-based access control (admin/user/read-only).
- [x] Add manage_users.html (v4.0.0)
- [-] Role-based access control (basic admin-only gates exist, no RBAC roles).
- [ ] Add email or 2FA support for login.
- [ ] Show last login time in admin panel.
- [ ] User role/channel restrictions. *(v5.x.x planned)*
- [ ] User role/channel restrictions.

---

### 5. UI/UX Improvements
- [x] Unified theming across all templates (v2.3.2).
- [x] Android / Fire / Google TV optimized. *(v4.0.0)*
- [x] Consolidated UI templates (`guide.html`, `login.html`, etc.). *(v4.0.0)*
- [x] **Refactored UI templates into shared `base.html` and `_header.html` (v4.1.0)**.
- [x] **Modular CSS and JS added (v4.1.0)** – per-page styling and script loading.
- [x] Android / Fire / Google TV optimized (v4.0.0).
- [x] Consolidated UI templates (`guide.html`, `login.html`, etc.). (v4.0.0)
- [x] Refactored UI templates into shared `base.html` and `_header.html` (v4.1.0).
- [x] Modular CSS and JS added (v4.1.0).
- [x] Introduced new JS modules: `auto-scroll.js`, `tuner-settings.js`.
- [x] **Mobile responsive layout and navigation (v4.2.0)**.
- [x] Mobile responsive layout and navigation (v4.2.0).
- [ ] Add dark/light theme auto-detect.
- [ ] Frozen header timeline to prevent scrolling with channel listing.
- [x] Frozen header timeline to prevent scrolling with channel listing (v4.3.0).
- [x] About page under Settings menu (v2.3.1).
- [x] Added new mobile-specific CSS and JS (v4.3.0).
- [x] Added new templates: change_tuner.html, manage_users.html, logs.html. (v4.3.0)

---

### 6. Cross-Platform
- [x] Unified Linux, Windows, and Raspberry Pi installers. *(v4.0.0)*
- [x] Windows update/uninstall parity implemented. *(v4.1.0)*
- [x] Unified Linux, Windows, and Raspberry Pi installers. (v4.0.0)
- [x] Windows update/uninstall parity implemented. (v4.1.0)
- [ ] Create MacOS install/executable.
- [x] Validate/test installers on all Windows environments.
- [ ] Explore TrueNAS SCALE App Catalog certification. *(v5.x.x planned)*
- [ ] Explore TrueNAS SCALE App Catalog certification.

---

### 7. New Features
- [ ] Add auto-play stream on login (ErsatzTV integration).
- [ ] Default auto-play source selection.
- [ ] Begin integration path for **PlutoTV / external IPTV services**. *(v5.x.x)*
- [-] Add auto-play stream on login. *(partial JS scaffolding in tuner-settings.js)*
- [-] Default auto-play source selection. *(partial JS only, not wired to UI)*
- [ ] Begin integration path for PlutoTV / external IPTV services.

---

### 8. Planned Enhancements
- [ ] Add safety checks in `add_tuner()` (duplicate prevention + URL validation).
- [ ] Add safety checks in add_tuner() (duplicate prevention + URL validation).
- [x] GPU verification after `raspi-config` (v3.1.0).
- [x] Suppress `rfkill` Wi-Fi message during GPU config (v3.1.0).
- [x] Adaptive HTTP check loop (v3.1.0).
- [x] **Project structure and documentation reorganized** *(v4.0.0–4.2.0)*
- [x] Project structure and documentation reorganized (v4.0.0–4.2.0).

---

## ⚙️ Technical Improvements
- [x] Add uninstall.sh (v2.3.0).
- [ ] Validate/test uninstall script fully on Windows.
- [ ] Add HTTPS + optional token-based authentication. *(v4.5.x)*
- [x] Refactor tuner handling for unified DB. *(v4.0.0)*
- [x] **Updated bump_version and installer scripts to auto-track new version (v4.1.0)**
- [ ] Add HTTPS + optional token-based authentication.
- [x] Refactor tuner handling for unified DB. (v4.0.0)
- [x] Updated bump_version and installer scripts for new structure. (v4.3.0)
- [x] Containerize app (Dockerfile + Compose).
- [ ] Add migrations for DB schema changes.
- [ ] CI/CD automation for official builds. *(v5.x.x)*
- [ ] Add test suite for tuner parsing, authentication, and logging.
- [ ] CI/CD automation for official builds.
- [-] Add test suite for tuner parsing, authentication, and logging. *(placeholder file only)*

---

## 🍓 Installer Enhancements
- [x] Unified installer architecture. *(v4.0.0)*
- [x] Windows update/uninstall parity complete. *(v4.1.0)*
- [x] Unified installer architecture. (v4.0.0)
- [x] Windows update/uninstall parity complete. (v4.1.0)
- [ ] Add kiosk/headless mode selector.
- [ ] Add `--mode kiosk` flag for non-interactive installs.
- [ ] Validate update/uninstall paths on all OSes.

---

## User Submitted Enhancements
- [ ] Casting Support - (Chromecast Support)
- [ ] Resize Pop Out Video - (pop out the video player resize)
- [ ] Resize video on page (able to resize or change the layout of the video on the program guide page)
- [ ] Casting Support (Chromecast)
- [ ] Resize Pop Out Video
- [ ] Resize video on page
- [ ] Auto load Channel from Guide / Hidden Channel / Sizzle Reels


## ✅ Completed (v4.2.0)
- [x] Added mobile responsive layout.
- [x] Improved auto-scroll handling and modular JS design.
- [x] Updated documentation (CHANGELOG, README, INSTALL, ROADMAP).
- [x] Added RetroIPTV Theme (default).
- [x] Release tagged as **v4.2.0**


Loading