pythagoras 0.8.12__tar.gz → 0.8.14__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 (70) hide show
  1. {pythagoras-0.8.12/pythagoras.egg-info → pythagoras-0.8.14}/PKG-INFO +1 -2
  2. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/_01_foundational_objects/value_addresses.py +7 -4
  3. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/_04_idempotent_functions/idempotent_func_and_address.py +14 -7
  4. {pythagoras-0.8.12 → pythagoras-0.8.14/pythagoras.egg-info}/PKG-INFO +1 -2
  5. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras.egg-info/requires.txt +0 -1
  6. {pythagoras-0.8.12 → pythagoras-0.8.14}/setup.py +1 -2
  7. {pythagoras-0.8.12 → pythagoras-0.8.14}/LICENSE +0 -0
  8. {pythagoras-0.8.12 → pythagoras-0.8.14}/README.md +0 -0
  9. {pythagoras-0.8.12 → pythagoras-0.8.14}/pyproject.toml +0 -0
  10. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/NEW_exception_logging.py +0 -0
  11. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/OLD__main__.py +0 -0
  12. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/OLD_p_cloud.py +0 -0
  13. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/OLD_utils.py +0 -0
  14. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/_01_foundational_objects/__init__.py +0 -0
  15. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/_01_foundational_objects/hash_addresses.py +0 -0
  16. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/_01_foundational_objects/hash_and_random_signatures.py +0 -0
  17. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/_02_ordinary_functions/__init__.py +0 -0
  18. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/_02_ordinary_functions/assert_ordinarity.py +0 -0
  19. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/_02_ordinary_functions/check_n_positional_args.py +0 -0
  20. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/_02_ordinary_functions/code_normalizer.py +0 -0
  21. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/_02_ordinary_functions/code_normalizer_implementation.py +0 -0
  22. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/_02_ordinary_functions/ordinary_decorator.py +0 -0
  23. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/_02_ordinary_functions/ordinary_funcs.py +0 -0
  24. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/_03_autonomous_functions/__init__.py +0 -0
  25. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/_03_autonomous_functions/autonomicity_checks.py +0 -0
  26. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/_03_autonomous_functions/autonomous_decorators.py +0 -0
  27. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/_03_autonomous_functions/autonomous_funcs.py +0 -0
  28. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/_03_autonomous_functions/call_graph_explorer.py +0 -0
  29. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/_03_autonomous_functions/default_island_singleton.py +0 -0
  30. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/_03_autonomous_functions/names_usage_analyzer.py +0 -0
  31. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/_04_idempotent_functions/__init__.py +0 -0
  32. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/_04_idempotent_functions/astkeywords_dict_convertors.py +0 -0
  33. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/_04_idempotent_functions/idempotency_checks.py +0 -0
  34. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/_04_idempotent_functions/idempotent_decorator.py +0 -0
  35. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/_04_idempotent_functions/kw_args.py +0 -0
  36. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/_04_idempotent_functions/process_augmented_func_src.py +0 -0
  37. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/_05_events_and_exceptions/__init__.py +0 -0
  38. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/_05_events_and_exceptions/context_utils.py +0 -0
  39. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/_05_events_and_exceptions/current_date_gmt_str.py +0 -0
  40. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/_05_events_and_exceptions/event_logger.py +0 -0
  41. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/_05_events_and_exceptions/find_in_callstack.py +0 -0
  42. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/_05_events_and_exceptions/notebook_checker.py +0 -0
  43. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/_05_events_and_exceptions/type_retrievers.py +0 -0
  44. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/_05_events_and_exceptions/uncaught_exception_handlers.py +0 -0
  45. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/_06_mission_control/__events_and_exceptions_OLD__.py +0 -0
  46. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/_06_mission_control/__init__.py +0 -0
  47. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/_06_mission_control/global_state_management.py +0 -0
  48. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/_06_mission_control/summary.py +0 -0
  49. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/_99_misc_utils/__init__.py +0 -0
  50. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/_99_misc_utils/base_16_32_convertors.py +0 -0
  51. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/_99_misc_utils/function_name.py +0 -0
  52. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/_99_misc_utils/id_examiner.py +0 -0
  53. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/_99_misc_utils/long_infoname.py +0 -0
  54. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/_99_misc_utils/output_capturer.py +0 -0
  55. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/_99_misc_utils/package_manager.py +0 -0
  56. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/________OLD________/NEW_hash_address.py +0 -0
  57. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/________OLD________/OLD_dependency_discovery.py +0 -0
  58. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/________OLD________/OLD_environmental.py +0 -0
  59. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/________OLD________/OLD_package_dependencies.py +0 -0
  60. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/________OLD________/OLD_persidicts.py +0 -0
  61. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/________OLD________/OLD_persiout.py +0 -0
  62. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/________OLD________/OLD_persistent_dicts.py +0 -0
  63. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/________OLD________/__init__.py +0 -0
  64. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/________OLD________/test_package_dependencies.py +0 -0
  65. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/__init__.py +0 -0
  66. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras/__main__.py +0 -0
  67. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras.egg-info/SOURCES.txt +0 -0
  68. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras.egg-info/dependency_links.txt +0 -0
  69. {pythagoras-0.8.12 → pythagoras-0.8.14}/pythagoras.egg-info/top_level.txt +0 -0
  70. {pythagoras-0.8.12 → pythagoras-0.8.14}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: pythagoras
3
- Version: 0.8.12
3
+ Version: 0.8.14
4
4
  Summary: Simple framework for planet-scale idempotent computations in Python.
5
5
  Home-page: https://github.com/vladlpavlov/pythagoras
