Skip to content

Releases: MikaelKW/nodecast-tv-plus

NodeCast TV Plus v2.4.0

Choose a tag to compare

@MikaelKW MikaelKW released this 18 Jul 18:40
edf1432

NodeCast TV Plus v2.4.0

NodeCast TV Plus v2.4.0 adds deployment-level sign-in controls, guided first-run account protection, configurable content and navigation visibility, and browser theme selection.


Highlights

  • Enforce SSO-only authentication and optionally redirect directly to a configured identity provider by @MikaelKW in #193.
  • Offer guided authenticator-app MFA enrollment after initial administrator setup by @MikaelKW in #195.
  • Choose whether each source appears in Live TV, TV Guide, Movies, or Series without deleting synchronized provider data by @MikaelKW in #197.
  • Configure the starting page and independently show or hide primary navigation destinations by @MikaelKW in #199.
  • Select Dark, Light, or System appearance, including immediate operating-system theme following by @MikaelKW in #201.
  • Improve pale and transparent provider-logo contrast in Light mode by @MikaelKW in #203.
  • Prevent successful migration validation from being reported as failed when optional image cleanup encounters a retained container by @MikaelKW in #206.

Upgrade from v2.3.1

Back up the existing /app/data volume, pull the release image, and recreate the container with the same volume and deployment secrets:

docker pull ghcr.io/mikaelkw/nodecast-tv-plus:2.4.0

No manual database migration is required. Keep the existing strong, distinct JWT_SECRET and SESSION_SECRET values. If authenticator-app 2FA is enabled, also preserve the existing TOTP_ENCRYPTION_KEY.

DISABLE_LOCAL_AUTH and OIDC_AUTO_REDIRECT are optional and default to false. Before disabling local sign-in, verify that the intended SSO account can sign in as an administrator. The README documents the safe activation and recovery sequence.

Available stable image tags after publication:

  • 2.4.0 — this exact release
  • 2.4 — newest compatible 2.4 patch release
  • latest — newest stable release

To roll back, stop the upgraded container, restore the pre-upgrade data backup, and recreate the container with 2.3.1 and the existing deployment secrets.


Validation

  • Application, authentication, TOTP, OIDC, dependency, proxy, browser/media, mobile WebKit, reverse-proxy subpath, Docker, release-metadata, and migration checks passed.
  • The automated release gate verified supported upstream v2.1.1 and 2.1.4 migrations and an upgrade from the published Plus v2.3.1 image, preserving accounts, provider configuration, settings, content records, favorites, history, hidden items, and authentication state.
  • Hands-on validation covered SSO-only sign-in and logout, first-run MFA enrollment and postponement, per-source content visibility, starting-page and navigation controls, browser themes, operating-system theme following, provider-logo contrast, playback, fullscreen, and physical iPhone layouts.

See the full changelog for complete change and upgrade details.

NodeCast TV Plus v2.3.1

Choose a tag to compare

@MikaelKW MikaelKW released this 16 Jul 19:12
4603ca1

NodeCast TV Plus v2.3.1

NodeCast TV Plus v2.3.1 improves stream delivery, container health reporting, password-entry safeguards, and Live TV channel browsing.


Highlights

  • Stream non-HLS media to clients as upstream bytes arrive, with range preservation, backpressure, disconnect cancellation, and bounded HLS manifest buffering by @MikaelKW in #174.
  • Confirm the initial administrator password without changing the ordinary sign-in flow by @MikaelKW in #175 and #178.
  • Add a minimal application readiness endpoint plus Docker and Compose health checks by @MikaelKW in #176.
  • Preserve expanded groups and sidebar position while selecting nearby Live TV channels by @MikaelKW in #181.
  • Add accessible password visibility controls to sign-in, setup, and local-user creation by @MikaelKW in #186.
  • Require matching password confirmation when administrators create additional local users by @MikaelKW in #186.

Upgrade from v2.3.0

