Commit graph

1360 commits

Author SHA1 Message Date
Hellowlol
e6dbf833d4 inital smart playlist 2018-11-16 23:47:49 +01:00
Josh Wood
7dbc02514c (feat): allow MusicSection search by track.userRating and sort by userRating 2018-11-11 10:32:15 -06:00
Michael Shepanski
bf57116693 Merge branch 'master' of github.com:pkkid/python-plexapi 2018-10-28 01:05:20 -04:00
Michael Shepanski
4f5ce34b17 Ignore new flake8 check 2018-10-24 09:22:04 -04:00
Michael Shepanski
d6b581e877 Fix bad test 2018-10-24 09:11:48 -04:00
Michael Shepanski
574d023093 Added keepSeason tag to keep only the latest season 2018-10-14 21:43:27 -04:00
Michael Shepanski
1c79c4d9a3 Increase version number 2018-10-05 08:19:12 -04:00
Michael Shepanski
ba0821f348
Merge pull request #307 from andrey-yantsen/fix-docs-in-new-sphinx
fix docs for Raises clauses
2018-10-04 09:32:17 -04:00
Michael Shepanski
58b1ab738f
Merge pull request #302 from andrey-yantsen/enable_test_for_pr
Run tests over unclaimed server
2018-10-04 09:22:19 -04:00
Andrey Yantsen
7a67417615 fix docs for Raises clauses 2018-10-03 11:09:43 +01:00
Michael Shepanski
8c26cc6017
Merge pull request #303 from blacktwin/patch-1
additional attributes
2018-10-02 11:25:44 -04:00
blacktwin
60fe55e722
Update media.py
videoProfile doc
2018-10-02 10:52:32 -04:00
blacktwin
a394db6acc
additional attributes
target, title and video profile.  Optimizing items through Plex now allows for adding a title to the version. Target and title are the version name and seem to be the same value.
2018-09-20 09:56:12 -04:00
Andrey Yantsen
c63790ae45 add COVERALLS_PARALLEL=true to coveralls run 2018-09-16 09:49:47 +01:00
Andrey Yantsen
06742e87e8 run tests over unclaimed server 2018-09-15 21:44:39 +01:00
Hellowlol
8f7e315f6f
Merge pull request #300 from andrey-yantsen/fix-tests
Fix tests
2018-09-15 01:46:00 +02:00
Andrey Yantsen
a774925f8c do not run tests, except flake8, on pull requests 2018-09-14 23:45:53 +01:00
Andrey Yantsen
4e2fa8254b fix utils test 2018-09-14 23:29:14 +01:00
Andrey Yantsen
a0135f8190 fix flake 2018-09-14 23:26:14 +01:00
Andrey Yantsen
12a318a8e2 Add a method to request a claim token (#287)
* add MyPlexAccount.claimToken()

* improve docstring for MyPlexAccount.claimToken()
2018-09-14 20:52:26 +02:00
Andrey Yantsen
93ec86d746 add enable_fast_connect configuration parameter (#288) 2018-09-14 20:28:35 +02:00
Andrey Yantsen
057967a8ae Library section id for all (#292)
* add librarySectionID for each item if MediaContainer had one

* fix getting section for photos which are not in album yet

* another approach
2018-09-14 20:27:24 +02:00
Andrey Yantsen
68fc970d7a Improvements in tests process (#297)
* lets begin

* skip plexpass tests if there is not plexpass on account

* test new myplex attrubutes

* bootstrap: proper photos organisation

* fix rest of photos tests

* fix myplex new attributes test

* fix music bootstrap by setting agent to lastfm

* fix sync tests

* increase bootstrap timeout

* remove timeout from .travis.yml

* do not create playlist-style photoalbums in plex-bootstraptest.py

* allow negative filtering in LibrarySection.search()

* fix sync tests once again

* use sendCrashReports in test_settings

* fix test_settings

* fix test_video

* do not accept eula in bootstrap

* fix PlexServer.isLatest()

* add test against old version of PlexServer

* fix MyPlexAccount.OutOut

* add flag for one-time testing in Travis

* fix test_library onDeck tests

* fix more tests

* use tqdm in plex-bootstraptest for media scanning progress

* create sections one-by-one

* update docs on AlertListener for timeline entries

* fix plex-bootstraptest for server version 1.3.2

* display skip/xpass/xfail reasons

* fix tests on 1.3

* wait for music to be fully processed in plex-bootstraptest

* fix misplaced TEST_ACCOUNT_ONCE

* fix test_myplex_users, not sure if in proper-way

* add pytest-rerunfailures; mark test_myplex_optout as flaky

* fix comment

* Revert "add pytest-rerunfailures; mark test_myplex_optout as flaky"

This reverts commit 580e4c95a7.

* restart plex container on failure

* add conftest.wait_until() and used where some retries are required

* add more wait_until() usage in test_sync

* fix managed user search

* fix updating managed users in myplex

* allow to add new servers to existent users

* add new server to a shared user while bootstrapping

* add some docs on testing process

* perform few attemps when unable to get the claim token

* unlock websocket-client in requirements_dev

* fix docblock in tools/plex-teardowntest

* do not hardcode mediapart size in test_video

* remove cache:pip from travis

* Revert "unlock websocket-client in requirements_dev"

This reverts commit 0d536bd06d.

* remove debug from server.py

* improve webhook tests

* fix type() check to isinstance()

* remove excessive `else` branch due to Hellowlol advice

* add `unknown` as allowed `myPlexMappingState` in test_server
2018-09-14 20:03:23 +02:00
Andrey Yantsen
afd4e24420 fix myplexaccount initialization (#296) 2018-09-08 19:59:10 +02:00
Andrey Yantsen
9e04a4f999 Populate subscription related fields in MyPlexAccount (#289)
* populate subscription related fields in MyPlexAccount

* improve reading with .iter()
2018-09-08 17:28:26 +02:00
Andrey Yantsen
f26db5deab fix typo in header.platorm config param (#291) 2018-09-08 17:27:54 +02:00
Andrey Yantsen
b6c061afd6 Bootstrap test plex (#290)
* fix markup in tests/conftest.py

* add plex-bootstraptest
2018-09-08 17:27:34 +02:00
Andrey Yantsen
b18e186006 fix flake8 warnings on travis (#283) 2018-09-08 17:26:59 +02:00
Andrey Yantsen
54b26fdc25 Sync support (#282)
* [sync] initial commit

* fix populating of `state` field in sync.Status

* [connection] add posibliity to return first established connection faster

* [base] add timeout argument to PlexObject.fetchItems()

* [sync] add timeout arg to SyncItem.getMedia()

When you have multiple media within one SyncItem it takes a lot of time
to get all the info for this media (on my machine it takes about a
second for each movie).

* [sync] fix marking media as downloaded

* [sync] pass clientIdentifier to created SyncItem()

* [sync] override __repr__() for sync.Status

* fix after @mikes-nasuni`s review

* fix python2 compatibility

* get rid of sync.init()

* use list comprehension

* remove timeout from PlexObject.fetchItems()

* fix SyncItem under python 2.7

* fix __doc__ in sync module

* revert myplex._connect() back to it`s original state

* improve sync docs

* get rid of PlexObjects where not needed

* add X-Plex-Sync-Version=2 to headers

* add sync() method into Video, LibrarySection and MyPlexAccount

* add SyncItem.delete()

* add sync.Policy.create()

* use self._default_sync_title instead of _prettyfilename as default title

* let the tests begin

* add items for refreshing synclists to PlexServer

* fix sync tests

* sync for everybody!

* add TODO doctring for Audio._defaultSyncTitle()

* SyncItems tag may be presented only once, there is no need for loop

* add more TODO docstrings

* hello docs

* remove relative import

* remove unused variable from tests/test_sync.py
2018-09-08 17:25:16 +02:00
Hellowlol
250d3538c6
fix bug 2018-07-20 22:17:18 +02:00
Hellowlol
f431e9b867
Merge pull request #279 from JonnyWong16/master
Use plexapi to retrieve a token in tools/plex-gettoken.py
2018-07-15 15:19:49 +02:00
JonnyWong16
115a2c9ffd Use plexapi to retrieve a token in tools/plex-gettoken.py 2018-07-13 23:36:33 -07:00
Michael Shepanski
2ddb31eacc
Merge pull request #278 from MichelfrancisBustillos/master
Fix issue #272 (No authToken) and adding getToken program
2018-07-13 11:44:03 -04:00
Michelfrancis Bustillos
01644c6df8 Fix issue #272 (No authToken) and adding getToken program
Fix Issue with plex-download.py by adding authToken.

Add plex-gettoken.py as a simple way to get authToken. Useable as standalone or as part of a larger program with slight modification.
2018-07-13 10:08:15 -04:00
Hellowlol
f89b8b6966
Merge pull request #270 from tijder/patch-1
Function update timeline for base.py
2018-06-27 20:51:45 +02:00
Michael Shepanski
34c98986ae Build in auto-delete is not working; I wrote my own 2018-06-23 16:49:56 -04:00
tijder
8d4e062a0a
Add own duration when not given as parameter 2018-05-18 10:58:06 +02:00
tijder
14c40e5fd8
Basic test 2018-05-14 20:12:29 +02:00
tijder
16ed7451c9
Comment parameters 2018-05-13 11:40:15 +02:00
tijder
ace43732a4
updateTimeline with option duration
Without the option duration the video progres will not be updated.
2018-05-13 10:50:19 +02:00
tijder
00c21c6325
Function update timeline for base.py
Function to update the timeline for a payable item. With this the item will be showed in the now playing screen.
2018-05-12 21:29:17 +02:00
Hellowlol
725bea090f Minor stuff. 2018-04-15 21:05:05 +02:00
Nicholas Totsch
b06c417706 Added cast/todatetime and missing minYear 2018-04-10 13:58:51 -05:00
Nicholas Totsch
4e27f6d8a8 Flake8 Fix 2018-04-10 12:24:39 -05:00
Nicholas Totsch
981e965e1f Added class/libtype for collections and library search function 2018-04-10 12:14:57 -05:00
Hellowlol
6238fa5fd2 fix bug so device returns a object as it should. 2018-04-03 23:08:17 +02:00
Hellowlol
4620e00af4
Merge pull request #263 from patzm/pr/259
added userRating property to Track
2018-04-03 01:54:17 +02:00
Hellowlol
b401ef3cc2
Merge pull request #258 from pkkid/chap
Chap
2018-04-03 01:53:54 +02:00
Martin Patz
e0e7f80b07 added userRating property to Track 2018-03-21 17:26:53 +01:00
Michael Shepanski
75bf75f703
Merge pull request #262 from shawnsethi/patch-1
Add sourceVideoCodec to TranscodeSession
2018-03-20 11:49:53 -04:00