Skip to content

Releases: danrahn/MarkerEditorForPlex

Marker Editor v2.8.0-beta

07 Oct 03:40
Compare
Choose a tag to compare
Pre-release

v2.8.0-beta 2024-10-06

Support ad markers and single user authentication

Changelog

All changes: v2.7.1...v2.8.0-beta

New

  • Add the ability to manage ad/commercial markers (79e962f), and add some basic tests (fa997cf)
  • Add the ability to require a username/password to access the app (af125ec), and integrate it into CLI-based setup (29b462c). See the commit message for more details on exactly what this entails.

Fixed

  • Switching between light and dark mode required a refresh to apply properly.
  • Database schema version wasn't properly recorded after upgrading from version 6 to 7.
  • The server could crash if a ServerError was thrown with an invalid HTML error code.

Tweaked

  • Try to keep the server settings dialog's 'Apply' and 'Cancel' buttons in view, only scrolling the settings themselves.
  • Use number inputs in the server settings dialog for inputs that are numbers.
  • Don't await responses in serverMain, as that was forcing the application to wait for one request to finish before processing another one. While this could be nice behavior for some operations to prevent race conditions, for the most part it just slows down the loading of resources.
  • When using keyboard shortcuts to adjust marker offsets, if the change crosses between positive and negative offsets, always stop at '0' and '-0'. E.g. subtracting one second from "0.5" would first stop at 0,
    then go to -0, then -1000 instead of immediately jumping to "-0.5. (55bdd75)

Dev

  • Refactor the build process to support multiple root files, as this is no longer a single-page site (index.html), it's now a two-page site (index.html and login.html).

Marker Editor v2.7.1

28 Jul 20:58
Compare
Choose a tag to compare

v2.7.1 2024-07-28

Track re-added markers and minor UI tweaks.

Changelog

All changes: v2.7.0...v2.7.1

New

  • Track markers re-added by Plex after analysis and allow them to be re-deleted. See the wiki for more information (c6284b3, 7c0c4a7).
    • NOTE: This feature has not been heavily tested.
  • Move marker breakdown chart to 'More' menu (17f7015).
  • Move purged marker check to Section Options header, and only show it if purged markers are detected (0435e0c).
  • Various minor UI adjustments (070ee42).
  • Bump node.js base to 20.16.0 for built binaries.

Fixed

  • Overlays could display incorrectly if shown in quick succession (17f7015).
  • Fix config setup in Docker (149ada5).
  • Fix first-time setup validation (c5311f1).

Refactoring/Code Maintenance

  • Remove 'inc' style subfolder (f158e6f).

Dev

  • Faster initial page load:
    • Embed core styles into index.html so the core layout is immediately available.
    • Use webpack to minify and consolidate client-side JS, reducing the size and number of requests needed to load the application (built binaries only) (ef6de82).
    • Use cache busting for JS/CSS/SVGs to allow for browser-side caching (built binaries only) (ef6de82, e051b4e).

Marker Editor v2.7.0

19 May 04:05
Compare
Choose a tag to compare

v2.7.0 2024-05-18

Improved first run experience, more keyboard navigation, significant refactoring, and more.

Changelog (Since v2.6.4)

All changes: v2.6.4...v2.7.0

New

  • Allow server settings to be edited in the browser (49c6e88).
    • Under client settings, add a 'Server Settings' button that opens a new dialog with all available server settings.
    • First Run Experience - if no config file is found and the default host:port is open, start the server and launch an undismissible settings dialog, only falling back to the command line setup if localhost:3232 is not available.
    • Similar to the first run experience, if there's an invalid config value on load, allow the server to start, but show the settings dialog.
  • Add additional arrow key navigation in the main view. See Navigation Shortcuts for details (24b1b60).
  • Add a long-press events for touch devices (NOTE: these seem to mostly work, but have some rough edges)
    • Long-press a movie/episode row to expand/contract all marker tables (7f4f44c).
  • Make marker thumbnails available outside of edit mode (cf9d755).
    • Add an image button in the marker table that shows/hides thumbnails, similar to edit mode.
    • Ctrl+Click and longpress shows/hides all thumbnails in the marker table. Ctrl+Shift+Click shows/hides all thumbnails in visible marker tables.
  • Add some basic CLI options (--version and --help) (71a887d, 9ff8281).
    • Allow arguments to be passed directly to binaries. E.g. instead of requiring ./MarkerEditor -- --help, direct ./MarkerEditor --help to ./MarkerEditor -- -help.(a61d26c).