Back up the existing /app/data volume, pull the release image, and recreate the container with the same volume and deployment secrets:

docker pull ghcr.io/mikaelkw/nodecast-tv-plus:2.3.1

No manual database migration is required. Keep the existing strong, distinct JWT_SECRET and SESSION_SECRET values. If authenticator-app 2FA is enabled, also preserve the existing TOTP_ENCRYPTION_KEY.

Available stable image tags after publication:

  • 2.3.1 — this exact release
  • 2.3 — newest compatible 2.3 patch release
  • latest — newest stable release

To roll back, stop the upgraded container, restore the pre-upgrade data backup, and recreate the container with 2.3.0 and the existing deployment secrets.


Validation

  • Application, authentication, dependency, proxy, browser/media, mobile WebKit, reverse-proxy subpath, Docker, release-metadata, and migration checks passed.
  • The automated release gate verified supported upstream v2.1.1 and 2.1.4 migrations and an upgrade from the published Plus v2.3.0 image, preserving accounts, provider configuration, settings, content records, favorites, history, hidden items, and authentication state.
  • Controlled proxy testing verified progressive time to first byte, range handling, bounded manifest rewriting, and cancellation after client disconnects.
  • Real Docker containers reached healthy state for root and reverse-proxy-subpath deployments.
  • Hands-on validation covered initial setup, ordinary sign-in, administrator-created users, password confirmation and visibility controls, Live TV sidebar position, playback, source management, and the existing account and TOTP flows.

See the full changelog for complete change and upgrade details.

NodeCast TV Plus v2.3.0

Choose a tag to compare

@MikaelKW MikaelKW released this 16 Jul 11:45
4e5c9b2

NodeCast TV Plus v2.3.0

NodeCast TV Plus v2.3.0 adds secure optional authenticator-app two-factor authentication for local accounts and improves the first-run experience after adding content sources.


Highlights

  • Automatically synchronize newly added M3U, standalone EPG, and Xtream sources with visible progress and retry handling by @MikaelKW in #158.
  • Prevent repeated source submission while the initial source request is still being processed by @MikaelKW in #158.
  • Add guided authenticator-app enrollment, server-side sign-in challenges, replay protection, rate limits, and single-use recovery codes by @MikaelKW in #165.
  • Encrypt TOTP secrets at rest and store recovery codes only as keyed hashes by @MikaelKW in #165.
  • Provide protected recovery-code regeneration, self-service disable, and administrator reset controls by @MikaelKW in #165.
  • Consolidate Account security and Logout beneath a username-initial menu with desktop and mobile scrolling corrections by @MikaelKW in #165.

Upgrade from v2.2.2

Back up the existing /app/data volume, pull the release image, and recreate the container with the same volume and deployment secrets:

docker pull ghcr.io/mikaelkw/nodecast-tv-plus:2.3.0

No manual database migration is required. Keep the existing strong, distinct JWT_SECRET and SESSION_SECRET values.

To make authenticator-app 2FA available to local accounts, generate a third independent strong secret and provide it as TOTP_ENCRYPTION_KEY. This setting is optional, but once accounts enroll it must be preserved across upgrades and backed up securely alongside the deployment configuration. Losing or changing it makes existing TOTP enrollments unusable.

Available stable image tags after publication:

  • 2.3.0 — this exact release
  • 2.3 — newest compatible 2.3 patch release
  • latest — newest stable release

To roll back, stop the upgraded container, restore the pre-upgrade data backup, and recreate the container with 2.2.2 and the existing deployment secrets.


Validation

  • Application, authentication, TOTP security, dependency, browser/media, mobile WebKit, reverse-proxy subpath, Docker, release-metadata, and migration checks passed.
  • The automated release gate verified supported upstream v2.1.1 and 2.1.4 migrations and an upgrade from the published Plus v2.2.2 image, preserving accounts, provider configuration, settings, content records, favorites, history, hidden items, and authentication state.
  • Controlled source testing verified successful delayed synchronization, visible failure and retry handling, and duplicate-submission prevention.
  • Hands-on desktop and physical-iPhone Safari testing verified QR enrollment, invalid-code recovery, authenticator login, single-use recovery login, recovery-code counts, Account Security controls, navigation, scrolling, and portrait/landscape behavior.