6
6
  Author: Volodymyr (Vlad) Pavlov
@@ -23,7 +23,6 @@ License-File: LICENSE
23
23
  Requires-Dist: persidict
24
24
  Requires-Dist: lz4
25
25
  Requires-Dist: joblib
26
- Requires-Dist: isort
27
26
  Requires-Dist: numpy
28
27
  Requires-Dist: scipy
29
28
  Requires-Dist: pandas
@@ -25,13 +25,13 @@ class ValueAddress(HashAddress):
25
25
  assert len(args) == 0
26
26
  assert len(kwargs) == 0
27
27
 
28
- if isinstance(data, ValueAddress):
29
- self.str_chain = deepcopy(data.str_chain)
28
+ if hasattr(data, "get_ValueAddress"):
29
+ self.str_chain = deepcopy(data.get_ValueAddress().str_chain)
30
30
  return
31
31
 
32
32
  assert not isinstance(data,HashAddress), (
33
- "ValueAddress is the only HashAddress which is allowed "
34
- + "to be converted to ValueAddress")
33
+ "get_ValueAddress is the only way to "
34
+ + "convert HashAddress into ValueAddress")
35
35
 
36
36
  prefix = self._build_prefix(data)
37
37
  hash_value = self._build_hash_value(data)
@@ -41,6 +41,9 @@ class ValueAddress(HashAddress):
41
41
  if push_to_cloud and not (self in pth.global_value_store):
42
42
  pth.global_value_store[self] = data
43
43
 
44
+ def get_ValueAddress(self):
45
+ return self
46
+
44
47
  @property
45
48
  def ready(self):
46
49
  """Check if address points to a value that is ready to be retrieved."""
@@ -167,12 +167,22 @@ class FunctionCallSignature:
167
167
  self.args_addr = ValueAddress(arguments.pack())
168
168
 
169
169
  class FuncOutputAddress(HashAddress):
170
+ value_prefix: str|None = None
170
171
  def __init__(self, f: IdempotentFunction, arguments:dict[str, Any]):
171
172
  assert isinstance(f, IdempotentFunction)
172
173
  arguments = SortedKwArgs(**arguments)
173
174
  signature = FunctionCallSignature(f,arguments)
174
175
  tmp = ValueAddress(signature)
175
- super().__init__(tmp.prefix, tmp.hash_value)
176
+ self.value_prefix = tmp.prefix
177
+ new_prefix = f.f_name
178
+ if f.island_name is not None:
179
+ new_prefix += "_" + f.island_name
180
+ new_hash_value = tmp.hash_value
181
+ super().__init__(new_prefix, new_hash_value)
182
+
183
+ def get_ValueAddress(self):
184
+ return ValueAddress.from_strings(
185
+ prefix=self.value_prefix, hash_value=self.hash_value)
176
186
 
177
187
  @property
178
188
  def ready(self):
@@ -220,15 +230,13 @@ class FuncOutputAddress(HashAddress):
220
230
 
221
231
  @property
222
232
  def function(self) -> IdempotentFunction:
223
- signature_addr = ValueAddress.from_strings(
224
- prefix=self.prefix, hash_value=self.hash_value)
233
+ signature_addr = self.get_ValueAddress()
225
234
  signature = signature_addr.get()
226
235
  return signature.f_addr.get()
227
236
 
228
237
  @property
229
238
  def f_name(self) -> str:
230
- signature_addr = ValueAddress.from_strings(
231
- prefix=self.prefix, hash_value=self.hash_value)
239
+ signature_addr = self.get_ValueAddress()
232
240
  signature = signature_addr.get()
233
241
  return signature.f_name
234
242
 
@@ -238,8 +246,7 @@ class FuncOutputAddress(HashAddress):
238
246
 
239
247
  @property
240
248
  def arguments(self) -> SortedKwArgs:
241
- signature_addr = ValueAddress.from_strings(
242
- prefix=self.prefix, hash_value=self.hash_value)
249
+ signature_addr = self.get_ValueAddress()
243
250
  signature = signature_addr.get()
244
251
  return signature.args_addr.get()
245
252
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: pythagoras
3
- Version: 0.8.12
3
+ Version: 0.8.14
4
4
  Summary: Simple framework for planet-scale idempotent computations in Python.
5
5
  Home-page: https://github.com/vladlpavlov/pythagoras
6
6
  Author: Volodymyr (Vlad) Pavlov
@@ -23,7 +23,6 @@ License-File: LICENSE
23
23
  Requires-Dist: persidict
24
24
  Requires-Dist: lz4
25
25
  Requires-Dist: joblib
26
- Requires-Dist: isort
27
26
  Requires-Dist: numpy
28
27
  Requires-Dist: scipy
29
28
  Requires-Dist: pandas
@@ -1,7 +1,6 @@
1
1
  persidict
2
2
  lz4
3
3
  joblib
4
- isort
5
4
  numpy
6
5
  scipy
7
6
  pandas
@@ -5,7 +5,7 @@ with open("README.md", "r") as f:
5
5
 
6
6
  setuptools.setup(
7
7
  name="pythagoras"
8
- ,version="0.8.12"
8
+ ,version="0.8.14"
9
9
  ,author="Volodymyr (Vlad) Pavlov"
10
10
  ,author_email="vlpavlov@ieee.org"
11
11
  ,description= "Simple framework for planet-scale "
@@ -42,7 +42,6 @@ setuptools.setup(
42
42
  "persidict"
43
43
  , "lz4"
44
44
  , 'joblib'
45
- , 'isort'
46
45
  , 'numpy'
47
46
  , 'scipy'
48
47
  , 'pandas'
File without changes
File without changes
File without changes
File without changes