Skip to content

Releases: tablackburn/PlexAutomationToolkit

v0.11.2

29 Apr 03:16
6f159f9

Choose a tag to compare

What's Changed

  • feat: Retry WSANO_DATA DNS errors and surface recovery guidance by @tablackburn in #45

Full Changelog: v0.11.1...v0.11.2

v0.11.1 - Add-PatServer -Force overwrite

28 Apr 14:56
85f9e27

Choose a tag to compare

Changed

  • Add-PatServer -Force now overwrites an existing entry with the same -Name instead of throwing, matching the conventional PowerShell -Force semantics established by New-Item -Force, Copy-Item -Force, and Register-PSRepository -Force. Replace is wholesale: fields not supplied on the new call (e.g. localUri, preferLocal, default) are not preserved, and any vault-stored token for the old entry is removed before the new entry is written. Use Update-PatServerToken for in-place token rotation that preserves other fields. The duplicate-name error without -Force now points to both recovery paths.

    Closes #40 (PR #42).

v0.11.0

27 Apr 22:02
fe5832b

Choose a tag to compare

What's Changed

  • test: improve code coverage with streaming download tests by @tablackburn in #25
  • fix: resolve PowerShell 5.1 test compatibility issues by @tablackburn in #26
  • [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci[bot] in #28
  • [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci[bot] in #29
  • feat: Add Update-PatServerToken command and CI token validation by @tablackburn in #31
  • fix: Disable PSScriptAnalyzer in build on macOS due to settings bug by @tablackburn in #30
  • ci: bump actions/upload-artifact from 6 to 7 by @dependabot[bot] in #32
  • ci: bump codecov/codecov-action from 5 to 6 by @dependabot[bot] in #33
  • [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci[bot] in #34
  • fix: Skip PSScriptAnalyzer install on cache hit by @tablackburn in #35
  • fix: Validate PSScriptAnalyzer availability and harden WhatIf tests by @tablackburn in #36
  • ci: Add integration test timeouts and download progress monitoring by @tablackburn in #37
  • ci: bump dependabot/fetch-metadata from 2 to 3 by @dependabot[bot] in #38
  • feat: Replace 401 errors with actionable token recovery guidance by @tablackburn in #39
  • chore: release v0.11.0 by @tablackburn in #41

New Contributors

Full Changelog: v0.10.3...v0.11.0

v0.10.3

11 Jan 18:17
594896a

Choose a tag to compare

What's Changed

  • feat: add formatted output properties to Get-PatMediaInfo by @tablackburn in #24

Full Changelog: v0.10.2...v0.10.3

v0.10.2

11 Jan 16:39

Choose a tag to compare

What's Changed

  • test: improve Invoke-PatFileDownload coverage (51.8% → 57.9%) by @tablackburn in #17
  • refactor: extract helper functions from Sync-PatMedia by @tablackburn in #18
  • refactor: extract helper functions from Get-PatSyncPlan by @tablackburn in #19
  • refactor: extract helper functions from Add-PatServer by @tablackburn in #20
  • refactor: extract helper functions from Get-PatCollection by @tablackburn in #21
  • refactor: extract helper functions from Compare-PatWatchStatus by @tablackburn in #22
  • feat: add extended media details to Search-PatMedia output by @tablackburn in #23

Full Changelog: v0.10.1...v0.10.2

v0.10.1

10 Jan 16:43

Choose a tag to compare

What's Changed

  • refactor: extract Format-ByteSize and improve test coverage by @tablackburn in #15
  • test: add completer execution tests for pre-bound parameters by @tablackburn in #16

Full Changelog: v0.10.0...v0.10.1

v0.10.0

10 Jan 04:11
c794387

Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v0.9.0...v0.10.0

v0.9.0 - Local Network Detection

06 Jan 22:32

Choose a tag to compare

What's New

Intelligent Local Network Detection

The module can now automatically detect and prefer local network connections to your Plex server for better performance. When configured, it will:

  • Automatically detect local URIs from the Plex.tv API
  • Test reachability and prefer local connections when available
  • Fall back to remote URIs when local is unreachable

New parameters on Add-PatServer:

  • -LocalUri - Explicit local network URI
  • -PreferLocal - Enable automatic local/remote selection
  • -DetectLocalUri - Auto-detect local URI from Plex.tv API

Enhanced Progress Reporting

Sync-PatMedia now shows detailed download progress:

  • Download speed (e.g., "1.5 GB / 4.2 GB @ 25.3 MB/s")
  • Estimated time remaining for each file
  • Nested progress bars for overall sync and current file

Security Improvements

  • TLS certificate validation skip is now opt-in via -SkipCertificateCheck
  • Prevents man-in-the-middle attacks by default

Bug Fixes

  • PowerShell 5.1 compatibility for HTTPS certificate validation
  • Properly restores certificate callback even when original was null

Installation

Install-Module -Name PlexAutomationToolkit -Scope CurrentUser

Full Changelog

See CHANGELOG.md for complete details.

v0.8.3

05 Jan 13:52

Choose a tag to compare

Fixed

  • Add retry logic with exponential backoff to Invoke-PatApi for transient network errors
    • Retries DNS failures, connection timeouts, 503/429 status codes
    • Does not retry permanent errors (401, 403, 404)
    • Default 3 retries with exponential delays (1s, 2s, 4s)
  • Fix path validation in Test-PatLibraryPath to use correct property
    • Plex browse API returns key (API endpoint) and path (filesystem path)
    • Was incorrectly matching against key, now correctly uses path

Added

  • Integration tests for path validation using PLEX_TEST_LIBRARY_PATH environment variable
  • CI workflow support for PLEX_TEST_LIBRARY_PATH secret
  • Regression tests to verify path vs key property handling

v0.8.2

30 Dec 22:59

Choose a tag to compare

Changed

  • Refactor ArgumentCompleters to use testable helper functions
    • Extract duplicated quote handling into ConvertFrom-PatCompleterInput private function
    • Extract CompletionResult creation into New-PatCompletionResult private function
    • Remove ~430 lines of duplicated code across 15 public functions
    • Add 46 unit tests for the extracted logic