Fixed

  • Fix broken sticky setting initialization (ae948e6).
  • Fix macOS data directory check (42a74a8).
  • Fix shrinking error thumbnails on smaller screens (71a887d).
  • Fix marker type alignment, fix overlay close button hitbox, and replace HTML arrows with an SVG arrow, as not all browsers properly display the HTML entity (11b1722).
  • Ensure tooltip stays within the viewport bounds on small screens (7f4f44c).
  • smallScreenCached might not be initialized to the correct value (cf9d755).
  • Marker export could fail if the Plex database had unexpected markers (3d0a0ed).

Tweaked

  • Adjust custom checkboxes to better indicate when they're checked/unchecked, and use them everywhere instead of just in the settings dialog (#23, ec7eb8c).
  • Slightly more robust database path handling (e1326e1).
  • More adjustments for small screens - use abbreviated dates, use a smaller font, and remove percentages (replaced with an info icon) (11b1722).
  • Shorten "Date Added" column header to "Added" when the screen is small (7f4f44c).
  • Replace the help icon with the info icon in some places (7f4f44c).
  • Update result row marker breakdown display when screen size changes (7f4f44c).
  • Several adjustments to result row flex behavior/alignment (7f4f44c).
  • Setting client-side log level no longer affects server-side log level (49c6e88).
  • Adjust VersionManager to account for numbered alpha/beta releases (5f3c94f).
  • For click events, treat the meta key as ctrl, since macOS treats Ctrl+Click as right click (d99c7b3, 623166f).
  • Clicking a tooltip dismisses it (mainly relevant for touch-based devices) (8c9e429).
  • Many more minor adjustments

Refactoring/Code Maintenance

Dev

  • Add extensions.json to recommend installing ESLint (1eb03d2).
  • Fix broken version directory check in Build.cjs (13cdcbe).
  • Ignore -beta when setting PRODUCTVERSION/FILEVERSION on Windows (48a8736).
  • Add a handful of configuration validation tests (fadc4cc).
  • Update Node to latest LTS build - 20.13.1

Marker Editor v2.7.0-beta.2

03 May 02:48
Compare
Choose a tag to compare
Pre-release

v2.7.0-beta.2 2024-05-02

Fix more things I broke during the initial 2.7.0-beta release

Changelog

Fixed

  • Server suspend was incorrectly mapped to server reload (e949b8f).
  • Chapter-based bulk add and database import were broken (f150ab7, 634b624).

Tweaks

  • Adjust VersionManager to account for numbered alpha/beta releases (5f3c94f).
  • For click events, treat the meta key as ctrl, since macOS treats Ctrl+Click as right click (d99c7b3, 623166f).
  • Clicking a tooltip dismisses it (mainly relevant for touch-based devices) (8c9e429).

Marker Editor v2.7.0-beta.1

30 Apr 01:06
Compare
Choose a tag to compare
Pre-release

v2.7.0-beta.1 2024-04-29

Hotfix that fixes the first run experience that was broken during refactoring.

Known Issues

  • Chapter-based bulk add and database import are broken. The issue has been resolved (f150ab7), and will be available in the next release.

Changelog

