pythagoras 0.25.7__py3-none-any.whl → 0.25.9__py3-none-any.whl

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.
pythagoras/.DS_Store CHANGED
Binary file
Binary file
Binary file
@@ -50,17 +50,12 @@ def _recursion_pre_validator(
50
50
  raise TypeError(f"Parameter '{param_name}' must be int, got {type(param_value).__name__}")
51
51
  if param_value < 0:
52
52
  raise ValueError(f"Parameter '{param_name}' must be non-negative, got {param_value}")
53
- if param_value in {0,1,2,3,4}:
53
+ if param_value in {0,1}:
54
54
  return pth.VALIDATION_SUCCESSFUL
55
- unpacked_kwargs[param_name] = param_value - 1
56
- result_addr = pth.PureFnExecutionResultAddr(
57
- fn=fn, arguments=unpacked_kwargs)
58
- if result_addr.ready:
59
- return pth.VALIDATION_SUCCESSFUL
60
- result = result_addr.call_signature
61
-
55
+
62
56
  # Binary search to find the smallest n where result_addr.ready is not True
63
- left, right = 2, param_value - 2
57
+ left, right = 2, param_value - 1
58
+ result = pth.VALIDATION_SUCCESSFUL # Default result if all are ready
64
59
 
65
60
  while left <= right:
66
61
  mid = (left + right) // 2
@@ -77,6 +72,7 @@ def _recursion_pre_validator(
77
72
  # Result is ready, search in the right half
78
73
  left = mid + 1
79
74
 
75
+
80
76
  return result
81
77
 
82
78
 
pythagoras/__init__.py CHANGED
@@ -33,6 +33,9 @@ from ._100_top_level_API import *
33
33
  from ._800_signatures_and_converters import *
34
34
 
35
35
  from importlib import metadata as _md
36
- __version__ = _md.version("pythagoras")
36
+ try:
37
+ __version__ = _md.version("pythagoras")
38
+ except _md.PackageNotFoundError:
39
+ __version__ = "unknown"
37
40
 
38
41
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: pythagoras
3
- Version: 0.25.7
3
+ Version: 0.25.9
4
4
  Summary: Planet-scale distributed computing in Python.
5
5
  Keywords: cloud,ML,AI,serverless,distributed,parallel,machine-learning,deep-learning,pythagoras
6
6
  Author: Volodymyr (Vlad) Pavlov
@@ -57,9 +57,12 @@ Description-Content-Type: text/markdown
57
57
  # Pythagoras
58
58
 
59
59
  [![PyPI version](https://img.shields.io/pypi/v/Pythagoras.svg)](https://pypi.org/project/Pythagoras/)
60
- [![Python versions](https://img.shields.io/pypi/pyversions/Pythagoras.svg)](https://pypi.org/project/Pythagoras/)
61
- [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE)
62
- [![Downloads](https://static.pepy.tech/badge/Pythagoras)](https://pepy.tech/project/Pythagoras)
60
+ [![Python versions](https://img.shields.io/pypi/pyversions/Pythagoras.svg)](https://github.com/pythagoras-dev/Pythagoras)
61
+ [![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE)
62
+ [![Downloads](https://img.shields.io/pypi/dm/Pythagoras?color=blue)](https://pypistats.org/packages/pythagoras)
63
+ [![Code style: pep8](https://img.shields.io/badge/code_style-pep8-blue.svg)](https://peps.python.org/pep-0008/)
64
+ [![Docstring Style: Google](https://img.shields.io/badge/docstrings_style-Google-blue)](https://sphinxcontrib-napoleon.readthedocs.io/en/latest/example_google.html)
65
+
63
66
 
64
67
 
65
68
  Planet-scale distributed computing in Python.
@@ -1,23 +1,22 @@
1
- pythagoras/.DS_Store,sha256=5wiLlLmnKc1n5s8_gb9-zTLc63vpMGQMQtrld6M4GP4,8196
2
- pythagoras/_010_basic_portals/.DS_Store,sha256=SyPTnduZgvgOlrP5Jp0o9nC6pUH7g-BK_aB1_dg3ozQ,6148
1
+ pythagoras/.DS_Store,sha256=ZYYjL1C8YSOXGFZXmWt3zmDTcIm1jxEmc0BF3f-v8X0,12292
2
+ pythagoras/_010_basic_portals/.DS_Store,sha256=II7LyKebA7xJVbhYWnf3WYeZwdIwXs29y7S7XNMjeVY,6148
3
3
  pythagoras/_010_basic_portals/__init__.py,sha256=fX7p16EhJErnO2uN4HIu-F1OdfmZ24IMc0qBg9hXgrw,1642
4
4
  pythagoras/_010_basic_portals/basic_portal_core_classes.py,sha256=sWUo8kRomJcM0VxWOJwYHpkUAK1NnBJ8UyR-xIKkVTU,24917
5
5
  pythagoras/_010_basic_portals/long_infoname.py,sha256=KXOmHfQ_5hdZNqfB3Cif2CQiZ3XI3UAOEXKl3DLLYF4,1366
6
6
  pythagoras/_010_basic_portals/portal_tester.py,sha256=icm9ZsmYg3l0DAKC3l4vkCB76jthHWyR_8D9aiSVkuQ,3452
7
7
  pythagoras/_010_basic_portals/post_init_metaclass.py,sha256=94FEVMCJBUReRb-fo2-LW8YWXUXw5lLLYlXMnlxHJuU,1495
8
- pythagoras/_020_ordinary_code_portals/.DS_Store,sha256=16GbH9SWbcO6wuvkCY8k-8Pj5K_nF4povX7lcKOEOrY,8196
8
+ pythagoras/_020_ordinary_code_portals/.DS_Store,sha256=uHrtkrAV_UVGmtRSUsqVr_7PT799H7dfwA7ARtTduDw,6148
9
9
  pythagoras/_020_ordinary_code_portals/__init__.py,sha256=z0-HUn9IWmL0c1FOmFlMzk0THBYwJuDw6FXpV8YeGUM,1321
10
10
  pythagoras/_020_ordinary_code_portals/code_normalizer.py,sha256=vqZ93CXeHBAgiQe_0LZ7qRZ4eT4ZSZit04DjkDWTgGw,6973
11
11
  pythagoras/_020_ordinary_code_portals/exceptions.py,sha256=hYvvXXANTRFKnRKGrOFZjIgwDwRXaUA9pxUmOSAOyog,274
12
12
  pythagoras/_020_ordinary_code_portals/function_processing.py,sha256=ZlA9yVmZTa6Q_LxDoZidK8QJZkrqiFnX89xu45LwJ44,4931
13
13
  pythagoras/_020_ordinary_code_portals/ordinary_decorator.py,sha256=O0WGZYMKtrf2oT8j7GYsrmkQ7PYjiDfTQrJxpjdzSkA,1545
14
14
  pythagoras/_020_ordinary_code_portals/ordinary_portal_core_classes.py,sha256=6QkaBj0gigA7n0xW70KzSmo5Bt8tY_UpmQE5g1lHMLU,16050
15
- pythagoras/_030_data_portals/.DS_Store,sha256=9flOwntPyYLLwCTCE5bdQLps9o3GYwoKUQPHeY96XMo,6148
15
+ pythagoras/_030_data_portals/.DS_Store,sha256=CvBEc4Yc6D-llDES76o3jmze8TquB4ZD1jy2VZ8PRb0,6148
16
16
  pythagoras/_030_data_portals/__init__.py,sha256=f_F9DCmuVgPMgzwRjuNj6FI63S3oXu7lj3zU66Nw7Hc,1427
17
17
  pythagoras/_030_data_portals/data_portal_core_classes.py,sha256=mGOX2OLPiEXyIuBMR66IM1lVZS32Q0Q4NxbFwqPWeGc,22711
18
18
  pythagoras/_030_data_portals/ready_and_get.py,sha256=lgkDygF4lFnZXcCvP5dmvzQX64wrZ8AnYJTI7v2ppng,4172
19
19
  pythagoras/_030_data_portals/storable_decorator.py,sha256=zoJec_HBHFI5PBrF1khkPjaiviKTgdglr2F5HB42ySE,1292
20
- pythagoras/_040_logging_code_portals/.DS_Store,sha256=RsjvHGpmn53BwBQmcJAkfxm1gTuS6uAiL2DzJJymb_I,6148
21
20
  pythagoras/_040_logging_code_portals/__init__.py,sha256=q2hVyOVgE-9Ru3ycilK98YS9Rat8tSc6erd7AtGxpaA,996
22
21
  pythagoras/_040_logging_code_portals/exception_processing_tracking.py,sha256=DH1eeJAeVL6Fn-6sXBqx3Ocu2RXxVhLqdH1mvhM24VY,1850
23
22
  pythagoras/_040_logging_code_portals/execution_environment_summary.py,sha256=-0ynNibGfRh3J1Sq-N9j7eN1FlGvetEBiW0L4K_qJ30,3813
@@ -27,16 +26,13 @@ pythagoras/_040_logging_code_portals/logging_portal_core_classes.py,sha256=nCYWp
27
26
  pythagoras/_040_logging_code_portals/notebook_checker.py,sha256=qO7zfMC20hM4tSxlqB7gy6WI4imWX4Xl7ojSwgeVu0A,871
28
27
  pythagoras/_040_logging_code_portals/output_capturer.py,sha256=ohCp6qqxL7IuJGfnFuCIgj5Oc4HmC8c7uZGE_uzWkZk,4216
29
28
  pythagoras/_040_logging_code_portals/uncaught_exceptions.py,sha256=vQrY1mOYdAeKaCmCCY1MUy4xoXurQkfwQuDA43giPl0,4564
30
- pythagoras/_050_safe_code_portals/.DS_Store,sha256=QTfd3CjdIT5D3IfCl9k-I23xwJsRUDWszBkAIqe4Ino,6148
31
29
  pythagoras/_050_safe_code_portals/__init__.py,sha256=YR-V6W2WZ17SjqmTyY2xdY16xTVEEuLs2MddJj_WCZU,557
32
30
  pythagoras/_050_safe_code_portals/safe_decorator.py,sha256=F0d_UXuiF0S7FGYYmjkBgIuSd5iBNn6Ty7CrHV65_4I,1785
33
31
  pythagoras/_050_safe_code_portals/safe_portal_core_classes.py,sha256=1qMwR5RC4jzQVrcZ92ywHiDfCTFVzwPYZdPV1wH3a08,5850
34
- pythagoras/_060_autonomous_code_portals/.DS_Store,sha256=vpgKPXuQXZ0Iby1X6z5LaaYeHbfUAoHcqCIduOaRQ_I,8196
35
32
  pythagoras/_060_autonomous_code_portals/__init__.py,sha256=hnv_dxxRx8c7IDf1QgVYHfYoeVAz8oD9K0oWI_o9N20,1704
36
33
  pythagoras/_060_autonomous_code_portals/autonomous_decorators.py,sha256=wJ4Dm0Vnvfv_TlwJKTBrLfistAH2V85zk9xxOF0NWk0,4367
37
34
  pythagoras/_060_autonomous_code_portals/autonomous_portal_core_classes.py,sha256=1T5zcujRz3scWlzV6OGwK7GZJpNf-mvFILjOuw6Q4rk,10377
38
35
  pythagoras/_060_autonomous_code_portals/names_usage_analyzer.py,sha256=CZzYo3vII3JdpPoAP9Rny3lYiK48zuw981A76NWGblQ,12020
39
- pythagoras/_070_protected_code_portals/.DS_Store,sha256=1lFlJ5EFymdzGAUAaI30vcaaLHt3F1LwpG7xILf9jsM,6148
40
36
  pythagoras/_070_protected_code_portals/__init__.py,sha256=TvGcJaz20Qqsmv8m2pA4duBtFn_CdCKfkSbOSFoJS8k,989
41
37
  pythagoras/_070_protected_code_portals/basic_pre_validators.py,sha256=N5E1Gz_ULafZ8RQ1MvCQ6y29rfRVTQw7NZTqZ-pMOPo,6570
42
38
  pythagoras/_070_protected_code_portals/fn_arg_names_checker.py,sha256=HZJVhdyX2xNw0e7S9Wyz0jDun-5xBuhM71Tw2zHbYXc,1603
@@ -46,31 +42,26 @@ pythagoras/_070_protected_code_portals/protected_decorators.py,sha256=U3rz4qab9X
46
42
  pythagoras/_070_protected_code_portals/protected_portal_core_classes.py,sha256=oygVKoXPVci8OhpiBAvgT1Uemj3COQSTx8-BUhdHQbg,24042
47
43
  pythagoras/_070_protected_code_portals/system_utils.py,sha256=Uv111FaO33xAA9wZ2iwtW8Gf-FXJBP2ld1sMBmvsHdo,5124
48
44
  pythagoras/_070_protected_code_portals/validation_succesful_const.py,sha256=DrM-Mf6dDLFJ7AmfzntD39Z23YMFfF6am78XU54AlnM,577
49
- pythagoras/_080_pure_code_portals/.DS_Store,sha256=7Hw2ywKd2_cT6DdEeFusb8FikZadNTywabAGqDpOvaw,6148
50
45
  pythagoras/_080_pure_code_portals/__init__.py,sha256=m9fC8hK4ve5VOJJKywAbUcyZJ9v5KiovI0O-HsXZHCg,1302
51
46
  pythagoras/_080_pure_code_portals/pure_core_classes.py,sha256=6UjCU28hDWD1CFeyzl9wFAWtRHc1Hea7yiCxV6-JLaI,27070
52
47
  pythagoras/_080_pure_code_portals/pure_decorator.py,sha256=rmvtw_RpTbLjPTfy_2rdjfNSvV735hzTV_9q3drQKew,4036
53
- pythagoras/_080_pure_code_portals/recursion_pre_validator.py,sha256=pYP7yybkPs-fzuZT9mYyvie_q8H_x0nwdsmU7SRnYyI,4004
54
- pythagoras/_090_swarming_portals/.DS_Store,sha256=ej2yPeAYBAemK4O3B-CM7evu22Yes4SvpAs3z9L4Wd0,6148
48
+ pythagoras/_080_pure_code_portals/recursion_pre_validator.py,sha256=Wb8ZcAO1xlfOUci8EEklToF54Uqmwya6EKmk7DVYcOg,3833
55
49
  pythagoras/_090_swarming_portals/__init__.py,sha256=TuA17PftTBudptAblNtBlD46BqUiitksOtf3y01QKm0,514
56
50
  pythagoras/_090_swarming_portals/output_suppressor.py,sha256=IspRrfLt6pI9iuD8I1dfpnQLpRi5sO11pP5QvIGVoMo,1581
57
51
  pythagoras/_090_swarming_portals/swarming_portals.py,sha256=Dx9aUnfqlb_rSd2YORiImmuTgbPEMITGRJ6JPQts45E,20197
58
- pythagoras/_100_top_level_API/.DS_Store,sha256=1lFlJ5EFymdzGAUAaI30vcaaLHt3F1LwpG7xILf9jsM,6148
59
52
  pythagoras/_100_top_level_API/__init__.py,sha256=Jt6VWVCBygqnwl7_-s-jhdYp6masO_SuM2xQP4a96tk,505
60
53
  pythagoras/_100_top_level_API/default_local_portal.py,sha256=SnykTpTXg1KuT1qwDnrAZ63lYshMy-0nNiUgoOVMxCs,339
61
54
  pythagoras/_100_top_level_API/top_level_API.py,sha256=S2NXW4bfL98o6Txn6NM0EeBb1nzwFtPSl-yWNevAQIE,906
62
- pythagoras/_800_signatures_and_converters/.DS_Store,sha256=1lFlJ5EFymdzGAUAaI30vcaaLHt3F1LwpG7xILf9jsM,6148
63
55
  pythagoras/_800_signatures_and_converters/__init__.py,sha256=bva3Tyy00hC3NVEGnxU_uITXkoMHUfdHUd7pndLks0M,915
64
56
  pythagoras/_800_signatures_and_converters/base_16_32_convertors.py,sha256=-E67xY0zUUMyn-xeRpwz7-sZfFXaaiVFLKQf2OHgNw0,2146
65
57
  pythagoras/_800_signatures_and_converters/current_date_gmt_str.py,sha256=jMBQaUj_33Yto415IxuiRrNoiuxbORZS-En7bPP1JZU,841
66
58
  pythagoras/_800_signatures_and_converters/hash_signatures.py,sha256=-RDExpYwXCWXtjgIfS3xiCYAJxGuiFSZzJ4p2pAvdmc,2278
67
59
  pythagoras/_800_signatures_and_converters/node_signature.py,sha256=W5Rg6q0jBRRJzHnnemt8mVapoy2jIswOEg9xIm4poXo,1090
68
60
  pythagoras/_800_signatures_and_converters/random_signatures.py,sha256=IpZ7uwReCd-K9Yq1IZoubxn7kidnRfpB9-GBKXdqYdA,719
69
- pythagoras/_900_project_stats_collector/.DS_Store,sha256=1lFlJ5EFymdzGAUAaI30vcaaLHt3F1LwpG7xILf9jsM,6148
70
61
  pythagoras/_900_project_stats_collector/__init__.py,sha256=Eagt-BhPPtBGgpMywx2lkLDK1603Y9t_QBdtHKUHHFY,71
71
62
  pythagoras/_900_project_stats_collector/project_analyzer.py,sha256=uhycFKjUIXEpYcZYnak3yn4JFhchl-oZ7wt6spFxhoY,3574
72
- pythagoras/__init__.py,sha256=oA6bi5Ov3Io9Adn8zEmSIMqb2NAJM2MUN5fV1y7bgHA,1312
63
+ pythagoras/__init__.py,sha256=Bi4hsTshHN94HMCEajB1x25yYrw4cMABmWYvByxk-2w,1382
73
64
  pythagoras/core/__init__.py,sha256=yfamQZNt_7FL7vfxSoCTZq2ZL6rupp6qzcp9CHhTj3E,2674
74
- pythagoras-0.25.7.dist-info/WHEEL,sha256=M6du7VZflc4UPsGphmOXHANdgk8zessdJG0DBUuoA-U,78
75
- pythagoras-0.25.7.dist-info/METADATA,sha256=Nl9R_M30uXo0khMWYGbxvazmifYg3hjdZI05qQInQug,13139
76
- pythagoras-0.25.7.dist-info/RECORD,,
65
+ pythagoras-0.25.9.dist-info/WHEEL,sha256=UH59_qNuDUAa1VxQvC6fxmbl24EMw6DOIlT1yp8oeuU,78
66
+ pythagoras-0.25.9.dist-info/METADATA,sha256=DvsRUepZp9Xa-6eins9f4D-apYc7OrP9t2jpcQq4rdw,13439
67
+ pythagoras-0.25.9.dist-info/RECORD,,
@@ -1,4 +1,4 @@
1
1
  Wheel-Version: 1.0
2
- Generator: uv 0.9.5
2
+ Generator: uv 0.9.6
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
Binary file
Binary file
Binary file
Binary file