plexutil 3.4.1__tar.gz → 3.5.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {plexutil-3.4.1 → plexutil-3.5.0}/PKG-INFO +8 -13
- {plexutil-3.4.1 → plexutil-3.5.0}/README.md +7 -12
- {plexutil-3.4.1 → plexutil-3.5.0}/git-hooks/pre-commit +1 -1
- {plexutil-3.4.1 → plexutil-3.5.0}/init.sh +2 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/pyproject.toml +1 -1
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/core/prompt.py +1 -1
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/graphical/selection_window.py +4 -1
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/util/file_importer.py +4 -1
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil.egg-info/PKG-INFO +8 -13
- {plexutil-3.4.1 → plexutil-3.5.0}/.github/workflows/python-publish.yml +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/.gitignore +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/LICENSE +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/MANIFEST.in +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/git-hooks/commit-msg +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/requirements.txt +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/ruff.toml +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/setup.cfg +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/__init__.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/__main__.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/config/log_config.yaml +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/core/__init__.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/core/auth.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/core/library.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/core/library_factory.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/core/movie_library.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/core/music_library.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/core/music_playlist.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/core/tv_library.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/dto/__init__.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/dto/bootstrap_paths_dto.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/dto/dropdown_item_dto.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/dto/library_setting_dto.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/dto/movie_dto.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/dto/music_playlist_dto.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/dto/song_dto.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/dto/tv_episode_dto.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/dto/tv_series_dto.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/enums/__init__.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/enums/agent.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/enums/file_type.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/enums/language.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/enums/library_setting.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/enums/library_type.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/enums/scanner.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/enums/server_setting.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/enums/user_request.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/exception/__init__.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/exception/auth_error.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/exception/bootstrap_error.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/exception/database_connection_error.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/exception/device_error.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/exception/entity_not_found_error.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/exception/library_illegal_state_error.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/exception/library_op_error.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/exception/library_poll_timeout_error.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/exception/library_section_missing_error.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/exception/library_unsupported_error.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/exception/plex_media_missing_error.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/exception/server_connection_error.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/exception/unexpected_argument_error.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/exception/unexpected_naming_pattern_error.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/exception/user_error.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/graphical/__init__.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/mapper/__init__.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/mapper/music_playlist_mapper.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/mapper/song_mapper.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/model/__init__.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/model/music_playlist_entity.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/model/song_entity.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/model/song_music_playlist_entity.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/plex_util_logger.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/service/__init__.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/service/db_manager.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/service/music_playlist_service.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/service/song_music_playlist_composite_service.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/service/song_service.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/static.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/util/__init__.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/util/icons.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/util/plex_ops.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/util/query_builder.py +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil.egg-info/SOURCES.txt +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil.egg-info/dependency_links.txt +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil.egg-info/entry_points.txt +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil.egg-info/requires.txt +0 -0
- {plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil.egg-info/top_level.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: plexutil
|
|
3
|
-
Version: 3.
|
|
3
|
+
Version: 3.5.0
|
|
4
4
|
Author-email: Carlos Florez <carlos@florez.co.uk>
|
|
5
5
|
Maintainer-email: Carlos Florez <carlos@florez.co.uk>
|
|
6
6
|
License: MIT License
|
|
@@ -72,7 +72,7 @@ CLI for Plex Media Server.
|
|
|
72
72
|
* [Deleting a media library](#deleting-a-media-library-or-music-playlist)
|
|
73
73
|
* [Exporting/Importing Music Playlists](#exportingimporting-music-playlists)
|
|
74
74
|
* [Development](#development)
|
|
75
|
-
* [
|
|
75
|
+
* [Logs](#logs)
|
|
76
76
|
|
|
77
77
|
|
|
78
78
|
## Installation
|
|
@@ -123,18 +123,13 @@ plexutil modify
|
|
|
123
123
|
source init.sh
|
|
124
124
|
```
|
|
125
125
|
|
|
126
|
-
##
|
|
127
|
-
|
|
126
|
+
## Logs
|
|
127
|
+
|
|
128
128
|
> [!NOTE]
|
|
129
|
-
>
|
|
130
|
-
- Windows
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
```
|
|
134
|
-
- Linux
|
|
135
|
-
```bash
|
|
136
|
-
$HOME/plexutil/log
|
|
137
|
-
```
|
|
129
|
+
> Logs can be found in:
|
|
130
|
+
> - Windows -> C:\Users\User\Documents\plexutil\log
|
|
131
|
+
> - Linux -> $XDG_STATE_HOME/plexutil/log
|
|
132
|
+
> - MacOS -> ~/Library/Application Support/plexutil/log
|
|
138
133
|
|
|
139
134
|
## License
|
|
140
135
|
[MIT](https://choosealicense.com/licenses/mit/)
|
|
@@ -25,7 +25,7 @@ CLI for Plex Media Server.
|
|
|
25
25
|
* [Deleting a media library](#deleting-a-media-library-or-music-playlist)
|
|
26
26
|
* [Exporting/Importing Music Playlists](#exportingimporting-music-playlists)
|
|
27
27
|
* [Development](#development)
|
|
28
|
-
* [
|
|
28
|
+
* [Logs](#logs)
|
|
29
29
|
|
|
30
30
|
|
|
31
31
|
## Installation
|
|
@@ -76,18 +76,13 @@ plexutil modify
|
|
|
76
76
|
source init.sh
|
|
77
77
|
```
|
|
78
78
|
|
|
79
|
-
##
|
|
80
|
-
|
|
79
|
+
## Logs
|
|
80
|
+
|
|
81
81
|
> [!NOTE]
|
|
82
|
-
>
|
|
83
|
-
- Windows
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
```
|
|
87
|
-
- Linux
|
|
88
|
-
```bash
|
|
89
|
-
$HOME/plexutil/log
|
|
90
|
-
```
|
|
82
|
+
> Logs can be found in:
|
|
83
|
+
> - Windows -> C:\Users\User\Documents\plexutil\log
|
|
84
|
+
> - Linux -> $XDG_STATE_HOME/plexutil/log
|
|
85
|
+
> - MacOS -> ~/Library/Application Support/plexutil/log
|
|
91
86
|
|
|
92
87
|
## License
|
|
93
88
|
[MIT](https://choosealicense.com/licenses/mit/)
|
|
@@ -812,7 +812,7 @@ class Prompt(Static):
|
|
|
812
812
|
def __halt_non_interactive() -> None:
|
|
813
813
|
system = platform.system()
|
|
814
814
|
|
|
815
|
-
if system
|
|
815
|
+
if system in {"Windows", "Darwin"}:
|
|
816
816
|
return
|
|
817
817
|
elif system == "Linux":
|
|
818
818
|
session = os.getenv("XDG_SESSION_TYPE") or ""
|
|
@@ -47,7 +47,10 @@ class SelectionWindow:
|
|
|
47
47
|
self.update_listbox()
|
|
48
48
|
|
|
49
49
|
# Bind events
|
|
50
|
-
|
|
50
|
+
|
|
51
|
+
# https://github.com/orgs/Homebrew/discussions/5809#discussioncomment-11638857
|
|
52
|
+
# trace("w") not working in MacOS >= 3.12
|
|
53
|
+
self.search_var.trace_add("write", lambda *args: self.filter_list()) # noqa: ARG005
|
|
51
54
|
self.tree.bind("<<TreeviewSelect>>", self.update_status)
|
|
52
55
|
self.added_tree.bind("<<TreeviewSelect>>", self.update_added_status)
|
|
53
56
|
|
|
@@ -81,8 +81,11 @@ class FileImporter(Static):
|
|
|
81
81
|
description = "Could not locate Documents folder"
|
|
82
82
|
raise FileNotFoundError(description)
|
|
83
83
|
|
|
84
|
+
elif system == "Darwin":
|
|
85
|
+
home_folder = Path.home() / "Library/Application Support"
|
|
86
|
+
|
|
84
87
|
elif system == "Linux":
|
|
85
|
-
home_folder =
|
|
88
|
+
home_folder = Path.home() / ".local/state"
|
|
86
89
|
session = os.getenv("XDG_SESSION_TYPE") or ""
|
|
87
90
|
session = session.lower()
|
|
88
91
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: plexutil
|
|
3
|
-
Version: 3.
|
|
3
|
+
Version: 3.5.0
|
|
4
4
|
Author-email: Carlos Florez <carlos@florez.co.uk>
|
|
5
5
|
Maintainer-email: Carlos Florez <carlos@florez.co.uk>
|
|
6
6
|
License: MIT License
|
|
@@ -72,7 +72,7 @@ CLI for Plex Media Server.
|
|
|
72
72
|
* [Deleting a media library](#deleting-a-media-library-or-music-playlist)
|
|
73
73
|
* [Exporting/Importing Music Playlists](#exportingimporting-music-playlists)
|
|
74
74
|
* [Development](#development)
|
|
75
|
-
* [
|
|
75
|
+
* [Logs](#logs)
|
|
76
76
|
|
|
77
77
|
|
|
78
78
|
## Installation
|
|
@@ -123,18 +123,13 @@ plexutil modify
|
|
|
123
123
|
source init.sh
|
|
124
124
|
```
|
|
125
125
|
|
|
126
|
-
##
|
|
127
|
-
|
|
126
|
+
## Logs
|
|
127
|
+
|
|
128
128
|
> [!NOTE]
|
|
129
|
-
>
|
|
130
|
-
- Windows
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
```
|
|
134
|
-
- Linux
|
|
135
|
-
```bash
|
|
136
|
-
$HOME/plexutil/log
|
|
137
|
-
```
|
|
129
|
+
> Logs can be found in:
|
|
130
|
+
> - Windows -> C:\Users\User\Documents\plexutil\log
|
|
131
|
+
> - Linux -> $XDG_STATE_HOME/plexutil/log
|
|
132
|
+
> - MacOS -> ~/Library/Application Support/plexutil/log
|
|
138
133
|
|
|
139
134
|
## License
|
|
140
135
|
[MIT](https://choosealicense.com/licenses/mit/)
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{plexutil-3.4.1 → plexutil-3.5.0}/src/plexutil/service/song_music_playlist_composite_service.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|