Fixed (3f93595)

  • The wrong config validation endpoint was whitelisted, resulting in users unable to validate configurations on first run.
  • When validating path mappings, keep the default if there aren't any user-provided mappings, so we don't write empty mappings to the config file.
  • Soft-reloading the server after initial setup was broken because the action wasn't allowed in RunningWithoutConfig mode.
  • The server would be in a broken state if the user's initial setup didn't require a server reload (e.g. keeping all default values).

Marker Editor v2.7.0-beta

28 Apr 19:32
Compare
Choose a tag to compare
Pre-release

v2.7.0-beta 2024-04-28

Improved first run experience, more keyboard navigation, significant refactoring, and more.

Changelog

New

  • Allow server settings to be edited in the browser (49c6e88).
    • Under client settings, add a 'Server Settings' button that opens a new dialog with all available server settings.
    • First Run Experience - if no config file is found and the default host:port is open, start the server and launch an undismissible settings dialog, only falling back to the command line setup if localhost:3232 is not available.
    • Similar to the first run experience, if there's an invalid config value on load, allow the server to start, but show the settings dialog.
  • Add additional arrow key navigation in the main view. See MarkerTable.js for details (24b1b60).
  • Add a long-press events for touch devices (NOTE: these seem to mostly work, but have some rough edges)
    • Long-press a movie/episode row to expand/contract all marker tables (7f4f44c).
  • Make marker thumbnails available outside of edit mode (cf9d755).
    • Add an image button in the marker table that shows/hides thumbnails, similar to edit mode.
    • Ctrl+Click and longpress shows/hides all thumbnails in the marker table. Ctrl+Shift+Click shows/hides all thumbnails in visible marker tables.
  • Add some basic CLI options (--version and --help). For binaries, -- must be passed first, e.g. ./MarkerEditor -- --help (71a887d, 9ff8281).

Fixed

  • Fix broken sticky setting initialization (ae948e6).
  • Fix macOS data directory check (42a74a8).
  • Fix shrinking error thumbnails on smaller screens (71a887d).
  • Fix marker type alignment, overlay close button hit replace HTML arrows with an SVG arrow, as not all browserse properly display the HTML entity (11b1722).
  • Ensure tooltip stays within the viewport bounds on small screens (7f4f44c).
  • smallScreenCached might not be initialized to the correct value (cf9d755).

Tweaked

  • Adjust custom checkboxes to better indicate when they're checked/unchecked, and use them everywhere instead of just in the settings dialog (#23, ec7eb8c).
  • Slightly more robust database path handling (e1326e1).
  • More adjustments for small screens - use abbreviated dates, use a smaller font, and remove percentages (replaced with an info icon) (11b1722).
  • Shorten "Date Added" column header to "Added" when the screen is small (7f4f44c).
  • Replace the help icon with the info icon in some places (7f4f44c).
  • Update result row marker breakdown display when screen size changes (7f4f44c).
  • Several adjustments to result row flex behavior/alignment (7f4f44c).
  • Setting client-side log level no longer affects server-side log level (49c6e88).
  • Many more minor adjustments

Refactoring/Code Maintenance

Dev

  • Add extensions.json to recommend installing ESLint (1eb03d2).
  • Fix broken version directory check in Build.cjs (13cdcbe).
  • Ignore -beta when setting PRODUCTVERSION/FILEVERSION on Windows (48a8736).

Marker Editor for Plex v2.6.4

09 Mar 03:32
Compare
Choose a tag to compare

v2.6.4 2024-03-08

Miscellaneous bug fixes and improvements.

Changelog

New

  • Pre-built packages for Linux and Mac.
    • NOTE: Many of the packages have not been validated outside of ensuring they launch the First Run experience.
    • Major overhaul of build-win.cjs (now build.cjs) to support cross-compiling as well as targeting Linux/Mac in addition to Windows (9a11110, d23df06, and 378633e).
  • Add an option to force index-based chapter matching for Bulk Add (074f5c6).
  • Add the concept of "sticky" settings - allow the user to choose whether their options in bulk operations and individual marker adds persist across the session, or multiple sessions (a163250).
  • Better Plex data directory detection (977b70f).
  • New pathMappings configuration option (see wiki) (15d0785, 7f5c35a, 4109e6b).
  • Add arm64 Docker target.

