Skip to content

chore(refactor): consolidate open refactoring PRs and apply code review fixes - #516

Open
Himanth-reddy wants to merge 15 commits into
ProdigyV21:mainfrom
Himanth-reddy:chore/merge-all-prs-with-comment-fixes
Open

chore(refactor): consolidate open refactoring PRs and apply code review fixes#516
Himanth-reddy wants to merge 15 commits into
ProdigyV21:mainfrom
Himanth-reddy:chore/merge-all-prs-with-comment-fixes

Conversation

@Himanth-reddy

@Himanth-reddy Himanth-reddy commented Aug 5, 2026

Copy link
Copy Markdown
Collaborator

Summary of Changes

  • Exception Safety & Cancellation Propagation:

    • WatchHistoryRepository: Rethrows CancellationException in primary save catch block.
    • DetailsViewModel: Preserves CancellationException propagation in episode save/watch progress handlers.
    • IptvRepository: Explicitly rethrows CancellationException in date formatting fallback logic.
    • AuthRepository: Narrows broad Instant.parse catch block to IllegalArgumentException and DateTimeParseException.
  • TvDeviceAuth & Response Polling:

    • TvDeviceAuthRepository: Uses an explicit outer label (outerUse@) on status polling response use block so legacy 404 fallback exits the outer lambda directly without processing the 404 response.
  • Data Models & Parsing:

    • IptvChannelStore: Safely parses requestHeaders_json as a JsonObject retaining non-null string entries.
    • IptvModels: Ensures safe collection immutability for channel request headers and snapshot models.
    • AuthRepository: Validates Netlify account sync responses, treating malformed/missing responses as failed uploads.
  • UI & Settings Validation:

    • SettingsViewModel: Narrows regex validation try-catch blocks to PatternSyntaxException and IllegalArgumentException, returning boolean success status.
    • SettingsScreen: Closes quality filter editor modal only when validation succeeds.

Verification

  • Built & compiled with ./gradlew :app:compileSideloadDebugKotlin (BUILD SUCCESSFUL).

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