* Fix more library section ID cast to int
* Add method to return library size for specific libtypes
* Add test for library totalViewSize
* Fix totalViewSize test episode count
* Don't need to use library _totalSize cache
* Validate title search arg as a filter kwarg
* Only validate search title if it is a list
* Update doc string for totalViewSize
* Make test Plex Pass entitlements a subset
* Fix create MyPlexDevice race condition
* Rename to clientId to be consistent
* Move link method to MyPlexAccount
Add ability to remove a Home User. If Home User is an Existing Plex User then User will go back into Sharing/Friends with sections and settings carrying over. Any Home User settings (LiveTV) are removed.
Add ability to create an Existing Plex User. If User already exists in Sharing/Friends, sections and settings carry over. If User does not already exist in Sharing/Friends, sections and settings can be assigned.
update docstrings for usage of `inviteFriend` and `updateFriend`. Previous doc suggested that if `None` then all sections were selected. If `None` no sections will be selected.
We should not log warnings if we are also raising exceptions. It is up to the caller to decide how to handle the error and if they should notify the user.
This was triggered because I got logs for bad requests for 401 Unauthorized.
* 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
* [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
It appears plex is doing away with the plexapp.com url.
It no longer has a valid SAN cert for that domain as it redirects to plex.tv now.
Update myplex.py to reflect new signin URL.