Commit graph

2404 commits

Author SHA1 Message Date
Dr.Blank
56a8df659d
Update algorithm for parsing smart filters (#1276)
* Fix minor typo

* Update algorithm for parsing  #1274

* Match style guide of the module

* Fix Edge Cases

- `and` is now considered the default operation instead of raising error
- fix algorithm so that the reserved keys are parsed in the filters dictionary instead of filters group when located later in the feed.
- removed some code repetition

* Join multiple filters by default

If multiple filter groups are parsed they are joined by `and` instead of raising error.

* fix `==` operator parsing

transfers "=" from the value to key

* fix typehinting

* Add new test for smart Filters

this test would fail on old algorithm despite it being logically the exact same filter.

* add test for deeply nested filters

* combine filters test for playlist

* combine filters test for collections

* fix typo

* add test to check parsed fitlers as it is

* edited test to be independent of the server

* Apply suggestions from code review

adhere to style guide of the project

Co-authored-by: JonnyWong16 <9099342+JonnyWong16@users.noreply.github.com>

---------

Co-authored-by: JonnyWong16 <9099342+JonnyWong16@users.noreply.github.com>
2023-11-05 16:23:57 -08:00
ReenigneArcher
c03d515ade
build(pypi): verify readme and add long_description_content_type (#1282) 2023-11-05 13:22:31 -08:00
dependabot[bot]
31bbb4fbfe
Bump websocket-client from 1.6.3 to 1.6.4 (#1268)
Bumps [websocket-client](https://github.com/websocket-client/websocket-client) from 1.6.3 to 1.6.4.
- [Release notes](https://github.com/websocket-client/websocket-client/releases)
- [Changelog](https://github.com/websocket-client/websocket-client/blob/master/ChangeLog)
- [Commits](https://github.com/websocket-client/websocket-client/compare/v1.6.3...v1.6.4)

---
updated-dependencies:
- dependency-name: websocket-client
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-05 10:43:57 -08:00
JonnyWong16
253949c1fe
Add MyPlexAccount.ping() to refresh authentication token (#1271)
* Add `MyPlexAccount.ping()` to refresh auth token

* Test account ping
2023-11-02 21:24:46 -07:00
JonnyWong16
7f5cf76cbd
Return None for history source if media no longer exists (#1269) 2023-11-02 21:24:29 -07:00
Jas Blackthorne
a9e2406e25
Update documentation for collection.sortUpdate. (#1277)
Co-authored-by: Morgan Blackthorne <morgan@windsofstorm.net>
2023-11-02 21:24:05 -07:00
ReenigneArcher
8798a9e739
fix: explicitly set includeFiles (#1281)
Co-authored-by: JonnyWong16 <9099342+jonnywong16@users.noreply.github.com>
2023-10-31 16:30:53 -07:00
dependabot[bot]
a3af807c6b
Bump pytest from 7.4.2 to 7.4.3 (#1279) 2023-10-25 06:41:31 -05:00
dependabot[bot]
e44939c426
Bump pytest-mock from 3.11.1 to 3.12.0 (#1273) 2023-10-20 07:08:52 -05:00
ReenigneArcher
f8dc6f88f0
docs: fix readthedocs build (#1266) 2023-10-11 22:25:37 -07:00
Shanary
a257717614
Passing params for setSelectedSubtitles streams (#1265) 2023-10-11 22:25:17 -07:00
JonnyWong16
64eba5627e
Release 4.15.4 2023-10-03 21:22:31 -07:00
dependabot[bot]
98d9fbdee5
Bump pillow from 10.0.0 to 10.0.1 (#1254)
Bumps [pillow](https://github.com/python-pillow/Pillow) from 10.0.0 to 10.0.1.
- [Release notes](https://github.com/python-pillow/Pillow/releases)
- [Changelog](https://github.com/python-pillow/Pillow/blob/main/CHANGES.rst)
- [Commits](https://github.com/python-pillow/Pillow/compare/10.0.0...10.0.1)

---
updated-dependencies:
- dependency-name: pillow
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-03 21:20:59 -07:00
dependabot[bot]
c81dc169cd
Bump nick-fields/retry from 2.8.3 to 2.9.0 (#1259)
Bumps [nick-fields/retry](https://github.com/nick-fields/retry) from 2.8.3 to 2.9.0.
- [Release notes](https://github.com/nick-fields/retry/releases)
- [Changelog](https://github.com/nick-fields/retry/blob/master/.releaserc.js)
- [Commits](https://github.com/nick-fields/retry/compare/v2.8.3...v2.9.0)

---
updated-dependencies:
- dependency-name: nick-fields/retry
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-03 21:20:49 -07:00
JonnyWong16
44fc13f2b5
Fix isLatest() and add canInstallUpdate() (#1263)
* Revert "Update isLatest() (#1253)"

This reverts commit b129fa3757.

* Add canInstallUpdate method

---------

Co-authored-by: Benjamin Oddou <85166574+BenjaminOddou@users.noreply.github.com>
2023-10-03 21:18:18 -07:00
ReenigneArcher
75fb265800
ci: adjust plexapi timeout (#1258) 2023-10-03 20:30:43 -07:00
Marc Mueller
dcedde1947
Fix datetime returning UTC (#1262)
* Replace datetime.utcfromtimestamp

* Update plexapi/utils.py

Co-authored-by: JonnyWong16 <9099342+JonnyWong16@users.noreply.github.com>

* Default using `fromtimestamp` and fallback to using `timedelta` from 0

---------

Co-authored-by: JonnyWong16 <9099342+JonnyWong16@users.noreply.github.com>
2023-10-03 20:30:32 -07:00
jjlawren
d5cad1fe1c Release 4.15.3 2023-09-28 22:43:05 -05:00
jjlawren
57f27eaa4e
Fix handling of live TV sessions (#1260)
* Handle parsing live TV without season information

* Add guards for parent keys
2023-09-28 22:39:40 -05:00
JonnyWong16
94734ae939
Release 4.15.2 2023-09-17 17:07:07 -07:00
JonnyWong16
b57a5286cf
Change Episode parent* attributes to properties (#1251)
* Change Episode parent* attributes to cached_property

* This is to avoid the problems with auto-reloading when Episode objects are built with seasons hidden.

* Change Episode.seasonNumber to cached_property
2023-09-17 17:04:37 -07:00
Benjamin Oddou
b129fa3757
Update isLatest() (#1253)
* Update isLatest()

Use the canInstall attribute to determine if the release is the latest build.

* use of utils.cast

Co-authored-by: JonnyWong16 <9099342+JonnyWong16@users.noreply.github.com>

---------

Co-authored-by: JonnyWong16 <9099342+JonnyWong16@users.noreply.github.com>
2023-09-17 16:04:41 -07:00
Anagh Kumar Baranwal
7ff9e7b0d5
Remove reload after saving the batch-edits so the user can handle it themselves, if required. (#1247)
Signed-off-by: Anagh Kumar Baranwal <6824881+darthShadow@users.noreply.github.com>
2023-09-17 16:01:15 -07:00
twolaw
b63bf7fcaf
Shut toDatetime error when subscribedAt is empty (#1250) 2023-09-17 15:37:22 -07:00
Elan Ruusamäe
e466af58ee
test_audio: Add missing assert (#1245) 2023-09-17 15:36:45 -07:00
Marc Mueller
dddc482614
Fix invalid escape sequence DeprecationWarning (#1244)
* Fix invalid escape sequence DeprecationWarning

* Remove escape chars
2023-09-17 14:52:14 -07:00
JonnyWong16
cbaaa196da
Add X-Plex-Language header to config (#1241) 2023-09-17 14:51:54 -07:00
ReenigneArcher
fdc89c8acb
ci: retry bootstrap step (#1240) 2023-09-17 14:45:24 -07:00
dependabot[bot]
b38f8eadb3
Bump websocket-client from 1.6.2 to 1.6.3 (#1242)
Bumps [websocket-client](https://github.com/websocket-client/websocket-client) from 1.6.2 to 1.6.3.
- [Release notes](https://github.com/websocket-client/websocket-client/releases)
- [Changelog](https://github.com/websocket-client/websocket-client/blob/master/ChangeLog)
- [Commits](https://github.com/websocket-client/websocket-client/compare/v1.6.2...v1.6.3)

---
updated-dependencies:
- dependency-name: websocket-client
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-17 14:26:11 -07:00
dependabot[bot]
4a99c4d236
Bump pytest from 7.4.0 to 7.4.2 (#1238)
Bumps [pytest](https://github.com/pytest-dev/pytest) from 7.4.0 to 7.4.2.
- [Release notes](https://github.com/pytest-dev/pytest/releases)
- [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pytest-dev/pytest/compare/7.4.0...7.4.2)

---
updated-dependencies:
- dependency-name: pytest
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-17 14:26:02 -07:00
twolaw
9fd46872cd
change discover search url (#1239) 2023-09-17 14:06:45 -07:00
dependabot[bot]
5cd832e5a1
Bump actions/checkout from 3 to 4 (#1237)
Bumps [actions/checkout](https://github.com/actions/checkout) from 3 to 4.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-17 13:58:55 -07:00
JonnyWong16
7da49eb711
Release 4.15.1 2023-08-30 15:43:01 -07:00
Elan Ruusamäe
301310fb32
Fix: Fallback timeout from constructor in query() (#1231)
* Fallback PlexServer _timeout to TIMEOUT

* Fallback PlexServer query timeout to self._timeout

* Refactor MyPlexAccount, PlexClient query() to use timeout from constructor
2023-08-30 09:41:12 -07:00
dependabot[bot]
bb58ee1017
Bump sphinx from 6.2.1 to 7.1.2 (#1232)
* Bump sphinx from 6.2.1 to 7.2.4

Bumps [sphinx](https://github.com/sphinx-doc/sphinx) from 6.2.1 to 7.2.4.
- [Release notes](https://github.com/sphinx-doc/sphinx/releases)
- [Changelog](https://github.com/sphinx-doc/sphinx/blob/master/CHANGES)
- [Commits](https://github.com/sphinx-doc/sphinx/compare/v6.2.1...v7.2.4)

---
updated-dependencies:
- dependency-name: sphinx
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

* Pin sphinx==7.1.2

* Sphinx 7.1.2 is the last version to support Python 3.8.

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: JonnyWong16 <9099342+JonnyWong16@users.noreply.github.com>
2023-08-28 23:44:40 -07:00
dependabot[bot]
d0e8ea3fd4
Bump websocket-client from 1.6.1 to 1.6.2 (#1224)
Bumps [websocket-client](https://github.com/websocket-client/websocket-client) from 1.6.1 to 1.6.2.
- [Release notes](https://github.com/websocket-client/websocket-client/releases)
- [Changelog](https://github.com/websocket-client/websocket-client/blob/master/ChangeLog)
- [Commits](https://github.com/websocket-client/websocket-client/compare/v1.6.1...v1.6.2)

---
updated-dependencies:
- dependency-name: websocket-client
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-28 23:30:49 -07:00
dependabot[bot]
d6edd1b105
Bump sphinx-rtd-theme from 1.2.2 to 1.3.0 (#1223)
Bumps [sphinx-rtd-theme](https://github.com/readthedocs/sphinx_rtd_theme) from 1.2.2 to 1.3.0.
- [Changelog](https://github.com/readthedocs/sphinx_rtd_theme/blob/master/docs/changelog.rst)
- [Commits](https://github.com/readthedocs/sphinx_rtd_theme/compare/1.2.2...1.3.0)

---
updated-dependencies:
- dependency-name: sphinx-rtd-theme
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-28 23:22:39 -07:00
dependabot[bot]
0f791b29f7
Bump tqdm from 4.65.0 to 4.66.1 (#1213)
Bumps [tqdm](https://github.com/tqdm/tqdm) from 4.65.0 to 4.66.1.
- [Release notes](https://github.com/tqdm/tqdm/releases)
- [Commits](https://github.com/tqdm/tqdm/compare/v4.65.0...v4.66.1)

---
updated-dependencies:
- dependency-name: tqdm
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-28 21:56:36 -07:00
dependabot[bot]
a03059d291
Bump flake8 from 6.0.0 to 6.1.0 (#1199)
Bumps [flake8](https://github.com/pycqa/flake8) from 6.0.0 to 6.1.0.
- [Commits](https://github.com/pycqa/flake8/compare/6.0.0...6.1.0)

---
updated-dependencies:
- dependency-name: flake8
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-28 21:16:19 -07:00
ReenigneArcher
fae1ef31f7
test: add codeql analysis (#1229)
* test: add codeql analysis

* ci: update CodeQL runner and timeout

Co-authored-by: JonnyWong16 <9099342+JonnyWong16@users.noreply.github.com>

---------

Co-authored-by: JonnyWong16 <9099342+JonnyWong16@users.noreply.github.com>
2023-08-28 20:30:30 -07:00
ReenigneArcher
a6b6ebfbff
style: lint all python files (#1228) 2023-08-28 20:29:39 -07:00
ReenigneArcher
dba3369f55
docs: add Windows make file (#1222) 2023-08-28 09:41:11 -07:00
ReenigneArcher
103bc6f8ef
feat(alert): add option to use custom socket (#1219) 2023-08-28 08:57:34 -07:00
ReenigneArcher
b783a56edc
Tests skip additional tests that require plex pass (#1227)
* tests: skip additional tests that require Plex Pass

* tests(test_myplex_users): check if first user has access to any server

* tests(fixture): adjust plex pass required skip message
2023-08-27 14:24:54 -07:00
ReenigneArcher
ec4b779ca8
style: fix F812 rule (#1221) 2023-08-27 14:10:18 -07:00
ReenigneArcher
bd0f1aee18
docs(readme): fix typos (#1220) 2023-08-27 14:09:36 -07:00
JonnyWong16
0399bea51e
Simplify PlexPartialObject eq return (#1230) 2023-08-27 13:24:29 -07:00
JonnyWong16
80fd90b687
Validate empty items explicitly (#1216) 2023-08-27 13:18:03 -07:00
Marc Mueller
ea4885acf7
Fix ElementTree DeprecationWarning when testing truth value (3.12) (#1209)
* Fix ElementTree DeprecationWarning when testing truth value (3.12)

* Use is None check

* Update more locations
2023-08-27 13:09:27 -07:00
JonnyWong16
b98b6050fe
Add properties to return the Plex Media Server data metadata paths (#1207)
* Add property to return the Plex Media Server data metadata path

* Add property to return the filepath for a resource

* Add tests for metadataDirectory and resourceFilepath
2023-08-27 12:59:53 -07:00