uiprotect 1.4.0__tar.gz → 1.5.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of uiprotect might be problematic. Click here for more details.

Files changed (36) hide show
  1. {uiprotect-1.4.0 → uiprotect-1.5.0}/PKG-INFO +1 -1
  2. {uiprotect-1.4.0 → uiprotect-1.5.0}/pyproject.toml +1 -1
  3. {uiprotect-1.4.0 → uiprotect-1.5.0}/src/uiprotect/data/base.py +4 -4
  4. {uiprotect-1.4.0 → uiprotect-1.5.0}/src/uiprotect/data/types.py +1 -1
  5. {uiprotect-1.4.0 → uiprotect-1.5.0}/LICENSE +0 -0
  6. {uiprotect-1.4.0 → uiprotect-1.5.0}/README.md +0 -0
  7. {uiprotect-1.4.0 → uiprotect-1.5.0}/src/uiprotect/__init__.py +0 -0
  8. {uiprotect-1.4.0 → uiprotect-1.5.0}/src/uiprotect/__main__.py +0 -0
  9. {uiprotect-1.4.0 → uiprotect-1.5.0}/src/uiprotect/api.py +0 -0
  10. {uiprotect-1.4.0 → uiprotect-1.5.0}/src/uiprotect/cli/__init__.py +0 -0
  11. {uiprotect-1.4.0 → uiprotect-1.5.0}/src/uiprotect/cli/backup.py +0 -0
  12. {uiprotect-1.4.0 → uiprotect-1.5.0}/src/uiprotect/cli/base.py +0 -0
  13. {uiprotect-1.4.0 → uiprotect-1.5.0}/src/uiprotect/cli/cameras.py +0 -0
  14. {uiprotect-1.4.0 → uiprotect-1.5.0}/src/uiprotect/cli/chimes.py +0 -0
  15. {uiprotect-1.4.0 → uiprotect-1.5.0}/src/uiprotect/cli/doorlocks.py +0 -0
  16. {uiprotect-1.4.0 → uiprotect-1.5.0}/src/uiprotect/cli/events.py +0 -0
  17. {uiprotect-1.4.0 → uiprotect-1.5.0}/src/uiprotect/cli/lights.py +0 -0
  18. {uiprotect-1.4.0 → uiprotect-1.5.0}/src/uiprotect/cli/liveviews.py +0 -0
  19. {uiprotect-1.4.0 → uiprotect-1.5.0}/src/uiprotect/cli/nvr.py +0 -0
  20. {uiprotect-1.4.0 → uiprotect-1.5.0}/src/uiprotect/cli/sensors.py +0 -0
  21. {uiprotect-1.4.0 → uiprotect-1.5.0}/src/uiprotect/cli/viewers.py +0 -0
  22. {uiprotect-1.4.0 → uiprotect-1.5.0}/src/uiprotect/data/__init__.py +0 -0
  23. {uiprotect-1.4.0 → uiprotect-1.5.0}/src/uiprotect/data/bootstrap.py +0 -0
  24. {uiprotect-1.4.0 → uiprotect-1.5.0}/src/uiprotect/data/convert.py +0 -0
  25. {uiprotect-1.4.0 → uiprotect-1.5.0}/src/uiprotect/data/devices.py +0 -0
  26. {uiprotect-1.4.0 → uiprotect-1.5.0}/src/uiprotect/data/nvr.py +0 -0
  27. {uiprotect-1.4.0 → uiprotect-1.5.0}/src/uiprotect/data/user.py +0 -0
  28. {uiprotect-1.4.0 → uiprotect-1.5.0}/src/uiprotect/data/websocket.py +0 -0
  29. {uiprotect-1.4.0 → uiprotect-1.5.0}/src/uiprotect/exceptions.py +0 -0
  30. {uiprotect-1.4.0 → uiprotect-1.5.0}/src/uiprotect/py.typed +0 -0
  31. {uiprotect-1.4.0 → uiprotect-1.5.0}/src/uiprotect/release_cache.json +0 -0
  32. {uiprotect-1.4.0 → uiprotect-1.5.0}/src/uiprotect/stream.py +0 -0
  33. {uiprotect-1.4.0 → uiprotect-1.5.0}/src/uiprotect/test_util/__init__.py +0 -0
  34. {uiprotect-1.4.0 → uiprotect-1.5.0}/src/uiprotect/test_util/anonymize.py +0 -0
  35. {uiprotect-1.4.0 → uiprotect-1.5.0}/src/uiprotect/utils.py +0 -0
  36. {uiprotect-1.4.0 → uiprotect-1.5.0}/src/uiprotect/websocket.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: uiprotect
3
- Version: 1.4.0
3
+ Version: 1.5.0
4
4
  Summary: Python API for Unifi Protect (Unofficial)
5
5
  Home-page: https://github.com/uilibs/uiprotect
6
6
  License: MIT
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "uiprotect"
3
- version = "1.4.0"
3
+ version = "1.5.0"
4
4
  description = "Python API for Unifi Protect (Unofficial)"
5
5
  authors = ["UI Protect Maintainers <ui@koston.org>"]
6
6
  license = "MIT"
@@ -84,7 +84,7 @@ class ProtectBaseObject(BaseModel):
84
84
  * Provides `.unifi_dict` to convert object back into UFP JSON
85
85
  """
86
86
 
87
- _api: ProtectApiClient = PrivateAttr(...)
87
+ _api: ProtectApiClient = PrivateAttr(None)
88
88
 
89
89
  _protect_objs: ClassVar[dict[str, type[ProtectBaseObject]] | None] = None
90
90
  _protect_lists: ClassVar[dict[str, type[ProtectBaseObject]] | None] = None
@@ -633,9 +633,9 @@ class ProtectModel(ProtectBaseObject):
633
633
  class ProtectModelWithId(ProtectModel):
634
634
  id: str
635
635
 
636
- _update_lock: asyncio.Lock = PrivateAttr(...)
637
- _update_queue: asyncio.Queue[Callable[[], None]] = PrivateAttr(...)
638
- _update_event: asyncio.Event = PrivateAttr(...)
636
+ _update_lock: asyncio.Lock = PrivateAttr(None)
637
+ _update_queue: asyncio.Queue[Callable[[], None]] = PrivateAttr(None)
638
+ _update_event: asyncio.Event = PrivateAttr(None)
639
639
 
640
640
  def __init__(self, **data: Any) -> None:
641
641
  update_lock = data.pop("update_lock", None)
@@ -304,7 +304,7 @@ class SmartDetectObjectType(str, ValuesEnumMixin, enum.Enum):
304
304
  CAR = "car"
305
305
  PET = "pet"
306
306
 
307
- @property
307
+ @cached_property
308
308
  def audio_type(self) -> SmartDetectAudioType | None:
309
309
  return OBJECT_TO_AUDIO_MAP.get(self)
310
310
 
File without changes
File without changes