Skip to content

Comments

Dev#3

Merged
thehack904 merged 2 commits intomainfrom
dev
Oct 7, 2025
Merged

Dev#3
thehack904 merged 2 commits intomainfrom
dev

Conversation

@thehack904
Copy link
Owner

Summary

Merging the finalized v3.0.1 development branch into main.

This merge introduces several major backend and UI improvements that stabilize tuner management, fix caching behavior, and enhance user experience across the guide and login screens.

Key Changes

🧩 EPG Fallback System

  • Added apply_epg_fallback() helper to ensure every channel has at least one program entry.
  • Channels without XMLTV data now display “No Guide Data Available”.
  • Automatically triggered after login and tuner switch.
  • Handles cases where .m3u or .m3u8 is mistakenly used as XML.

🔄 Tuner Refresh Improvements

  • Fixed bug where tuner changes didn’t update the guide until user logout.
  • The guide now reloads cached_channels and cached_epg immediately after a tuner switch.

🎨 UI Enhancements

  • guide.html updated with placeholder boxes for missing guide data.
  • Added .program.no-guide styling for clarity (gray/italic/dashed border).
  • Redesigned login.html with a modern centered layout and floating logo.

🧠 Stability & Maintainability

  • Improved EPG parsing resilience and DB fallback handling.
  • Added debug output for verifying M3U tvg_id alignment with EPG keys.
  • Refactored and commented tuner/EPG initialization logic for better clarity.

📝 Documentation Updates

  • CHANGELOG.md updated with full v3.0.1 release notes.
  • ROADMAP.md now marks EPG fallback as completed under Guide & Playback.
  • README.md updated to v3.0.1 with revised feature list and version badge.

Version

Release: v3.0.1
Date: 2025-10-07
Branch: dev → main

Notes

This merge finalizes all planned v3.0.1 changes and prepares the main branch for deployment and packaging.
Future development (v3.1.0) will focus on .m3u8 tuner support and guide search/filter functionality.

### Overview
This release introduces the new EPG fallback system and fixes tuner refresh behavior to ensure guide data always updates instantly.
Also includes a redesigned login page and minor UI polish.

### Major Additions
- **EPG Fallback System**
  - Added `apply_epg_fallback()` helper to ensure all channels display “No Guide Data Available” when XMLTV entries are missing.
  - Automatically applied after login and when switching tuners.
- **Invalid XML Detection**
  - Added logic to skip `.m3u` or `.m3u8` files used as XML sources to prevent XML parse errors.
  - When detected, the guide displays fallback placeholders instead of failing silently.
- **Guide UI Enhancements**
  - Updated `guide.html` to render placeholder boxes for channels with missing EPG.
  - Added `.program.no-guide` CSS for visual distinction (gray/italic text, dashed border).
  - Template logic improved to handle empty or malformed EPG lists gracefully.
- **Tuner Refresh Fix**
  - Fixed bug where tuner changes required user logout to update the guide.
  - Now refreshes `cached_channels` and `cached_epg` immediately after tuner switch.
- **Login Page Redesign**
  - Centered floating login box with 3D shadow and right-aligned RetroIPTVGuide logo.
  - Clean visual alignment consistent with new theming.

### Other Improvements
- Added internal debug logging for channel vs. EPG key alignment.
- Codebase refactored for readability around EPG parsing and fallback integration.
- Updated documentation and version constants (`APP_VERSION = v3.0.1`, `APP_RELEASE_DATE = 2025-10-07`).

### Documentation
- Updated CHANGELOG.md with v3.0.1 details.
- Updated ROADMAP.md to reflect fallback feature completion.
- Updated README.md version badge and new guide feature details.

### Version
v3.0.1 (Release Date: 2025-10-07)
Bumped version to correct 3.0.1 and added Installation complete statement back on linux install
@thehack904 thehack904 closed this Oct 7, 2025
@thehack904 thehack904 reopened this Oct 7, 2025
@thehack904 thehack904 merged commit 2e256c8 into main Oct 7, 2025
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant