distributed-state-network 0.6.0__tar.gz → 0.6.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 (33) hide show
  1. {distributed_state_network-0.6.0 → distributed_state_network-0.6.2}/PKG-INFO +1 -1
  2. {distributed_state_network-0.6.0 → distributed_state_network-0.6.2}/pyproject.toml +1 -1
  3. {distributed_state_network-0.6.0 → distributed_state_network-0.6.2}/src/distributed_state_network/dsnode.py +5 -5
  4. {distributed_state_network-0.6.0 → distributed_state_network-0.6.2}/src/distributed_state_network/handler.py +10 -1
  5. {distributed_state_network-0.6.0 → distributed_state_network-0.6.2}/.github/workflows/publish.yml +0 -0
  6. {distributed_state_network-0.6.0 → distributed_state_network-0.6.2}/.gitignore +0 -0
  7. {distributed_state_network-0.6.0 → distributed_state_network-0.6.2}/LICENSE +0 -0
  8. {distributed_state_network-0.6.0 → distributed_state_network-0.6.2}/README.md +0 -0
  9. {distributed_state_network-0.6.0 → distributed_state_network-0.6.2}/coverage.sh +0 -0
  10. {distributed_state_network-0.6.0 → distributed_state_network-0.6.2}/documentation/ds-node-config.md +0 -0
  11. {distributed_state_network-0.6.0 → distributed_state_network-0.6.2}/documentation/ds-node-server.md +0 -0
  12. {distributed_state_network-0.6.0 → distributed_state_network-0.6.2}/documentation/ds-node.md +0 -0
  13. {distributed_state_network-0.6.0 → distributed_state_network-0.6.2}/documentation/protocol.md +0 -0
  14. {distributed_state_network-0.6.0 → distributed_state_network-0.6.2}/documentation/usage.md +0 -0
  15. {distributed_state_network-0.6.0 → distributed_state_network-0.6.2}/src/distributed_state_network/__init__.py +0 -0
  16. {distributed_state_network-0.6.0 → distributed_state_network-0.6.2}/src/distributed_state_network/create_key.py +0 -0
  17. {distributed_state_network-0.6.0 → distributed_state_network-0.6.2}/src/distributed_state_network/objects/config.py +0 -0
  18. {distributed_state_network-0.6.0 → distributed_state_network-0.6.2}/src/distributed_state_network/objects/data_packet.py +0 -0
  19. {distributed_state_network-0.6.0 → distributed_state_network-0.6.2}/src/distributed_state_network/objects/endpoint.py +0 -0
  20. {distributed_state_network-0.6.0 → distributed_state_network-0.6.2}/src/distributed_state_network/objects/hello_packet.py +0 -0
  21. {distributed_state_network-0.6.0 → distributed_state_network-0.6.2}/src/distributed_state_network/objects/msg_types.py +0 -0
  22. {distributed_state_network-0.6.0 → distributed_state_network-0.6.2}/src/distributed_state_network/objects/peers_packet.py +0 -0
  23. {distributed_state_network-0.6.0 → distributed_state_network-0.6.2}/src/distributed_state_network/objects/signed_packet.py +0 -0
  24. {distributed_state_network-0.6.0 → distributed_state_network-0.6.2}/src/distributed_state_network/objects/state_packet.py +0 -0
  25. {distributed_state_network-0.6.0 → distributed_state_network-0.6.2}/src/distributed_state_network/util/__init__.py +0 -0
  26. {distributed_state_network-0.6.0 → distributed_state_network-0.6.2}/src/distributed_state_network/util/aes.py +0 -0
  27. {distributed_state_network-0.6.0 → distributed_state_network-0.6.2}/src/distributed_state_network/util/byte_helper.py +0 -0
  28. {distributed_state_network-0.6.0 → distributed_state_network-0.6.2}/src/distributed_state_network/util/ecdsa.py +0 -0
  29. {distributed_state_network-0.6.0 → distributed_state_network-0.6.2}/src/distributed_state_network/util/https.py +0 -0
  30. {distributed_state_network-0.6.0 → distributed_state_network-0.6.2}/src/distributed_state_network/util/key_manager.py +0 -0
  31. {distributed_state_network-0.6.0 → distributed_state_network-0.6.2}/technical.md +0 -0
  32. {distributed_state_network-0.6.0 → distributed_state_network-0.6.2}/tests/connections.py +0 -0
  33. {distributed_state_network-0.6.0 → distributed_state_network-0.6.2}/tests/test.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: distributed-state-network
3
- Version: 0.6.0
3
+ Version: 0.6.2
4
4
  Summary: A tool to distribute the state of a network device to other devices on the network
5
5
  Project-URL: Homepage, https://github.com/erinclemmer/distributed_state_network
6
6
  Project-URL: Issues, https://github.com/erinclemmer/distributed_state_network/issues
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "distributed-state-network"
7
- version = "0.6.0"
7
+ version = "0.6.2"
8
8
  authors = [{name="Erin Clemmer", email="erin.c.clemmer@gmail.com"}]
9
9
  description = "A tool to distribute the state of a network device to other devices on the network"
10
10
  keywords = ["distributed", "networking"]
@@ -4,7 +4,6 @@ import random
4
4
  import logging
5
5
  import threading
6
6
  import requests
7
- import tracing
8
7
  from typing import Dict, List, Optional, Callable
9
8
 
10
9
  from distributed_state_network.objects.endpoint import Endpoint
@@ -405,9 +404,10 @@ class DSNode:
405
404
  if not pkt.verify_signature(self.cred_manager.read_public(pkt.node_id)):
406
405
  raise Exception(401, "Could not verify ECDSA signature of data packet")
407
406
 
408
- try:
409
- self.receive_cb(data)
410
- except Exception as e:
411
- traceback.print_exc(e)
407
+ if self.receive_cb is not None:
408
+ try:
409
+ self.receive_cb(data)
410
+ except Exception as e:
411
+ traceback.print_exc(e)
412
412
 
413
413
  return b'OK'
@@ -8,7 +8,7 @@ from distributed_state_network.objects.config import DSNodeConfig
8
8
  from distributed_state_network.util.aes import generate_aes_key
9
9
  from distributed_state_network.util import stop_thread
10
10
 
11
- VERSION = "0.6.0"
11
+ VERSION = "0.6.2"
12
12
  logging.basicConfig(level=logging.INFO)
13
13
 
14
14
  # Silence Flask and Werkzeug logging
@@ -172,3 +172,12 @@ class DSNodeServer:
172
172
 
173
173
  def node_id(self) -> str:
174
174
  return self.config.node_id
175
+
176
+ def set_receive_cb(self, cb: Callable):
177
+ self.node.receive_cb = cb
178
+
179
+ def set_update_cb(self, cb: Callable):
180
+ self.node.update_cb = cb
181
+
182
+ def set_disconnect_cb(self, cb: Callable):
183
+ self.node.disconnect_cb = cb