Fixed

  • Ensure dock mode toggle and help button scroll out of view (19f6673).
  • Fix broken chapter parsing on PMS >= 1.40.0 (e0f8fae).
  • Ensure restarting/paused/shutdown overlays can't be dimissed (098194b).
  • Fix broken user_created flag in backup database (f37b2fd).
  • Don't attempt to display empty season titles (cd8eeb3).
  • Fix broken tests (33d89be).
  • Bulk add apply type description could be incorrect if sticky settings are enabled (eb0b63a).

Tweaked

  • Adjust logging of media items in backup database that aren't in the Plex database (94112a5).
  • Use new JSON format in PMS >= 1.40.0 for chapter parsing if available (e0f8fae).
  • Some small screen optimizations (though this is still far from mobile-friendly) (e367674).
  • Don't include show name in episode title on small screens (85ffe17).
  • Trim whitespace from user-supplied paths during First Run experience (251fff1, a3d0674).
  • Tweak "markers without media items" message (72c1c22).

Marker Editor for Plex v2.6.4-beta

23 Feb 01:27
Compare
Choose a tag to compare
Pre-release

v2.6.4-beta 2024-02-22

Miscellaneous bug fixes and improvements.

Changelog

New

  • Add an option to force index-based chapter matching for Bulk Add (074f5c6).
  • Add the concept of "sticky" settings - allow the user to choose whether their options in bulk operations and individual marker adds persist across the session, or multiple sessions (a163250).

Fixed

  • Ensure dock mode toggle and help button scroll out of view (19f6673).
  • Fix broken chapter parsing on PMS >= 1.40.0 (e0f8fae).
  • Ensure restarting/paused/shutdown overlays can't be dimissed (098194b).
  • Fix broken user_created flag in backup database (f37b2fd).

Tweaked

  • Adjust logging of media items in backup database that aren't in the Plex database (94112a5).
  • Use new JSON format in PMS >= 1.40.0 for chapter parsing if available (e0f8fae).
  • Some small screen optimizations (though this is still far from mobile-friendly) (e367674).

Marker Editor for Plex v2.6.3

20 Dec 02:16
Compare
Choose a tag to compare

v2.6.3 2023-12-19

Address Plex database schema changes.

PMS 1.40.0.7775 changed all extra_data columns in the database from url-encoded values to JSON. Add logic to check whether markers are using the new JSON format and use that if needed, falling back to the old method if existing markers aren't using JSON.

Changelog

Fixed

  • Use new extra_data JSON format if needed when adding markers to the database (980d49a).

Marker Editor For Plex v2.6.2

10 Dec 20:41
Compare
Choose a tag to compare

v2.6.2 2023-12-10

Several minor bug fixes

Changelog

Fixed

  • Couldn't add '-' to create a negative timestamp in some circumstances (4fe6d70).
  • Elements could get into bad states if element animations are triggered before existing animations on the same element are completed (7c7754a).
  • Toast messages did not appear on top of overlays (60ab96c).
  • Attempting to add markers from back-to-back chapters would often result in overlap that had to be manually resolved (8926c3d).
  • In bulk add, chapter-based matching could return a timestamp match even when a name match is available (1076a50).

Tweaked

  • Adjust multi-select behavior when only a single item is selected (4b39eeb).
  • Reduce number of server requests are needed to get movie marker info (2e1bdf4).
  • Move single marker delete confirmation inline instead of an overlay (7381fc8).
  • In bulk add, if an episode has multiple chapter names that match the baseline, return the marker closest to the baseline instead of the first match (1076a50).

Refactoring

  • Enable require-await ESLint rule (917a497).
  • Rename DatabaseWrapper to SqliteDatabase and move CreateDatabase.cjs into SqliteDatabase.js (4644f9c).