See the full changelog for complete change, security, and upgrade details.

NodeCast TV Plus v2.2.2

Choose a tag to compare

@MikaelKW MikaelKW released this 15 Jul 06:16
e93d15b

NodeCast TV Plus v2.2.2

NodeCast TV Plus v2.2.2 is a compatible patch release focused on XMLTV provider compatibility, iPhone and mobile-browser usability, and reliable reverse-proxy subpath deployments.


Highlights

  • Accept standards-valid reduced-precision XMLTV timestamps while safely skipping malformed programme entries by @MikaelKW in #128.
  • Render Series details reliably in iPhone Safari and other WebKit browsers by @MikaelKW in #132.
  • Keep Home, Series, Settings, Login, and every landscape navigation destination reachable on mobile devices by @MikaelKW in #136.
  • Support deployments beneath a reverse-proxy subpath, including authentication, APIs, OIDC, playback, and rewritten HLS media URLs by @MikaelKW in #139 and #142.
  • Restore Live TV fullscreen through the native iPhone Safari video player by @MikaelKW in #146.

Upgrade from v2.2.1

Back up the existing /app/data volume, pull the release image, and recreate the container with the same volume and deployment secrets:

docker pull ghcr.io/mikaelkw/nodecast-tv-plus:2.2.2

No manual database migration is required. Keep the existing strong, distinct JWT_SECRET and SESSION_SECRET values; changing them signs existing browser sessions out but does not remove accounts or application data.

Root-path deployments require no configuration change. For a reverse proxy that publishes NodeCast beneath a path such as /nodecast/, set NODECAST_BASE_PATH=/nodecast and configure the proxy to remove that prefix before forwarding requests. The README contains a complete Caddy example.

Available stable image tags after publication:

  • 2.2.2 — this exact release
  • 2.2 — newest compatible 2.2 patch release
  • latest — newest stable release

To roll back, stop the upgraded container, restore the pre-upgrade data backup, and recreate the container with 2.2.1 and the existing deployment secrets.


Validation

  • Application, authentication, security, dependency, browser/media, mobile WebKit, reverse-proxy subpath, Docker, release-metadata, and migration checks passed.
  • A controlled 28-channel, 1,680-programme XMLTV source synchronized successfully with reduced-precision timestamps and valid TV Guide data.
  • Physical-iPhone testing confirmed Series details, long-page scrolling, landscape navigation, and native Live TV fullscreen behavior in Safari.
  • Root and /nodecast/ deployments were validated through a real Caddy reverse proxy, including login, logout, primary pages, EPG, Live TV, quality switching, Movies, Series, and proxied HLS manifests.
  • The automated release gate verified supported upstream v2.1.1 and 2.1.4 migrations and an upgrade from the published Plus v2.2.1 image, preserving accounts, credentials, settings, content records, favorites, history, hidden items, and authentication state.

See the full changelog for complete change and upgrade details.

NodeCast TV Plus v2.2.1

Choose a tag to compare

@MikaelKW MikaelKW released this 14 Jul 04:03
6793c42

NodeCast TV Plus v2.2.1

NodeCast TV Plus v2.2.1 is a compatible patch release focused on provider-data integrity, login usability, transcode startup flexibility, and resilient movie/series playback.


Highlights

  • Prevent XMLTV/EPG identifier collisions from replacing Xtream channel names and logos, and repair affected metadata during source synchronization by @MikaelKW in #111.
  • Allow slower providers to use a configurable transcode startup timeout while retaining the existing default by @MikaelKW in #114.
  • Accept capitalization differences during local-account login without changing the stored username display by @MikaelKW in #117.
  • Recover interrupted movie and series HLS playback through bounded reconnection, media recovery, and stream-proxy fallback by @MikaelKW in #120.
  • Document and automatically validate supported upstream migration paths by @MikaelKW in #106.
  • Improve release-note traceability, lineage references, and section layout by @MikaelKW in #103.

