astreum 0.2.3__tar.gz → 0.2.4__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 (62) hide show
  1. {astreum-0.2.3/src/astreum.egg-info → astreum-0.2.4}/PKG-INFO +1 -1
  2. {astreum-0.2.3 → astreum-0.2.4}/pyproject.toml +1 -1
  3. {astreum-0.2.3 → astreum-0.2.4}/src/astreum/node.py +10 -0
  4. {astreum-0.2.3 → astreum-0.2.4/src/astreum.egg-info}/PKG-INFO +1 -1
  5. {astreum-0.2.3 → astreum-0.2.4}/LICENSE +0 -0
  6. {astreum-0.2.3 → astreum-0.2.4}/README.md +0 -0
  7. {astreum-0.2.3 → astreum-0.2.4}/setup.cfg +0 -0
  8. {astreum-0.2.3 → astreum-0.2.4}/src/astreum/__init__.py +0 -0
  9. {astreum-0.2.3 → astreum-0.2.4}/src/astreum/_node/__init__.py +0 -0
  10. {astreum-0.2.3 → astreum-0.2.4}/src/astreum/_node/relay/__init__.py +0 -0
  11. {astreum-0.2.3 → astreum-0.2.4}/src/astreum/_node/relay/bucket.py +0 -0
  12. {astreum-0.2.3 → astreum-0.2.4}/src/astreum/_node/relay/envelope.py +0 -0
  13. {astreum-0.2.3 → astreum-0.2.4}/src/astreum/_node/relay/message.py +0 -0
  14. {astreum-0.2.3 → astreum-0.2.4}/src/astreum/_node/relay/peer.py +0 -0
  15. {astreum-0.2.3 → astreum-0.2.4}/src/astreum/_node/relay/route.py +0 -0
  16. {astreum-0.2.3 → astreum-0.2.4}/src/astreum/_node/storage/__init__.py +0 -0
  17. {astreum-0.2.3 → astreum-0.2.4}/src/astreum/_node/storage/merkle.py +0 -0
  18. {astreum-0.2.3 → astreum-0.2.4}/src/astreum/_node/storage/patricia.py +0 -0
  19. {astreum-0.2.3 → astreum-0.2.4}/src/astreum/_node/storage/storage.py +0 -0
  20. {astreum-0.2.3 → astreum-0.2.4}/src/astreum/_node/storage/utils.py +0 -0
  21. {astreum-0.2.3 → astreum-0.2.4}/src/astreum/_node/utils.py +0 -0
  22. {astreum-0.2.3 → astreum-0.2.4}/src/astreum/_node/validation/__init__.py +0 -0
  23. {astreum-0.2.3 → astreum-0.2.4}/src/astreum/_node/validation/_block/__init__.py +0 -0
  24. {astreum-0.2.3 → astreum-0.2.4}/src/astreum/_node/validation/_block/create.py +0 -0
  25. {astreum-0.2.3 → astreum-0.2.4}/src/astreum/_node/validation/_block/model.py +0 -0
  26. {astreum-0.2.3 → astreum-0.2.4}/src/astreum/_node/validation/_block/validate.py +0 -0
  27. {astreum-0.2.3 → astreum-0.2.4}/src/astreum/_node/validation/account.py +0 -0
  28. {astreum-0.2.3 → astreum-0.2.4}/src/astreum/_node/validation/block.py +0 -0
  29. {astreum-0.2.3 → astreum-0.2.4}/src/astreum/_node/validation/constants.py +0 -0
  30. {astreum-0.2.3 → astreum-0.2.4}/src/astreum/_node/validation/stake.py +0 -0
  31. {astreum-0.2.3 → astreum-0.2.4}/src/astreum/_node/validation/transaction.py +0 -0
  32. {astreum-0.2.3 → astreum-0.2.4}/src/astreum/_node/validation/vdf.py +0 -0
  33. {astreum-0.2.3 → astreum-0.2.4}/src/astreum/crypto/__init__.py +0 -0
  34. {astreum-0.2.3 → astreum-0.2.4}/src/astreum/crypto/ed25519.py +0 -0
  35. {astreum-0.2.3 → astreum-0.2.4}/src/astreum/crypto/x25519.py +0 -0
  36. {astreum-0.2.3 → astreum-0.2.4}/src/astreum/format.py +0 -0
  37. {astreum-0.2.3 → astreum-0.2.4}/src/astreum/lispeum/__init__.py +0 -0
  38. {astreum-0.2.3 → astreum-0.2.4}/src/astreum/lispeum/expression.py +0 -0
  39. {astreum-0.2.3 → astreum-0.2.4}/src/astreum/lispeum/parser.py +0 -0
  40. {astreum-0.2.3 → astreum-0.2.4}/src/astreum/lispeum/special/__init__.py +0 -0
  41. {astreum-0.2.3 → astreum-0.2.4}/src/astreum/lispeum/special/definition.py +0 -0
  42. {astreum-0.2.3 → astreum-0.2.4}/src/astreum/lispeum/special/list/__init__.py +0 -0
  43. {astreum-0.2.3 → astreum-0.2.4}/src/astreum/lispeum/special/list/all.py +0 -0
  44. {astreum-0.2.3 → astreum-0.2.4}/src/astreum/lispeum/special/list/any.py +0 -0
  45. {astreum-0.2.3 → astreum-0.2.4}/src/astreum/lispeum/special/list/fold.py +0 -0
  46. {astreum-0.2.3 → astreum-0.2.4}/src/astreum/lispeum/special/list/get.py +0 -0
  47. {astreum-0.2.3 → astreum-0.2.4}/src/astreum/lispeum/special/list/insert.py +0 -0
  48. {astreum-0.2.3 → astreum-0.2.4}/src/astreum/lispeum/special/list/map.py +0 -0
  49. {astreum-0.2.3 → astreum-0.2.4}/src/astreum/lispeum/special/list/position.py +0 -0
  50. {astreum-0.2.3 → astreum-0.2.4}/src/astreum/lispeum/special/list/remove.py +0 -0
  51. {astreum-0.2.3 → astreum-0.2.4}/src/astreum/lispeum/special/number/__init__.py +0 -0
  52. {astreum-0.2.3 → astreum-0.2.4}/src/astreum/lispeum/special/number/addition.py +0 -0
  53. {astreum-0.2.3 → astreum-0.2.4}/src/astreum/lispeum/storage.py +0 -0
  54. {astreum-0.2.3 → astreum-0.2.4}/src/astreum/lispeum/tokenizer.py +0 -0
  55. {astreum-0.2.3 → astreum-0.2.4}/src/astreum/machine/__init__.py +0 -0
  56. {astreum-0.2.3 → astreum-0.2.4}/src/astreum/machine/environment.py +0 -0
  57. {astreum-0.2.3 → astreum-0.2.4}/src/astreum/machine/error.py +0 -0
  58. {astreum-0.2.3 → astreum-0.2.4}/src/astreum.egg-info/SOURCES.txt +0 -0
  59. {astreum-0.2.3 → astreum-0.2.4}/src/astreum.egg-info/dependency_links.txt +0 -0
  60. {astreum-0.2.3 → astreum-0.2.4}/src/astreum.egg-info/requires.txt +0 -0
  61. {astreum-0.2.3 → astreum-0.2.4}/src/astreum.egg-info/top_level.txt +0 -0
  62. {astreum-0.2.3 → astreum-0.2.4}/tests/test_node_machine.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: astreum
