Releases: pushingkarmaorg/python-plexapi
4.15.1
Bug Fixes
- #1201 - Fix documentation search
- #1216 - Validate empty items explicitly when editing items
- #1231 - Fallback timeout from constructor in
query()
New Features
- #1204 - Add method to retrieve Plex server identity
- #1205 - Add methods to retrieve public IP and geolocation
- #1207 - Add properties to return the Plex Media Server data metadata paths
- #1219 - feat(alert): add option to use custom socket
Improvements
- #1203 - Improve parsing to datetime and add error handling
- #1206 - Rename "setDefault" to "setSelected" for media streams
- #1209 - Fix ElementTree DeprecationWarning when testing truth value (Python 3.12)
- #1220 - docs(readme): fix typos
- #1221 - style: fix F812 rule
- #1222 - docs: add Windows make file
- #1227 - Tests skip additional tests that require plex pass
- #1228 - style: lint all python files
- #1229 - test: add codeql analysis
- #1230 - Simplify PlexPartialObject eq return
4.15.0
Breaking Changes
#1129 - Update MyPlexAccount to use Plex API v2
#1133 - Update MyPlexResource to use Plex API v2
#1170 - Remove optional title argument from PhotoSection.searchAlbums() and PhotoSection.searchPhotos()
#1185 - Create separate PlexHistory objects
#1198 - Remove support for Python 3.7
Bug Fixes
#1169 - Change server continue watching endpoint
#1182 - Check object is instance of PlexPartialObject for __eq__ comparison
New Features
#1184 - Add LibrarySection methods to multi-edit items
#1186 - Add score and tagKey attribute to hub search results
#1187 - Add config option to disable auto-reloading
#1190 - Add SubtitleStream attributes for on-demand subtitles
#1191 - Add search kwargs to LibrarySection.get()
Improvements
#1164 - Update PyPI workflow to use trusted publishing
#1166 - Set Sphinx language to en
#1171 - Add job dependency and environment to pypi workflow
#1192 - Add music library language to bootstrap test server
#1195 - Fix MyPlexAccount tests
#1196 - Fix movie edition tests
Thanks to new contributor @fabricionaweb.
4.14.0
Breaking Changes
#1132 - Change updateProgress and updateTimeline to return self
updateProgress()andupdateTimeline()no longer auto-reload. Chain methods to reload (updateProgress().reload()andupdateTimeline().reload()).
Bug Fixes
#1160 - Fix mutable default args for resource connection
#1163 - Pass session from MyPlexAccount to server/device connection
New Features
#1090 - Add support Discover isPlayed/markPlayed/markUnplayed
#1131 - Add support for Continue Watching hubs
#1134 - Add Chapters to Track
#1154 - Allow using MyPlexUser object for switchUser
Improvements
#1109 - Raise Exceptions on bad Download Responses
#1138 - Detect invalid token with myplex
#1142 - Do not add blank string to secrets log filter
#1144 - Fix code block doc string formatting
#1143 - Refactor fetchItems for pagination
#1155 - Read version from file instead of import in setup.py
4.13.4
4.13.3
Bug Fixes
#1102 - Fix unable to remove tags with special characters
#1113 - Update plex-download.py to use server auth-token instead of account auth-token
New Features
#1085 - Add convenience method to set default audio and subtitle streams
#1094 - Add support for credit markers
#1107 - Add support for editing addedAt field
#1108 - Add seasonCount attribute to Show
#1114 - Add advanced settings for show/season preferred audio/subtitle settings
#1121 - Add blendColor parameter to transcodeImage()
Improvements
#1080 - Cleanup duplicate header.platform reading
#1097 - Speed up searchType and tagType lookups
#1103 - Fix episode attributes test year
#1120 - Update getStreamURL() for dash protocol
4.13.2
Bug Fixes
#1057 - Fix parsing settings enum
#1068 - Fix getGuid doc string
#1069 - Fix: Inherit session when creating internal PlexServer objects
#1073 - Fix: Remove bogus space from searchDiscover limit parameter
#1075 - Fix parsing requirements in setup.py
New Features
#1039 - Add timeout parameter to uploadTheme
#1055 - Create music playlist from m3u file
#1059 - Add Rating media tag
#1063 - Add 2FA code parameter for MyPlexAccount
#1071 - Allow overriding includeUserState for _toOnlineMetadata
#1076 - Add pin parameter to switchHomeUser
Improvements
#1058 - Factor out playQueue() method to PlexPartialObject
#1065 - Use cached_property decorator
#1070 - Performance: Use totalSize attribute for watchlist walking
#1074 - Properly close file object in mixin uploads
4.13.1
Bug Fixes
#1019 - Add container size to seasons request to allow more than 20 to be pulled
#1024 - Fix library guid search
#1027 - Fix initializing metadata.provider.plex.tv multiple times
#1046 - Client timeline "repeat" should be int and not a boolean
New Features
#1044 - Add methods to change Plex Home PIN
Improvements
#1028 - Remove sync tests from CI
#1025 - More f-string changes
#1041 - Fix typo in acceptInvite doc string
#1052 - Fix MyPlexAccount.removePin() test
#1053 - Patch deprecated set-output in CI workflow
Thanks to new contributor @richardgetz, @SebastianLuebke, and @mikewebkist.
4.13.0
Bug Fixes
#1013 - Fix searchDiscover handling invalid results
New Features
#785 - Add ManagedHub Object and methods
#983 - Add ability to toggle account view state syncing
#984 - Add PlayedUnplayedMixin
#986 - Add return self to various methods to support chaining
#994 - Add support for using MediaTag objects when editing tags
#998 - Add utils.toJson(obj) function to convert an object to a JSON string
#1009 - Add maxresults parameter to MyPlexAccount.watchlist()
#1010 - Add edition support for movies
Improvements
#990 - Use pagination for /all endpoints
#1000 - Update PlexAPI to f-strings
#1011 - Add workflow dispatch to CI workflow
#1016 - Ensure watchlist is cleared before tests
Thanks to new contributor @josh.
4.12.1
Bug Fixes
#992 - Fix resource mixins to use ratingKey instead of key (Fixes Playlist.uploadPoster())
Improvements
#985 - Expose callbackError parameter in PlexServer.startAlertListener()
#987, #1005 - Remove unused timeout parameter from preferred_connections doc string
#993 - Update search operator docs
Thanks to new contributor @rcarmo.
4.12.0
Breaking Changes
#931 - Create separate PlexSession objects
#963 - Remove Python 3.6 support
#965 - Fix Video.optimize() method
New Features
#958 - Add method to switch Plex Home users
#959 - Add MediaPartStream.languageTag attribute
#968 - Add guids attribute to Artist, Album, and Track
#974 - Add support for Plex OAuth
Bug Fixes
#970 - Fix searching and browsing Discover results
#977 - Remove check for playQueueType when adding items to a PlayQueue
#981 - Fix Artists.matches() when searching by title
Improvements
#955 - Define ratingCount attribute in doc
#978 - Use /related endpoint for hubs
#982 - Use fetchItem for MyPlexAccount.userState()
Thanks to new contributor @MattMcDowall.