Upgrade from v2.2.0

Back up the existing /app/data volume, pull the release image, and recreate the container with the same volume and deployment secrets:

docker pull ghcr.io/mikaelkw/nodecast-tv-plus:2.2.1

No manual database migration is required. Keep the existing strong, distinct JWT_SECRET and SESSION_SECRET values; changing them signs existing browser sessions out but does not remove accounts or application data.

Installations with slow transcode startup can optionally set TRANSCODE_START_TIMEOUT_SECONDS to a whole number from 1 to 300. Omitting it preserves the existing 15-second per-attempt default.

Available stable image tags after publication:

  • 2.2.1 — this exact release
  • 2.2 — newest compatible 2.2 patch release
  • latest — newest stable release

To roll back, restore the pre-upgrade data backup and recreate the container with 2.2.0 and the existing deployment secrets.


Validation

  • Application, authentication, security, dependency, browser/media, Docker, release-metadata, and supported upstream migration checks passed.
  • The Xtream/XMLTV correction was validated with distinct channel names, logos, EPG programmes, and playback before and after source refresh.
  • A delayed controlled stream started successfully beyond the previous fixed transcode timeout.
  • Case-insensitive login was validated on desktop and mobile while preserving the stored username spelling.
  • A controlled A/B container upgrade reproduced the unrecoverable HLS stall on v2.2.0-era code; the patched build buffered for 3–5 seconds, recovered automatically, and completed playback under the same outage.
  • Migration from the published v2.2.0 container was validated with a disposable persistent data volume, preserving the account, password, application settings, and deployment secrets without a manual database migration.

See the full changelog for complete change and upgrade details.

NodeCast TV Plus v2.2.0

Choose a tag to compare

@MikaelKW MikaelKW released this 13 Jul 04:06
2f93fdf

NodeCast TV Plus v2.2.0

NodeCast TV Plus v2.2.0 is the first formal release of the independent fork. It combines the relevant improvements completed since the fork was created with the upstream development baseline inherited after NodeCast TV v2.1.1.


Highlights

  • Change playback quality directly in the Live TV or movie/series player without leaving the stream (#88).
  • Preserve playback when a provider rejects transcoding, with clear best-effort resolution-limit messages (#92, #96).
  • Use standards-based OIDC discovery with Authentik, Keycloak, and other compliant providers (#74).
  • Improve rapid channel changes, provider reconnection, transcode cleanup, and Intel QSV detection (#70, #78).
  • Harden authentication, authorization, media input handling, logging, and production secret requirements (#57, #60).
  • Add clean-runner application and Docker checks, controlled browser/media tests, dependency-security enforcement, and stable multi-architecture release publishing (#54, #57, #64, #100).

Installation and upgrade

The stable container is published for linux/amd64 and linux/arm64:

docker pull ghcr.io/mikaelkw/nodecast-tv-plus:2.2.0

Production deployments must provide different strong values for JWT_SECRET and SESSION_SECRET. Preserve the existing /app/data volume when recreating the container, and back it up before upgrading. No manual database migration is expected.

Available stable image tags after publication:

  • 2.2.0 — this exact release
  • 2.2 — newest compatible 2.2 patch release
  • latest — newest stable release

Because this is the first formal Plus release, there is no earlier stable Plus version tag. A rollback should use a previously tested sha-* image or pinned digest while preserving the data volume.


Historical version note

The upstream repository published releases through v2.1.1, then advanced its internal package version through 2.1.2, 2.1.3, and 2.1.4 without corresponding tags or GitHub Releases. Those versions were inherited development history, not undocumented NodeCast TV Plus releases.


See the full changelog for the complete feature, fix, security, compatibility, and lineage notes.