suplalite 2.0.2__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.
Files changed (39) hide show
  1. suplalite-2.0.2/.gitignore +6 -0
  2. suplalite-2.0.2/CHANGES.txt +79 -0
  3. suplalite-2.0.2/LICENSE +674 -0
  4. suplalite-2.0.2/PKG-INFO +199 -0
  5. suplalite-2.0.2/README.md +157 -0
  6. suplalite-2.0.2/examples/__init__.py +0 -0
  7. suplalite-2.0.2/examples/car.png +0 -0
  8. suplalite-2.0.2/examples/client.py +285 -0
  9. suplalite-2.0.2/examples/device.py +99 -0
  10. suplalite-2.0.2/examples/green.png +0 -0
  11. suplalite-2.0.2/examples/red.png +0 -0
  12. suplalite-2.0.2/examples/server.py +284 -0
  13. suplalite-2.0.2/pyproject.toml +135 -0
  14. suplalite-2.0.2/suplalite/__init__.py +0 -0
  15. suplalite-2.0.2/suplalite/device/__init__.py +352 -0
  16. suplalite-2.0.2/suplalite/device/channels.py +536 -0
  17. suplalite-2.0.2/suplalite/encoding.py +432 -0
  18. suplalite-2.0.2/suplalite/logging.py +49 -0
  19. suplalite-2.0.2/suplalite/network.py +2 -0
  20. suplalite-2.0.2/suplalite/packets.py +136 -0
  21. suplalite-2.0.2/suplalite/proto.py +1186 -0
  22. suplalite-2.0.2/suplalite/py.typed +0 -0
  23. suplalite-2.0.2/suplalite/server/__init__.py +588 -0
  24. suplalite-2.0.2/suplalite/server/api.py +87 -0
  25. suplalite-2.0.2/suplalite/server/context.py +114 -0
  26. suplalite-2.0.2/suplalite/server/events.py +43 -0
  27. suplalite-2.0.2/suplalite/server/handlers.py +1212 -0
  28. suplalite-2.0.2/suplalite/server/state.py +425 -0
  29. suplalite-2.0.2/suplalite/server/tls.py +134 -0
  30. suplalite-2.0.2/suplalite/utils.py +45 -0
  31. suplalite-2.0.2/tests/__init__.py +0 -0
  32. suplalite-2.0.2/tests/conftest.py +289 -0
  33. suplalite-2.0.2/tests/device_test.py +843 -0
  34. suplalite-2.0.2/tests/encoding_test.py +284 -0
  35. suplalite-2.0.2/tests/logging_test.py +27 -0
  36. suplalite-2.0.2/tests/packets_test.py +137 -0
  37. suplalite-2.0.2/tests/proto_test.py +507 -0
  38. suplalite-2.0.2/tests/server_test.py +3254 -0
  39. suplalite-2.0.2/tests/utils_test.py +63 -0
@@ -0,0 +1,6 @@
1
+ __pycache__
2
+ *.egg-info
3
+ .coverage
4
+ build
5
+ dist
6
+ ssl
@@ -0,0 +1,79 @@
1
+ v2.0.2
2
+ - Load tlslite only for the server, which lowers device memory use
3
+ - Add project links, classifiers and badges to the PyPI page
4
+ - Leave untracked files and coverage output out of the source distribution
5
+
6
+ v2.0.1
7
+ - Ship a py.typed marker so type checkers use the package annotations
8
+
9
+ v2.0.0
10
+ - Add opt-in authentication for devices and clients, using
11
+ Server(device_auth=True, client_auth=True). Both default to off
12
+ - Add client sign in with an access identifier, alongside email sign in
13
+ - Hold a failed registration open for auth_failure_delay seconds
14
+ - Breaking: add_device takes the authkey as its third argument, and takes
15
+ manufacturer_id and product_id as keyword arguments
16
+ - Breaking: Server takes certfile and keyfile as Path objects
17
+ - Breaking: Remove support for Python 3.10
18
+ - Add RGBW dimmer channel
19
+ - Add turn on, turn off and set RGBW actions for RGB dimmer channels
20
+ - Default the command field of TRGBDimmerChannel_Value to RGBW_COMMAND_NOT_SET
21
+ - Replace the existing connection when a device or client registers again,
22
+ instead of rejecting the new registration
23
+ - Reject a device whose manufacturer or product id does not match with
24
+ UNKNOWN_ERROR, instead of CHANNEL_CONFLICT
25
+ - Server.stop() takes a timeout, and closes the connections that outlast it
26
+ - Devices time out registration, and shut down when a background task fails
27
+ - Device.add() raises once the device has started, and Device.stop() before
28
+ start() does nothing
29
+ - Devices only ping when they have sent nothing else for the ping interval
30
+ - Close a connection whose event handling fails, and keep dispatching events
31
+ to the other connections
32
+ - Fix a client closing its own connection by asking for an unknown channel
33
+ - Fix the success value reported when a device sets a channel value
34
+ - Fix RGBW and dimmer actions overwriting the fields a client asked to
35
+ leave alone, which it marks with a brightness of -1 or a color of 0
36
+ - Fix the activity timeout resetting to the default when a connection registers
37
+ - Fix events sometimes reaching a client before the response to its call
38
+ - Fix field types in the protocol definitions
39
+
40
+ v1.1.1
41
+ - Fix setting dimmer brightness
42
+
43
+ v1.1.0
44
+ - Add dimmer and RGB dimmer channels
45
+ - Fix the value returned when setting a general purpose measurement
46
+ - Fix temperature and humidity readings that are unavailable
47
+
48
+ v1.0.0
49
+ - Send channel relations to clients
50
+ - Send channels and scenes in batches as the client asks for them, in a
51
+ stable order
52
+ - Increase the default activity timeout
53
+ - Make info level logging less verbose
54
+
55
+ v0.5.0
56
+ - Fix channel value changed events firing twice
57
+
58
+ v0.4.0
59
+ - Add scenes, including setting dimmer brightness from a scene
60
+ - Fix empty batches
61
+
62
+ v0.3.1
63
+ - Set the proto version of a device to the minimum its channels require
64
+
65
+ v0.3.0
66
+ - Add REQUEST and RESPONSE server events
67
+ - Encode and decode channel values through the channel classes
68
+ - Make device on_change handlers async
69
+
70
+ v0.2.0
71
+ - Add support for custom icons
72
+ - Add ServerState.get_channel_by_name
73
+ - Allow passing extra arguments to events
74
+ - Persist dimmer brightness when a channel is toggled off then on
75
+ - Fix channel flags and enum types in the protocol definitions
76
+ - Fix the server not removing a device when its call handler raises
77
+
78
+ v0.1.0
79
+ - Initial version