3
- Version: 0.2.3
3
+ Version: 0.2.4
4
4
  Summary: Python library to interact with the Astreum blockchain and its Lispeum virtual machine.
5
5
  Author-email: "Roy R. O. Okello" <roy@stelar.xyz>
6
6
  Project-URL: Homepage, https://github.com/astreum/lib
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "astreum"
3
- version = "0.2.3"
3
+ version = "0.2.4"
4
4
  authors = [
5
5
  { name="Roy R. O. Okello", email="roy@stelar.xyz" },
6
6
  ]
@@ -705,6 +705,16 @@ class Node:
705
705
  env_id = uuid.uuid4()
706
706
  self.environments[env_id] = Env(parent_id=parent_id)
707
707
  return env_id
708
+
709
+ def machine_get_or_create_environment(self, env_id: Optional[uuid.UUID] = None, parent_id: Optional[uuid.UUID] = None) -> uuid.UUID:
710
+ with self.machine_environments_lock:
711
+ if env_id is not None and env_id in self.environments:
712
+ return env_id
713
+ new_id = env_id if env_id is not None else uuid.uuid4()
714
+ while new_id in self.environments:
715
+ new_id = uuid.uuid4()
716
+ self.environments[new_id] = Env(parent_id=parent_id)
717
+ return new_id
708
718
 
709
719
  def machine_delete_environment(self, env_id: uuid.UUID) -> bool:
710
720
  with self.machine_environments_lock:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: astreum
3
- Version: 0.2.3
3
+ Version: 0.2.4
4
4
  Summary: Python library to interact with the Astreum blockchain and its Lispeum virtual machine.
5
5
  Author-email: "Roy R. O. Okello" <roy@stelar.xyz>
6
6
  Project-URL: Homepage, https://github.com/astreum/lib
File without changes
File without changes
File without changes
File without changes
File without changes