Commit graph

1338 commits

Author SHA1 Message Date
JonnyWong16
c41f89bf9b
Factor out artUrl, thumbUrl, bannerUrl to mixins 2021-02-14 19:12:18 -08:00
JonnyWong16
8478ae6e62
Add banner url to show tests 2021-02-14 19:03:19 -08:00
JonnyWong16
1cc60b4358
Add banner mixin for shows 2021-02-14 16:11:50 -08:00
JonnyWong16
b960e2f7a5
Remove unmatch from base PlexObject 2021-02-14 15:08:49 -08:00
JonnyWong16
7fedd01371
Test locking/unlocking fields when adding/removing tags 2021-02-14 14:52:33 -08:00
JonnyWong16
84f787a2cc
Merge remote-tracking branch 'upstream/master' into feature/edit_tags 2021-02-14 14:38:21 -08:00
JonnyWong16
724e6696f8
Merge pull request #664 from JonnyWong16/feature/media_attributes
Add originalTitle attribute to show
2021-02-14 14:35:46 -08:00
JonnyWong16
f66624f2bd
Merge pull request #656 from JonnyWong16/feature/object_parent
Fix checking object parent when the weakref is dead
2021-02-14 14:34:54 -08:00
JonnyWong16
13815f4388
Merge remote-tracking branch 'upstream/master' into feature/media_attributes 2021-02-14 14:23:45 -08:00
JonnyWong16
caa7f10722
Merge remote-tracking branch 'upstream/master' into feature/object_parent 2021-02-14 14:22:53 -08:00
JonnyWong16
1f2c0e8103
Merge remote-tracking branch 'upstream/master' into feature/posters 2021-02-14 14:22:09 -08:00
JonnyWong16
28b1f9e9a6
Add ability to lock/unlock fields when adding/removing tags 2021-02-11 09:28:15 -08:00
JonnyWong16
cc62f5093c
Add originalTitle attribute to show 2021-02-10 21:05:34 -08:00
JonnyWong16
46e902e125
Don't reload for Playable session keys 2021-02-07 15:31:45 -08:00
JonnyWong16
a221b226cd
Explicitly specify the Playable attrs that should not be overwritten 2021-02-07 14:50:28 -08:00
JonnyWong16
15e9ad9f00
Merge branch 'master' into feature/object_parent 2021-02-07 14:46:30 -08:00
JonnyWong16
d87547e2f9
Rename writer mixin 2021-02-07 10:54:03 -08:00
JonnyWong16
02c56841f0
Merge remote-tracking branch 'upstream/master' into feature/posters 2021-02-07 10:46:20 -08:00
Steffen Fredriksen
3f7655e96e
Merge pull request #639 from pkkid/mixin
Move split/merge and unmatch/match to a mixin
2021-02-07 19:37:14 +01:00
Steffen Fredriksen
2be946c207
Merge pull request #657 from JonnyWong16/feature/hidden_season
Fix episode parentKey and parentRatingKey when seasons are hidden in Plex
2021-02-07 19:36:39 +01:00
JonnyWong16
ab13523b17
Don't refresh after editing a tag 2021-02-07 09:45:47 -08:00
JonnyWong16
a073f930dc
Fix capitalization on doc string 2021-02-07 09:45:39 -08:00
JonnyWong16
a7e5763e78
Merge remote-tracking branch 'upstream/master' into feature/posters 2021-02-07 09:33:15 -08:00
JonnyWong16
76fa9a9bf6
Merge remote-tracking branch 'upstream/master' into mixin 2021-02-07 09:29:54 -08:00
JonnyWong16
04a07b3e7d
Check obj is not None for _isChildOf 2021-02-06 20:31:07 -08:00
JonnyWong16
88e69d4664
Merge branch 'master' into feature/edit_tags 2021-02-06 20:27:34 -08:00
JonnyWong16
271f4840e6
Merge branch 'master' into feature/posters 2021-02-06 20:26:46 -08:00
JonnyWong16
21f29f4373
Rename mixins 2021-02-06 20:23:05 -08:00
JonnyWong16
9c1ac7981d
Rename mixins 2021-02-06 20:21:49 -08:00
JonnyWong16
68b77b67b8
Separate art and poster mixin 2021-02-06 20:19:11 -08:00
JonnyWong16
e7772c6f6f
Fix episode's parentKey and parentRatingKey when season's are hidden 2021-02-04 18:56:21 -08:00
JonnyWong16
68045feba2
Fix _isChildOf when weakref is dead 2021-02-04 18:04:08 -08:00
Jason Lawrence
9c0bb00bdb Bump to 4.3.1 2021-02-02 15:49:09 -06:00
Steffen Fredriksen
3b62211268
Merge pull request #650 from JonnyWong16/bugfix/photoalbum_key
Fix photo album key
2021-02-02 08:13:25 +01:00
Steffen Fredriksen
77b1d0e9a3
Merge pull request #651 from JonnyWong16/feature/collection_thumb_art
Add thumbUrl and artUrl properties to Collections
2021-02-02 08:13:05 +01:00
JonnyWong16
a263f49b10
Fix sorting of resource connections (#653)
* Fix sorting of resource connections

* Update resource connect doc strings

* flake8 single variable name connection
2021-02-01 21:59:34 -05:00
blacktwin
63a1d10d11 remove hubs method from Video class 2021-01-25 14:28:47 -05:00
JonnyWong16
5c41bf01ac
Add thumbUrl and artUrl properties to collections 2021-01-25 09:14:25 -08:00
blacktwin
82e62644f5
Merge branch 'master' into reviews_extras 2021-01-25 10:07:08 -05:00
JonnyWong16
43a54d556d
Fix photo album key 2021-01-24 21:28:27 -08:00
JonnyWong16
22bc55a74e
Rename tag plural helper function 2021-01-24 19:44:36 -08:00
Jason Lawrence
d3fbc4f25b Bump to 4.3.0 2021-01-24 21:05:16 -06:00
JonnyWong16
ee28bef80f
Add support for the new Plex Movie agent (#628)
* guids collection to movie and GuidTag PlexObject

* Fix flake8

* Clean up GuidTag and Guid

* Add Plex Movie agent to add library doc string

* Change test bootstrap server movie library to Plex Movie

* Update tests for Plex Movie agent

* Mix movie genre test

Co-authored-by: andyloree <andy@andyloree.com>
2021-01-24 21:03:58 -05:00
Davin Martin
fee5261aaf
Added missing support for /transcode/sessions (#629) 2021-01-24 20:33:07 -05:00
JonnyWong16
5a4d564fd3
Move poster and art to a mixin 2021-01-24 15:29:20 -08:00
JonnyWong16
25ab16502e
Move unmatch and match to mixins 2021-01-24 15:18:28 -08:00
JonnyWong16
3e1e2434a7
Clean up SplitMerge mixin 2021-01-24 15:13:22 -08:00
JonnyWong16
c23d9635f5
Rename to mixins 2021-01-24 15:03:23 -08:00
Hellowlol
f13d0bfe3b
Change class name of the mixin 2021-01-24 14:58:57 -08:00
JonnyWong16
1445be25eb
Merge branch 'master' into feature/posters 2021-01-24 14:51:11 -08:00
JonnyWong16
c1d294b39c
Remove old todo comment 2021-01-24 14:49:40 -08:00
JonnyWong16
1b378d3f1c
Add helper function to get the plural tag 2021-01-24 14:40:39 -08:00
JonnyWong16
cfc5bdae26
Photo plural tags attribute 2021-01-24 14:40:39 -08:00
JonnyWong16
7aaf56a62d
Move all tag editing to a mixin 2021-01-24 14:40:39 -08:00
jjlawren
db344e9e6b
Fix onDeck handling of TV Shows (#641)
* Fix onDeck handling of TV Shows

* Add onDeck for Season, update docstrings

* Clarify docstring wording
2021-01-24 15:49:32 -05:00
JonnyWong16
dfc5aa1eef
Fix server hub searches (#643)
* Add hub search media tag objects

* Fix server search

* Fix hub media tag thumb

* Update server search test with tags
2021-01-24 15:48:38 -05:00
JonnyWong16
a9a44a6a41
Fix related hubs (#642)
* Fix related hubs

* Update hub doc strings

* Add reload method for hubs

* Rename movie hub variable to match XML tag

* Add movie hubs test

* Fix hub test
2021-01-24 15:29:44 -05:00
blacktwin
4f0910ab79
Update to MediaPartStream and inheriting classes (#590)
* moving common child (VideoStream, AudioStream, SubtitleStream) attributes to the parent (MediaPartStream)

* removal of no longer present attribs in video, audio, subtitle streams

* additional attribs to video and mediapart streams

* removal of previously unique subtitleStream attribs. attribs are now common or no longer present.

* docstring cleanup of video, audio, and subtitle stream; pass 1

* remove codecID checks as this attribute is now longer used.

* adding key attrib to parent MediaPartStream.

* add transient to SubtitleStream, found in uploaded subtitles

* removing dialogNorm related assertion as this attrib has been removed.

* update Media class based on PR comments
optimizedVersion to be added, need SEARCHTYPES

* update MediaPartStream class based on PR comments

* update VideoStream class based on PR comments

* update AudioStream class based on PR comments

* update SubtitleStream class based on PR comments

* add LyricStream class based on PR comments

* add streamType int and LyricStream to MediaPartStream.parse method

* add MediaPart.lyricStreams method

* spelling correction

* more movement based on PR comments

* alpha ordering MediaPart

* alpha sort VideoStream

* docstring corrections

* remove assert stream.dialogNorm from audio test as dialogNorm has been removed.

* adding LyricStream to _buildStreams function

* adding changes from @johnnywong16
e346f0b4dc

* moving unused imports down and together

* Address docstring review comments

* Change isChildOf for any kwargs

* Add Media.isOptimizedVersion property

* Add photo and track specific attributes

* Remove dead MediaPartStream.parse method

* Update media doc strings

* Add optimized version doc string

* Cast video stream codedHeight and codedWidth to int

* Add required bandwidths to streams

* Update video tests

* Update audio tests

* Fix video tests

* Fix video tests

* Fix video tests

Co-authored-by: Jason Lawrence <jjlawren@users.noreply.github.com>
Co-authored-by: JonnyWong16 <9099342+JonnyWong16@users.noreply.github.com>
2021-01-24 15:21:56 -05:00
JonnyWong16
13325a50ba
Remove poster and art methods from collections and playlists
* Methods are already defined in PlexPartialObject
2021-01-24 11:12:02 -08:00
JonnyWong16
bc153b8896
Update poster and art doc strings 2021-01-24 11:10:11 -08:00
JonnyWong16
48c41a1c68
Separate Poster and Art objects 2021-01-24 11:09:42 -08:00
jjlawren
4da40789ea
Reduce log level of MyPlex resource connection attempts (#647) 2021-01-20 13:07:03 -05:00
blacktwin
35fb440cc1 update REMOVEINVITE string (#584) 2021-01-19 12:35:35 -05:00
blacktwin
0f0cd03f82
correction of import 2021-01-18 15:57:41 -05:00
blacktwin
ddbd07e571
Merge branch 'master' into reviews_extras 2021-01-18 15:53:40 -05:00
Steffen Fredriksen
ed0532c040
Merge pull request #535 from nwithan8/patch-2
Playlist creation - check items are included, raise exception
2021-01-11 23:13:18 +01:00
JonnyWong16
b7b32fb99d
Raise not found for missing bandwidth account/device 2021-01-03 10:50:07 -08:00
JonnyWong16
345d0b2743
Replace findItems with fetchItems 2021-01-03 10:41:38 -08:00
JonnyWong16
f0b680426f
Fix bandwidth doc string 2021-01-02 18:21:50 -08:00
JonnyWong16
5fa3e90e80
Fix flake8 2021-01-02 18:14:35 -08:00
JonnyWong16
8598236994
Add timestamp to statistic repr 2021-01-02 18:11:34 -08:00
JonnyWong16
97844688ab
Flip bandwidth timespan conditional 2021-01-02 18:08:43 -08:00
JonnyWong16
59e79242a7
Replace devices in SystemDevice repr 2021-01-02 18:04:46 -08:00
JonnyWong16
57fe3bd12f
Default bandwidth timespan to seconds 2021-01-02 18:02:29 -08:00
JonnyWong16
d5cf467592
Rename method to bandwidth and resources 2021-01-02 18:01:55 -08:00
JonnyWong16
3cae35a280
Return list of dashboard bandwidth and resources directly 2021-01-02 17:54:48 -08:00
JonnyWong16
9030759e99
Cache system accounts and system devices 2021-01-02 17:54:17 -08:00
JonnyWong16
ed90911781
Rename statistics account and device to system account and device 2021-01-02 17:25:39 -08:00
JonnyWong16
6b5b8c82a1
Update dashboard doc strings 2021-01-02 17:04:00 -08:00
JonnyWong16
eeda5dfd67
Fix exception doc strings 2021-01-02 16:44:18 -08:00
JonnyWong16
f8c325ce2f
Add server dashboard bandwidth and resources 2021-01-02 16:44:02 -08:00
JonnyWong16
ebdaedeba7
Fix getting season=0 or episode=0 2020-12-30 15:49:26 -08:00
Hellowlol
3526b8cdeb Allow specials. 2020-12-31 00:35:57 +01:00
Hellowlol
f2e7e891cb Fix a test in navigation
keep compat for season(int)
2020-12-30 23:58:01 +01:00
JonnyWong16
5b78f6b482
Merge branch 'master' into feature/media_attributes 2020-12-30 12:53:17 -08:00
JonnyWong16
d5c29cc626
Override libtype for PhotoSection.all() 2020-12-26 20:53:55 -08:00
JonnyWong16
810c5566c3
Fix playlist tests 2020-12-24 09:21:29 -08:00
JonnyWong16
2765bee2b3
Fix audio tracks key 2020-12-24 09:21:17 -08:00
JonnyWong16
1ce97102cd
Fix typo in library totalSize doc string 2020-12-24 09:08:52 -08:00
JonnyWong16
5df75728b3
Fix flake8 2020-12-23 23:05:08 -08:00
JonnyWong16
c1a1d1616b
Add Playlist.item() method 2020-12-23 22:32:48 -08:00
JonnyWong16
949d37bc2f
Update listAttrs doc string 2020-12-23 22:29:26 -08:00
JonnyWong16
b7f813aacd
Add Playlist attributes doc string 2020-12-23 22:25:10 -08:00
JonnyWong16
f41be90a3a
More doc string clean up 2020-12-23 22:24:46 -08:00
JonnyWong16
3430c245e2
Make sure key defaults to blank string so fix #50 works 2020-12-23 22:17:43 -08:00
JonnyWong16
8206dfbade
Fix flake8 2020-12-23 22:00:00 -08:00
JonnyWong16
2acb75f86f
Update all methods used to get an object's children 2020-12-23 21:38:48 -08:00
JonnyWong16
6f5cae2a72
More etag relacement with classes 2020-12-23 20:48:58 -08:00
JonnyWong16
d433c0b3d4
Update locations doc strings for consistency 2020-12-23 20:40:08 -08:00
JonnyWong16
7f1e2cafab
Update LibrarySection doc strings 2020-12-23 20:39:45 -08:00
JonnyWong16
41342b4f7b
Replace use of etag with class 2020-12-23 20:39:15 -08:00
JonnyWong16
00f80cb424
Check if LibrarySection.search() filter is an OPERATOR 2020-12-23 17:13:51 -08:00
JonnyWong16
473b7aae65
Pass remaining filtered kwargs to LibrarySection.search() 2020-12-23 17:00:14 -08:00
JonnyWong16
1d0527bd7e
Update LibrarySection.all() method
* Uses LibrarySection.search() for more filter/sorting options and faster paging of results
2020-12-23 17:00:14 -08:00
JonnyWong16
99c447525a
Update library.Collection attributes 2020-12-23 16:16:22 -08:00
JonnyWong16
cf56d9a13c
Update photo attributes 2020-12-23 16:16:22 -08:00
JonnyWong16
1c5942986d
Update video attributes 2020-12-23 15:53:57 -08:00
JonnyWong16
50633d3601
Update audio attributes 2020-12-23 15:53:57 -08:00
JonnyWong16
497ceaec9e
Add Style media tag 2020-12-23 15:53:57 -08:00
JonnyWong16
9d23ec072e
Fix race condition in create MyPlexDevice from #620 (#625)
* Make test Plex Pass entitlements a subset

* Fix create MyPlexDevice race condition

* Rename to clientId to be consistent

* Move link method to MyPlexAccount
2020-12-15 22:41:04 -06:00
Steffen Fredriksen
dcd2663645
Merge pull request #616 from JonnyWong16/bugfix/collection_children
Fix collection children
2020-12-14 00:45:30 +01:00
JonnyWong16
edd5b514ed
Rename _isChildOf method 2020-12-13 12:41:53 -08:00
JonnyWong16
6cb2168ef0
Update PlexObject doc string 2020-12-13 12:41:43 -08:00
JonnyWong16
0d6c43558a
Add method to keep track of the parent PlexObject 2020-12-13 12:41:43 -08:00
JonnyWong16
aa9b530b2e
Fix doc building with DeprecationWarning 2020-12-13 12:36:43 -08:00
JonnyWong16
110789dd0c
Add utils.deprecated decorator function 2020-12-13 12:08:38 -08:00
JonnyWong16
4a3d7db9fa
Restore deprecated Collection.children 2020-12-13 11:59:37 -08:00
JonnyWong16
8958aea67f
Change collection children to items 2020-12-13 11:33:27 -08:00
JonnyWong16
a341cdad5b
Fix collection children 2020-12-13 11:33:00 -08:00
JonnyWong16
2cf0d7edab
Fix rare case where details_key is None 2020-12-06 19:04:18 -08:00
JonnyWong16
d88d5f7290
No cover for createMyPlexDevice 2020-12-06 17:42:44 -08:00
JonnyWong16
f6d61857ad
Only show Deprecation warnings 2020-12-06 17:42:44 -08:00
JonnyWong16
f70058ad13
Add helper function to create a Plex device 2020-12-06 17:42:44 -08:00
JonnyWong16
121d54d86c
Retrieve device using clientIdentifier 2020-12-06 17:42:44 -08:00
JonnyWong16
966ac5515b
Allow custom headers for MyPlexPinLogin 2020-12-06 17:42:44 -08:00
JonnyWong16
9adf29f2c6
Update MyPlexPinLogin for Plex API v2
* Also adds method to link a device using the pin
2020-12-06 17:42:44 -08:00
Steffen Fredriksen
f22fa5694b
Merge pull request #597 from jjlawren/get_playqueue
Add method to retrieve a PlayQueue
2020-12-05 14:13:23 +01:00
Steffen Fredriksen
ad7709611e
Merge pull request #608 from JonnyWong16/bugfix/doc_build
Update building documentation using napoleon
2020-12-05 14:12:21 +01:00
JonnyWong16
422f82ead4
Test Collection delete by creating a new collection 2020-12-05 01:08:00 -08:00
JonnyWong16
9786546a05
Also log DeprecationWarning 2020-12-04 23:54:43 -08:00
JonnyWong16
d4c22617cb
Add LibrarySection playlists method 2020-12-04 12:28:11 -08:00
JonnyWong16
86d51bae6c
Change LibrarySection collections method to plural
* Add DeprecationWarning to old collection method
* Add NotImplementedError for PhotoSection.collections()
2020-12-04 12:27:45 -08:00
jjlawren
f4229050d4
Allow setting token env in tests (#610)
* Allow setting token env for test runs

* Use existing config option

* Use token in CI tests
2020-12-04 11:37:19 -06:00
JonnyWong16
b451b22bb8
Fix doc building 2020-11-23 12:20:56 -08:00
Steffen Fredriksen
ae59620e9a
Merge pull request #601 from JonnyWong16/server_browse
Add ability to browse and walk the Plex server system file directories
2020-11-23 07:48:53 +01:00
Steffen Fredriksen
b623b43a58
Merge pull request #606 from JonnyWong16/bugfix/full_object
Fix Collections stuck as partial object after reloading
2020-11-23 07:47:10 +01:00
Steffen Fredriksen
35c5d0d532
Merge pull request #607 from JonnyWong16/feature/custom_includes
Add ability to customize XML includes when reloading object
2020-11-23 07:46:37 +01:00
JonnyWong16
274b05e913
Fix raise exception docs 2020-11-22 20:43:59 -08:00
JonnyWong16
7f7d03236b
Fix docstrings 2020-11-22 19:06:30 -08:00
JonnyWong16
33f7aa43a5
Fix docstring 2020-11-22 19:04:14 -08:00
JonnyWong16
f3e9425a2c
Update docstring from artBlurHash and thumbBlurHash 2020-11-21 21:25:24 -08:00
JonnyWong16
9fb3eaf41c
Add thumbBlurHash and artBlurHash attributes with includeFields 2020-11-21 20:02:31 -08:00
JonnyWong16
178217a981
Improve docstring for reload 2020-11-21 19:52:33 -08:00
JonnyWong16
a5690579d5
Refactor includes to PlexPartialObject
* Allows includes to be used by Audio, Video, Photoalbum, Photo, Collections, and Playlist
2020-11-21 19:52:01 -08:00
JonnyWong16
fa4d8a45af
Collection mode default is -1 2020-11-21 17:35:33 -08:00
JonnyWong16
387ab17072
Settings __getattr__ needs to raise AttributeError 2020-11-21 14:49:21 -08:00
JonnyWong16
a12f8b09e5
Ensure sorted parameters in details key 2020-11-21 13:20:53 -08:00
JonnyWong16
d59d199ee7
Always build default details key 2020-11-21 12:08:27 -08:00
JonnyWong16
b60e541b00
Fix Collections stuck as partial object after reloading 2020-11-20 20:54:43 -08:00
JonnyWong16
0d27aa3f8e
Replace uses of details key in Show and Collection 2020-11-20 20:46:35 -08:00
JonnyWong16
c171aa2745
Allow customizing XML includes when reloading
pkkid/python-plexapi#603
2020-11-20 19:54:07 -08:00
JonnyWong16
b9c3a93c67
Add path parameter to library update 2020-11-20 17:05:57 -08:00
JonnyWong16
0450cd10a4
Browse and walk docstring to specify full path 2020-11-20 17:00:45 -08:00
JonnyWong16
71904cca15
Clean Path and File docstring 2020-11-15 21:28:58 -08:00
JonnyWong16
4091a0b272
Make includeFiles optional in PlexServer.browse() 2020-11-15 21:21:08 -08:00
JonnyWong16
93280dd979
Allow PlexServer.browse() and .walk() using a Path object 2020-11-15 21:10:13 -08:00
JonnyWong16
7298b3c606
Add ability to browse and walk the Plex server system file directories 2020-11-15 17:54:48 -08:00
Jason Lawrence
e22bc81f35 Docstring flake adjustment 2020-11-02 19:24:25 -06:00
Jason Lawrence
b59dd3303f Add method to retrieve a PlayQueue 2020-11-02 17:18:46 -06:00
jjlawren
6430f06e6b
Bump to 4.2.0 release (#596) 2020-11-01 15:03:34 -06:00
jjlawren
2f4a7506dc
Make Photo objects Playable (#592)
* Make Photo objects Playable

* Add more attributes
2020-11-01 15:02:23 -06:00
Steffen Fredriksen
380fd784c4
Merge pull request #582 from pkkid/photo_download
Add download feature to Photo library
2020-11-01 13:06:41 +01:00
Steffen Fredriksen
da1181228a
Merge pull request #583 from pkkid/clean_optimize
Updating cleanBundles() and optimize() methods
2020-11-01 13:05:38 +01:00
Steffen Fredriksen
114d907443
Merge pull request #585 from jjlawren/gdm_scan_clients_with_all
Allow scanning for clients when using GDM.all()
2020-11-01 13:05:07 +01:00
Steffen Fredriksen
60d1fc6daa
Merge pull request #588 from pkkid/field_correction
Collection fields not pulling locked fields
2020-11-01 13:01:45 +01:00
jjlawren
83947b0e29
Don't overwrite existing attributes with an empty list (#594)
* Don't overwrite existing attributes with an empty list

* Also check for empty lists in __eq__
2020-10-31 00:13:19 -05:00
blacktwin
3865ab9919 Merge remote-tracking branch 'remotes/origin/master' into reviews_extras 2020-10-23 15:54:25 -04:00
blacktwin
11dcf0b5f4 Merge remote-tracking branch 'remotes/origin/master' into photo_download 2020-10-23 15:50:20 -04:00
blacktwin
c6458a41a5 addressing #587 2020-10-21 08:58:56 -04:00
Jason Lawrence
40e295ddf9 Allow scanning for clients when using GDM.all() 2020-10-13 17:00:34 -05:00
blacktwin
b8fbe7235f updating cleanBundles() and optimize() methods 2020-10-10 15:09:22 -04:00
blacktwin
411018dd37 add iterParts() and download() methods to Photoalbum class 2020-10-10 15:00:19 -04:00
blacktwin
0e8b2e88db add download() method to Photo class 2020-10-10 14:55:49 -04:00
blacktwin
717b274d82 add iterParts() method to Photo class 2020-10-10 14:55:16 -04:00
jjlawren
7dad2a8931
Add server handling of HTTP status code 204 (#580) 2020-10-08 12:51:19 -05:00
blacktwin
1f683c514b
Merge branch 'master' into reviews_extras 2020-10-07 11:18:28 -04:00
Ryan Meek
f9f3535751
Update timeline to return an active timeline object w/ attributes (#572)
* timeline() now returns ClientTimeline objects

* timeline() creates and returns ClientTimeline objects with associated attributes and caching
* Refactor isPlayingMedia to use the new attributes and fix it's default value

* Clarify docstrings

* Remove default param in timeline call & fix docstring typo

* return empty list if `timelines()` comes back empty

Web clients can occasionally return no timelines if no media has been played on them or if nothing has played for a while, this prevents errors in those cases.

* typo

* Workaround for unresponsive clients

* Use sendCommand rather than timelines() for PTP workaround

* Remove workaround, set timeline's wait default to 1

* set timelines() wait default to 0, document buggy behavior

* Use ClientTimeline.key for consistency

Co-authored-by: jjlawren <jjlawren@users.noreply.github.com>

* cast playQueue's IDs as int

Co-authored-by: jjlawren <jjlawren@users.noreply.github.com>

* Add audio attribs & make casts bool from int where it makes sense.

Co-authored-by: jjlawren <jjlawren@users.noreply.github.com>
2020-10-02 11:33:53 -05:00
Steffen Fredriksen
163d94d249
Merge pull request #507 from pkkid/show_advanced_setting
Edit Library and Show's Advanced Settings
2020-10-02 12:24:08 +02:00
Steffen Fredriksen
6a5981c888
Merge pull request #518 from pkkid/library_hubs
Library Hubs and Music Stations
2020-10-01 15:47:59 +02:00
jjlawren
eef7b3f843
Bump to 4.1.2 release (#578)
Compatibility fixes for Python 3.5
2020-09-28 13:23:46 -05:00
blacktwin
4f96838b3d update sort field in library.ShowSection.recentlyAdded method 2020-09-28 13:51:53 -04:00
Andrew Gaffney
14b8d0e8c8
Replace format strings with explicit call to format() for backward compatibility (fixes #576) (#577) 2020-09-28 08:41:18 -05:00
blacktwin
d5f9004e7b
Merge branch 'master' into library_hubs 2020-09-28 08:13:59 -04:00
blacktwin
56b6138ca7
Merge branch 'master' into show_advanced_setting 2020-09-28 08:12:39 -04:00
jjlawren
737401be0e
Bump to 4.1.1 release (#574) 2020-09-21 16:17:47 -05:00
jjlawren
860ad7bc3e
Add Library timeline support (#573)
* Add Library timeline support

* Retry intentional failure with different canary test

* Temporarily disable activities tests

* Set tests for normal runs

* Add tests to validate library timeline attributes
2020-09-21 16:06:14 -05:00
jjlawren
8410d81520
Add 'activities' endpoint support (#569)
* Add /activities endpoint support

* Fix typos, return a list instead of iterator

* Canary test to validate CI behavior

* Increase timer of canary test to ensure proper run

* Move test to front of run, provide auth and anon versions

* Fix typo
2020-09-16 18:16:01 -05:00
jjlawren
fb82bc402b
Playqueue improvements (#563)
* Allow creating PlayQueues with multiple items, appending items

* Fix single-item playqueues, fix 'next', fix docstrings, run black

* Docstring updates

* More documentation fixes

* Allow removing items from a PlayQueue

* Use f-strings for readability

* Add ability to move items within the PlayQueue

* Cast attributes to proper types, update docs

* Format with black

* flake8 and sphinx fixes

* Reformat with black

* Update __contains__ to accept media objects

* Operate using media items, use methods similar to playlists

* Rename parameter to better match behavior

* Help users by automatically finding appropriate playQueueItemID values

* Add refresh method, auto-refresh before modifying playqueues

* Reformat with black

* Add TAG and TYPE to PlayQueue objects

* Review comments, add playQueueSelectedMetadataItemKey for Chromecast convenience

* Allow setting the playback start point in the PlayQueue

* Add tests, simplify size check

* Use camel case for helper function

* Add a helper to provide the selected item media object
2020-09-11 16:23:27 -05:00
blacktwin
58a432f176 flake fix 2020-09-09 15:25:38 -04:00
blacktwin
c6f60d231c flake fix 2020-09-09 15:25:07 -04:00
Kyle Zimmerman
ad8fd58c66
Add optional continuous arg to PlayQueue.create() (#561) 2020-09-05 23:33:32 -05:00
blacktwin
bb9a1b2573 flake fix 2020-08-31 21:12:36 -04:00
blacktwin
132e37995d
Merge branch 'master' into reviews_extras 2020-08-30 02:21:51 -04:00
blacktwin
de83d245c8 add updateOptOut method for MyAccount.AccountOptOut class 2020-08-30 02:02:07 -04:00
blacktwin
1316d4ae43 spacing 2020-08-30 01:18:26 -04:00
blacktwin
34e1ea3444 master conflict resolution 2020-08-30 01:11:26 -04:00
jjlawren
f0afbc6922
Bump to 4.1.0 release (#556)
Change log: https://github.com/pkkid/python-plexapi/compare/4.0.0...79e99af
2020-08-20 11:01:53 -05:00
jjlawren
5b7d48fc26
Improve clips handling (#541)
* Improve clips handling

* Remove year, add extraType

* Don't bother refreshing for missing attribute

* Update with attributes found in payload

* Update docstrings for clips
2020-08-20 10:08:47 -05:00
jjlawren
fe27d7644f
Add iterator for Playlist objects (#549) 2020-08-11 12:11:53 -05:00
Steffen Fredriksen
d73cec3b7d
Fix some flake issues (#540) 2020-08-07 15:34:57 -05:00
jjlawren
dbc5adc744
Fix datetime import error in utils.py (#545) 2020-08-07 15:31:54 -05:00
jjlawren
eaff00d728
Fix Album iterator (#544) 2020-08-07 12:47:26 -05:00
blacktwin
7d97834b03
Merge branch 'master' into library_hubs 2020-08-02 23:44:11 -04:00
Steffen Fredriksen
07674a2c65
Merge pull request #512 from pkkid/optimize_update
Video optimize update
2020-08-02 16:11:05 +02:00
Steffen Fredriksen
5299282599
Merge pull request #509 from pkkid/adding_fields
Add fields to most objects
2020-08-02 16:09:33 +02:00
blacktwin
614108fb63 create allSubfolders method for library.Folder class 2020-07-30 10:33:58 -04:00
blacktwin
18973e2f2d update editAdvanced method to work with py2 drop 2020-07-28 11:16:31 -04:00
blacktwin
5045ddc04b removed deprecated _str function as py2 support has been dropped
update _str references to use builin str instead
update settings.Preferences class for py2 drop
2020-07-28 11:15:29 -04:00
blacktwin
252d7e05a8 update video.Video.optimize method to use new library.LibrarySection._locations method 2020-07-24 14:11:01 -04:00
blacktwin
3c0fa04a12 create _locations method in library.LibrarySection to return the librar.Location objects 2020-07-24 14:09:58 -04:00
blacktwin
142448b4c8 return library.LibrarySection.locations to previous listAttrs that returns a str 2020-07-24 14:09:13 -04:00
Steffen Fredriksen
6573b8b562
Merge pull request #531 from tdorsey/patch-2
chore(utils): fix typo
2020-07-24 12:01:35 +02:00
Nate Harris
f5647e52c2
Playlist creation - check items are included, raise exception 2020-07-23 19:31:27 -04:00
tdorsey
7c346f9917
chore(utils): fix typo 2020-07-18 08:45:41 -04:00
blacktwin
998ed04a6c update docstrings for AccountSettings and AccountOptOut 2020-07-16 21:21:26 -04:00
blacktwin
de58965a9d add check in augmentation method for Plex Pass or tidal opt-in
update docstring for method
2020-07-16 21:10:50 -04:00
blacktwin
b917a33131 create settings method and myplex.AccountSettings class 2020-07-16 21:05:35 -04:00
blacktwin
120dbc5f1c create AccountOptOut class 2020-07-16 21:01:49 -04:00
blacktwin
50515730b0 create onlineMediaSources method
pulls in opt in/out status of Online Media Sources
2020-07-16 21:00:45 -04:00
blacktwin
fd89bacba2 add SETTINGS endpoint for user settings 2020-07-16 20:59:27 -04:00
blacktwin
c46aa3b5bb create augmentation method in video.Video 2020-07-16 05:29:52 -04:00
blacktwin
f36f549681 video.Video hubs method correction 2020-07-16 05:27:44 -04:00
blacktwin
c0454f6eb5 import MediaContainer from base 2020-07-15 16:15:35 -04:00
blacktwin
451b689c0d create MediaContainer class in base.py 2020-07-15 16:09:05 -04:00
blacktwin
6f37a7b8c2 move hubs into video.Video 2020-07-15 16:07:02 -04:00
blacktwin
3fcfe23d23 add extras method to video.Movie class 2020-07-15 14:42:23 -04:00
blacktwin
7b364a5cb8 create Extra class in video 2020-07-15 14:41:52 -04:00
blacktwin
c7f8b86ec5 add reviews method to video.Movie class 2020-07-15 14:41:09 -04:00
blacktwin
4b908a8f2d create media.Review class 2020-07-15 14:37:46 -04:00
blacktwin
83c4e64ed6 add library.Collection._preferences() method 2020-07-02 14:40:28 -04:00
blacktwin
2112f778db create library.folders method 2020-07-02 01:33:36 -04:00
blacktwin
a5b5438122 create library.Folder class 2020-07-02 01:33:18 -04:00
blacktwin
f079f7d061 library.FirstCharacter docstring 2020-07-02 00:43:21 -04:00
blacktwin
5c3695d223 library.FieldType docstring 2020-07-02 00:42:51 -04:00
blacktwin
6cad8c1eb0 library.Operator docstring 2020-07-02 00:42:28 -04:00
blacktwin
8aa492f195 library.FilterField docstring 2020-07-02 00:40:51 -04:00
blacktwin
bf5d8b8ba3 library.Sort docstring 2020-07-02 00:40:12 -04:00
blacktwin
1e58e9c5fd library.Field class rename to FilterField
update library.LibrarySection.filterFields() usage
2020-07-02 00:39:34 -04:00
blacktwin
8eadcb28aa library.LibrarySection.filterFields() docstring 2020-07-02 00:37:50 -04:00
blacktwin
257b7ae61e library.LibrarySection._sorts() docstring 2020-07-02 00:36:46 -04:00
blacktwin
23e641eaa3 change if to check both conditions at the same time.
thanks @hellowlol
2020-07-01 22:28:25 -04:00
blacktwin
ea6538f596 removal of all ALLOWED_FILTERS, ALLOWED_SORT, BOOLEAN_FILTERS instances and docstring references. 2020-06-30 09:39:16 -04:00
blacktwin
14c122c87b update library.LibrarySection._cleanSearchSort method to pull sort keys from LibrarySection._sorts() instead of using hardcoded ALLOWED_SORT. 2020-06-30 09:33:53 -04:00
blacktwin
a665d6f3ee update library.LibrarySection._cleanSearchFilter method to pull categories from LibrarySection.filterFields() instead of using hardcoded ALLOWED_FILTERS or BOOLEAN_FILTERS. 2020-06-30 09:32:58 -04:00
blacktwin
9ec2399b21 add filterFields method to library.LibrarySection 2020-06-30 09:24:12 -04:00
blacktwin
9936ee553d create Field, Operator, and FieldType classes 2020-06-30 09:23:18 -04:00
blacktwin
d0943a369e add firstCharacterKey attribute to library.Sort class 2020-06-30 09:21:44 -04:00
blacktwin
4a49ca97b0 add _sorts method 2020-06-30 09:19:53 -04:00
blacktwin
e5d79c7518 add Sort class 2020-06-30 09:06:26 -04:00
blacktwin
c1cef679cc add firstCharacter method to library.LibrarySection 2020-06-30 09:00:50 -04:00
blacktwin
847d21f79d add FirstCharacter class 2020-06-30 08:59:30 -04:00
Jason Lawrence
4c8fef144e Fix ElementTree warnings 2020-06-29 17:31:05 -05:00
blacktwin
3746b4ecb5 removal of registerPlexObject as the only usage calls this class directly. 2020-06-29 13:39:48 -04:00
blacktwin
6829bb2759 add _filter method to library.LibrarySection
referencing #209
2020-06-22 15:44:48 -04:00
blacktwin
ea88be39a0 add Filter class to library
referencing #209
2020-06-22 15:44:46 -04:00
blacktwin
c988f393a7 library.Station docstring update. 2020-06-22 15:27:45 -04:00
blacktwin
ee9cb7dc85 add hubs method to library.LibrarySection 2020-06-22 15:04:33 -04:00
blacktwin
bd536db7ac add stations method to library.MusicSection 2020-06-22 15:03:28 -04:00
blacktwin
c665546185 create library.Station class for stations found in music libraries 2020-06-22 15:02:48 -04:00
blacktwin
38b863b8da correction for library.librarySection.defaultAdvanced method 2020-06-18 10:03:47 -04:00
Hellowlol
d7c215b119 Small change to the repr and add test. 2020-06-14 20:21:46 +02:00
blacktwin
881a4fc659 use utils.millisecondToHuman for media.Marker.__repr__ 2020-06-13 22:12:35 -04:00
blacktwin
3852ed52a7 create millisecondToHuman method in utils 2020-06-13 22:12:01 -04:00
blacktwin
faeee7d667 import timedelta to utils 2020-06-13 22:11:39 -04:00
blacktwin
9685b57ad2 importing base.PlexPartialObject and applying it to library.Collections
this will allow collections to use the base.PlexPartialObject.edit method
2020-06-12 14:14:09 -04:00
blacktwin
6dc19386c2 adding art attribute to video.Video
addressing #511
2020-06-12 13:22:15 -04:00
blacktwin
81dcd58618 add art attrib to library.Collection
addressing #511
2020-06-12 13:22:13 -04:00
blacktwin
59fcdb4080 add defaultAdvanced method to library.LibrarySection 2020-06-09 23:32:22 -04:00
blacktwin
7474e7d28e add editAdvanced method to library.LibrarySection
addressing #450
2020-06-09 23:25:23 -04:00
blacktwin
ffe07ac1c6 video.optimize method docstring update. 2020-06-09 15:58:08 -04:00
blacktwin
43b1bfb64b update video.optimize method to use new Locations attributes 2020-06-09 15:57:47 -04:00
blacktwin
ad55514be9 update library.LibrarySection locations attribute to use new Location class. 2020-06-09 15:56:59 -04:00
blacktwin
506a791260 create library.Location class 2020-06-09 15:56:21 -04:00
blacktwin
70dd6704be library EOF flake fix 2020-06-06 14:15:23 -04:00
blacktwin
615d702487 photo EOF flake fix 2020-06-06 14:14:38 -04:00
blacktwin
03c2ece89d audio EOF flake fix 2020-06-06 14:14:03 -04:00
blacktwin
78656ab2a4 update to library.Collection docstring 2020-06-06 14:01:16 -04:00
blacktwin
33955472c7 adding additional attributes to library.Collection class
thanks @jonnyWong16
2020-06-06 14:00:44 -04:00
blacktwin
db2a210f37 adding fields attribute to library.Collections
reordered attributes
docstring update
2020-06-05 15:43:05 -04:00
blacktwin
a12fd18e54 adding fields attribute to audio.Audio
docstring update
2020-06-05 15:42:22 -04:00
blacktwin
de47470a43 adding fields attribute to video.Video
docstring update
2020-06-05 15:42:03 -04:00
blacktwin
4644a33fb7 adding fields attribute to photo.Photo and photo.Photoalbum
docstring update
2020-06-05 15:41:49 -04:00
blacktwin
d0975a8a73 docstrings for new methods. 2020-06-05 14:20:39 -04:00
blacktwin
0974b1e2b1 _default docstring 2020-06-05 14:18:35 -04:00
blacktwin
0b31454c0f add _default method to Preferences class 2020-06-05 14:12:59 -04:00
blacktwin
2c256f89c2 add _initpath to Preferences atrributes 2020-06-05 14:12:30 -04:00
blacktwin
afe25d19ac create defaultAdvanced method
allows for defaulting all advanced settings
2020-06-05 13:48:34 -04:00
blacktwin
0dbdff4b03 create editAdvanced method
allow for editing a show's advanced settings using kwargs
2020-06-05 13:41:48 -04:00
blacktwin
1f396ca95a
remove field attribute
Addressing #504 

remove field attribute as it is no longer available.
adding `__repr__` to Marker class resulting in `<Marker:intro:139770:230481>`
2020-06-04 23:21:03 -04:00
Hellowlol
f2f6d8b9e7 forgot to bump 2020-06-02 21:12:57 +02:00
Steffen Fredriksen
b98d2e91e0
Merge pull request #498 from pkkid/intro_marker
intro_marker
2020-06-02 20:59:41 +02:00
Steffen Fredriksen
785a2f064b
Merge pull request #489 from jjlawren/timeline_do_not_subscribe
Remove 'timeline/subscribe' calls
2020-06-02 20:59:20 +02:00
blacktwin
1d8d76ef56
Merge branch 'master' into intro_marker 2020-05-27 21:48:41 -04:00
blacktwin
2d4a919a40 resolving conflict 2020-05-27 21:53:04 -04:00
blacktwin
558eafa44f no need for double bool 2020-05-27 12:26:54 -04:00
blacktwin
660a665366 only check for intro markers in case Plex decides to add different marker types in the future
thanks @jonnywong16
2020-05-27 12:15:56 -04:00
jjlawren
4a24d50036
Reduce timeout to expire Sonos resource cache (#500) 2020-05-27 09:36:55 -05:00
jjlawren
4193012bc2
Improve Sonos ID lookup (#496) 2020-05-26 15:09:39 -05:00
blacktwin
a2ef4a5564 create hasIntroMarker method to quickly identify if an episode has an intro marker 2020-05-24 22:57:02 -04:00
blacktwin
5e3dff4e32 update analyze docstring to include new intro video marker 2020-05-24 22:55:52 -04:00