pythagoras 0.23.15__py3-none-any.whl → 0.23.17__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 +0 -0
- pythagoras/_010_basic_portals/__init__.py +0 -0
- pythagoras/_010_basic_portals/basic_portal_core_classes.py +0 -0
- pythagoras/_010_basic_portals/exceptions.py +0 -0
- pythagoras/_010_basic_portals/long_infoname.py +0 -0
- pythagoras/_010_basic_portals/not_picklable_class.py +0 -0
- pythagoras/_010_basic_portals/portal_tester.py +0 -0
- pythagoras/_010_basic_portals/post_init_metaclass.py +0 -0
- pythagoras/_020_ordinary_code_portals/__init__.py +0 -0
- pythagoras/_020_ordinary_code_portals/code_normalizer.py +0 -0
- pythagoras/_020_ordinary_code_portals/function_processing.py +0 -0
- pythagoras/_020_ordinary_code_portals/ordinary_decorator.py +0 -0
- pythagoras/_020_ordinary_code_portals/ordinary_portal_core_classes.py +0 -0
- pythagoras/_030_data_portals/__init__.py +0 -0
- pythagoras/_030_data_portals/data_portal_core_classes.py +0 -0
- pythagoras/_030_data_portals/ready_and_get.py +0 -0
- pythagoras/_030_data_portals/storable_decorator.py +0 -0
- pythagoras/_040_logging_code_portals/__init__.py +0 -0
- pythagoras/_040_logging_code_portals/exception_processing_tracking.py +0 -0
- pythagoras/_040_logging_code_portals/execution_environment_summary.py +0 -0
- pythagoras/_040_logging_code_portals/kw_args.py +0 -0
- pythagoras/_040_logging_code_portals/logging_decorator.py +0 -0
- pythagoras/_040_logging_code_portals/logging_portal_core_classes.py +0 -0
- pythagoras/_040_logging_code_portals/notebook_checker.py +0 -0
- pythagoras/_040_logging_code_portals/output_capturer.py +0 -0
- pythagoras/_040_logging_code_portals/uncaught_exceptions.py +0 -0
- pythagoras/_050_safe_code_portals/__init__.py +0 -0
- pythagoras/_050_safe_code_portals/safe_decorator.py +0 -0
- pythagoras/_050_safe_code_portals/safe_portal_core_classes.py +0 -0
- pythagoras/_060_autonomous_code_portals/__init__.py +0 -0
- pythagoras/_060_autonomous_code_portals/autonomous_decorators.py +0 -0
- pythagoras/_060_autonomous_code_portals/autonomous_portal_core_classes.py +0 -0
- pythagoras/_060_autonomous_code_portals/names_usage_analyzer.py +0 -0
- pythagoras/_070_protected_code_portals/__init__.py +0 -0
- pythagoras/_070_protected_code_portals/basic_pre_validators.py +0 -0
- pythagoras/_070_protected_code_portals/fn_arg_names_checker.py +0 -0
- pythagoras/_070_protected_code_portals/list_flattener.py +0 -0
- pythagoras/_070_protected_code_portals/package_manager.py +0 -0
- pythagoras/_070_protected_code_portals/protected_decorators.py +0 -0
- pythagoras/_070_protected_code_portals/protected_portal_core_classes.py +0 -0
- pythagoras/_070_protected_code_portals/system_utils.py +0 -0
- pythagoras/_070_protected_code_portals/validation_succesful_const.py +0 -0
- pythagoras/_080_pure_code_portals/__init__.py +0 -0
- pythagoras/_080_pure_code_portals/pure_core_classes.py +0 -0
- pythagoras/_080_pure_code_portals/pure_decorator.py +0 -0
- pythagoras/_080_pure_code_portals/recursion_pre_validator.py +0 -0
- pythagoras/_090_swarming_portals/__init__.py +0 -0
- pythagoras/_090_swarming_portals/output_suppressor.py +0 -0
- pythagoras/_090_swarming_portals/swarming_portals.py +0 -0
- pythagoras/_100_top_level_API/__init__.py +0 -0
- pythagoras/_100_top_level_API/default_local_portal.py +0 -0
- pythagoras/_100_top_level_API/top_level_API.py +0 -0
- pythagoras/_800_signatures_and_converters/__init__.py +0 -0
- pythagoras/_800_signatures_and_converters/base_16_32_convertors.py +0 -0
- pythagoras/_800_signatures_and_converters/current_date_gmt_str.py +0 -0
- pythagoras/_800_signatures_and_converters/hash_signatures.py +0 -0
- pythagoras/_800_signatures_and_converters/node_signature.py +0 -0
- pythagoras/_800_signatures_and_converters/random_signatures.py +0 -0
- pythagoras/_900_project_stats_collector/__init__.py +0 -0
- pythagoras/_900_project_stats_collector/project_analyzer.py +0 -0
- pythagoras/__init__.py +0 -0
- pythagoras/core/__init__.py +0 -0
- {pythagoras-0.23.15.dist-info → pythagoras-0.23.17.dist-info}/METADATA +119 -2
- pythagoras-0.23.17.dist-info/RECORD +65 -0
- {pythagoras-0.23.15.dist-info → pythagoras-0.23.17.dist-info}/WHEEL +1 -1
- pythagoras/_010_basic_portals/.DS_Store +0 -0
- pythagoras/_020_ordinary_code_portals/.DS_Store +0 -0
- pythagoras/_030_data_portals/.DS_Store +0 -0
- pythagoras/_040_logging_code_portals/.DS_Store +0 -0
- pythagoras/_050_safe_code_portals/.DS_Store +0 -0
- pythagoras/_060_autonomous_code_portals/.DS_Store +0 -0
- pythagoras/_070_protected_code_portals/.DS_Store +0 -0
- pythagoras/_080_pure_code_portals/.DS_Store +0 -0
- pythagoras/_090_swarming_portals/.DS_Store +0 -0
- pythagoras/_100_top_level_API/.DS_Store +0 -0
- pythagoras/_800_signatures_and_converters/.DS_Store +0 -0
- pythagoras/_900_project_stats_collector/.DS_Store +0 -0
- pythagoras-0.23.15.dist-info/RECORD +0 -77
pythagoras/.DS_Store
CHANGED
|
Binary file
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
pythagoras/__init__.py
CHANGED
|
File without changes
|
pythagoras/core/__init__.py
CHANGED
|
File without changes
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.3
|
|
2
2
|
Name: pythagoras
|
|
3
|
-
Version: 0.23.
|
|
3
|
+
Version: 0.23.17
|
|
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
|
|
@@ -66,7 +66,7 @@ data science, machine learning, and AI workflows.
|
|
|
66
66
|
Pythagoras excels at complex, long-running, resource-demanding computations.
|
|
67
67
|
It’s not recommended for real-time, latency-sensitive workflows.
|
|
68
68
|
|
|
69
|
-
##
|
|
69
|
+
## Tutorials
|
|
70
70
|
|
|
71
71
|
Pythagoras elevates two popular techniques — memoization and parallelization —
|
|
72
72
|
to a global scale and then fuses them, unlocking performance and scalability
|
|
@@ -85,6 +85,123 @@ preferred functional patterns, augmented by new capabilities.
|
|
|
85
85
|
|
|
86
86
|
**!!! BOOKMARK THIS PAGE AND COME BACK LATER, WE WILL PUBLISH MORE TUTORIALS SOON !!!**
|
|
87
87
|
|
|
88
|
+
## Videos
|
|
89
|
+
|
|
90
|
+
* [Data Phoenix Webinar, August 27, 2025](https://youtu.be/eb6_atu1RQI) ([slides](https://docs.google.com/presentation/d/1fGBqnp0aqVHPJ-BYGYnUll1_TJI_WObAbEVX89Z3-yA))
|
|
91
|
+
|
|
92
|
+
|
|
93
|
+
## Usage Examples
|
|
94
|
+
|
|
95
|
+
Importing Pythagoras:
|
|
96
|
+
```python
|
|
97
|
+
from pythagoras.core import *
|
|
98
|
+
import pythagoras as pth
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
Creating a portal based on a (shared) folder:
|
|
102
|
+
```python
|
|
103
|
+
my_portal = get_portal("./my_local_folder")
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
Checking the state of a portal:
|
|
107
|
+
```python
|
|
108
|
+
my_portal.describe()
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
Decorating a function:
|
|
112
|
+
```python
|
|
113
|
+
@pure()
|
|
114
|
+
def my_long_running_function(a:float, b:float) -> float:
|
|
115
|
+
from time import sleep # imports must be placed inside a pure function
|
|
116
|
+
for i in range(5):
|
|
117
|
+
sleep(1)
|
|
118
|
+
print("waiting....")
|
|
119
|
+
return a+10*b
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
Using a decorated function synchronously:
|
|
123
|
+
```python
|
|
124
|
+
result = my_long_running_function(a=1, b=2)
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
Using a decorated function asynchronously:
|
|
128
|
+
```python
|
|
129
|
+
future_result_address = my_long_running_function.swarm(a=10, b=20)
|
|
130
|
+
if ready(future_result_address):
|
|
131
|
+
result = get(future_result_address)
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
Pre-conditions for executing a function:
|
|
135
|
+
```python
|
|
136
|
+
@pure(pre_validators=[
|
|
137
|
+
unused_ram(Gb=5),
|
|
138
|
+
installed_packages("scikit-learn","pandas"),
|
|
139
|
+
unused_cpu(cores=10)])
|
|
140
|
+
def my_long_running_function(a:float, b:float) -> float:
|
|
141
|
+
from time import sleep
|
|
142
|
+
for i in range(5):
|
|
143
|
+
sleep(1)
|
|
144
|
+
print(
|
|
145
|
+
"waiting...."
|
|
146
|
+
)
|
|
147
|
+
return a+10*b
|
|
148
|
+
```
|
|
149
|
+
|
|
150
|
+
Recursion:
|
|
151
|
+
```python
|
|
152
|
+
@pure(pre_validators=[recursive_parameters("n")])
|
|
153
|
+
def factorial(n:int)->int:
|
|
154
|
+
if n == 1:
|
|
155
|
+
return 1
|
|
156
|
+
else:
|
|
157
|
+
return n*factorial(n=n-1)
|
|
158
|
+
```
|
|
159
|
+
|
|
160
|
+
Partial function application:
|
|
161
|
+
```python
|
|
162
|
+
@pure()
|
|
163
|
+
def my_map(input_list:list, transformer: PureFn)->list:
|
|
164
|
+
result = []
|
|
165
|
+
for element in input_list:
|
|
166
|
+
transformed_element = transformer(x=element)
|
|
167
|
+
result.append(transformed_element)
|
|
168
|
+
return result
|
|
169
|
+
|
|
170
|
+
@pure()
|
|
171
|
+
def my_square(x):
|
|
172
|
+
return x*x
|
|
173
|
+
|
|
174
|
+
result = my_map(input_list=[1,2,3,4,5], transformer=my_square)
|
|
175
|
+
|
|
176
|
+
my_square_map = my_map.fix_kwargs(transformer = my_square)
|
|
177
|
+
|
|
178
|
+
result = my_square_map(input_list=[1,2,3,4,5])
|
|
179
|
+
```
|
|
180
|
+
|
|
181
|
+
Mutually recursive functions:
|
|
182
|
+
```python
|
|
183
|
+
@pure(pre_validators=recursive_parameters("n"))
|
|
184
|
+
def is_even(n:int, is_odd ,is_even)->bool:
|
|
185
|
+
if n in {0,2}:
|
|
186
|
+
return True
|
|
187
|
+
else:
|
|
188
|
+
return is_odd(n=n-1, is_even=is_even, is_odd=is_odd)
|
|
189
|
+
|
|
190
|
+
@pure(pre_validators=recursive_parameters("n"))
|
|
191
|
+
def is_odd(n:int, is_even, is_odd)->bool:
|
|
192
|
+
if n in {0,2}:
|
|
193
|
+
return False
|
|
194
|
+
else:
|
|
195
|
+
return is_even(n=n-1, is_odd=is_odd, is_even=is_even)
|
|
196
|
+
|
|
197
|
+
(is_even, is_odd) = (
|
|
198
|
+
is_even.fix_kwargs(is_odd=is_odd, is_even=is_even)
|
|
199
|
+
, is_odd.fix_kwargs(is_odd=is_odd, is_even=is_even) )
|
|
200
|
+
|
|
201
|
+
assert is_even(n=10)
|
|
202
|
+
assert is_odd(n=11)
|
|
203
|
+
```
|
|
204
|
+
|
|
88
205
|
## How to get it?
|
|
89
206
|
|
|
90
207
|
The source code is hosted on GitHub at: https://github.com/pythagoras-dev/pythagoras
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
pythagoras/.DS_Store,sha256=QNNcLWt_ymcoqL6JxhBobOuDsh4y1v4N3tzxs_WL_a8,6148
|
|
2
|
+
pythagoras/_010_basic_portals/__init__.py,sha256=ER0kV_th7hba4nXXjoP-joN-cqkUMoH4iRSCgKUP75Y,1703
|
|
3
|
+
pythagoras/_010_basic_portals/basic_portal_core_classes.py,sha256=p5NZ0JNVgf_EUq9nraYAgxUHqIqHbHO4djDnCxfJE5k,20229
|
|
4
|
+
pythagoras/_010_basic_portals/exceptions.py,sha256=oVurWFdpFZ2xvt8SO8kukgaV8U-qOtH0qw-GO3dCs5E,237
|
|
5
|
+
pythagoras/_010_basic_portals/long_infoname.py,sha256=l0KyvwIziXBMiGKKjtgdHIKtbrFaCifJzdrb-uHpzy0,650
|
|
6
|
+
pythagoras/_010_basic_portals/not_picklable_class.py,sha256=L3QFoyxTCmj65kxeBnMbacRN6h_AYR5yKE1bE9_9d8A,352
|
|
7
|
+
pythagoras/_010_basic_portals/portal_tester.py,sha256=zv2_YL_HaXk074_WUzA6xSlQFIhK94A1G6-E2FnsbeA,1817
|
|
8
|
+
pythagoras/_010_basic_portals/post_init_metaclass.py,sha256=bb5oVuTkZie8CuZNQiAnSxFH1NKnT2RA8kVPipNIXH4,583
|
|
9
|
+
pythagoras/_020_ordinary_code_portals/__init__.py,sha256=p3kSqaQYj0xlhk9BwptFgA1USdTbfHkAB5Q9MH-ANI0,1295
|
|
10
|
+
pythagoras/_020_ordinary_code_portals/code_normalizer.py,sha256=7L3P5AaZKS9IPqrIEv5UJc3HHDP48fw6EGQWXZcxQtM,5004
|
|
11
|
+
pythagoras/_020_ordinary_code_portals/function_processing.py,sha256=rlhB0dpaUztv6SM2wlUdaUdETcV2pVUICYufVrQCRcc,3623
|
|
12
|
+
pythagoras/_020_ordinary_code_portals/ordinary_decorator.py,sha256=J4qx03NEEgpYWvg4D8UkAL0PdtAt2sQyMN1op6LMFsA,1028
|
|
13
|
+
pythagoras/_020_ordinary_code_portals/ordinary_portal_core_classes.py,sha256=bY2Hzy19lTezv96dSc1l5SsaGxNkMTOq8IsfnkdV1wY,9743
|
|
14
|
+
pythagoras/_030_data_portals/__init__.py,sha256=f_F9DCmuVgPMgzwRjuNj6FI63S3oXu7lj3zU66Nw7Hc,1427
|
|
15
|
+
pythagoras/_030_data_portals/data_portal_core_classes.py,sha256=6MPs9hIzvSro-6UBWa_Ph1wOQsgjj8pwTaerVF-r4bE,20406
|
|
16
|
+
pythagoras/_030_data_portals/ready_and_get.py,sha256=UKiQHkLhdAdvEwP5BTdoAnp4XEs7HDGx6026M2eMuc0,2842
|
|
17
|
+
pythagoras/_030_data_portals/storable_decorator.py,sha256=l8W3GhVmIscgjoCTGq3tmdehKGDLIVnFbTM-GW-1G4g,578
|
|
18
|
+
pythagoras/_040_logging_code_portals/__init__.py,sha256=q2hVyOVgE-9Ru3ycilK98YS9Rat8tSc6erd7AtGxpaA,996
|
|
19
|
+
pythagoras/_040_logging_code_portals/exception_processing_tracking.py,sha256=sU-FCayvppF6gafBRAKsJcMC0JMBcnCCiLzu3yFmxiA,778
|
|
20
|
+
pythagoras/_040_logging_code_portals/execution_environment_summary.py,sha256=hTvTbadYAtisZ4H8rq-n_hsKPCS38jsSz8lw_A1DIqY,2268
|
|
21
|
+
pythagoras/_040_logging_code_portals/kw_args.py,sha256=4EYpPrr2xCgFAarmdFRKlEvGhIHC9kk9kc-VPW4S-XA,2717
|
|
22
|
+
pythagoras/_040_logging_code_portals/logging_decorator.py,sha256=079w2_Z5HhXFLrgyXQekjuOby9CdUgFUGRbRT5lpujU,891
|
|
23
|
+
pythagoras/_040_logging_code_portals/logging_portal_core_classes.py,sha256=JgULrn--nrQnqknUT5eEEq24pbgn-ec8zNss-AIHGyo,21970
|
|
24
|
+
pythagoras/_040_logging_code_portals/notebook_checker.py,sha256=5lQJDIDzhRIRSmX1T88nAREMEMoDDFf0OIKcvTpnhzk,541
|
|
25
|
+
pythagoras/_040_logging_code_portals/output_capturer.py,sha256=ohCp6qqxL7IuJGfnFuCIgj5Oc4HmC8c7uZGE_uzWkZk,4216
|
|
26
|
+
pythagoras/_040_logging_code_portals/uncaught_exceptions.py,sha256=B3bPvX5nnJJx4JjLSGdl1xXOBU2pqo3CP-MomJAfXaE,3121
|
|
27
|
+
pythagoras/_050_safe_code_portals/__init__.py,sha256=YR-V6W2WZ17SjqmTyY2xdY16xTVEEuLs2MddJj_WCZU,557
|
|
28
|
+
pythagoras/_050_safe_code_portals/safe_decorator.py,sha256=ZTsIMmtb3eGAWSpwdMYXRmIyaJiqV6mdFbB_Mqng784,804
|
|
29
|
+
pythagoras/_050_safe_code_portals/safe_portal_core_classes.py,sha256=KCQ-7AzpTSSG17ud9IjkiZW6oX-ydy0rVbxA7AmxyAs,2558
|
|
30
|
+
pythagoras/_060_autonomous_code_portals/__init__.py,sha256=hnv_dxxRx8c7IDf1QgVYHfYoeVAz8oD9K0oWI_o9N20,1704
|
|
31
|
+
pythagoras/_060_autonomous_code_portals/autonomous_decorators.py,sha256=diWX03jZaInc55jAg391ZRBh-St5exJRLDZiS7dqYvg,2895
|
|
32
|
+
pythagoras/_060_autonomous_code_portals/autonomous_portal_core_classes.py,sha256=21JNwBgEoIHXwCrBPb_eN5vMaHTZ98LdFkHuaMHtkI0,6665
|
|
33
|
+
pythagoras/_060_autonomous_code_portals/names_usage_analyzer.py,sha256=mqrzAQw3tGxPYXsMA8E0fhhIpJopvRFrzkc1MVSsPXQ,7474
|
|
34
|
+
pythagoras/_070_protected_code_portals/__init__.py,sha256=TvGcJaz20Qqsmv8m2pA4duBtFn_CdCKfkSbOSFoJS8k,989
|
|
35
|
+
pythagoras/_070_protected_code_portals/basic_pre_validators.py,sha256=6wrWKumBr2eyEhqpzZv8UlcX0WwUnAUzQ9D4cFyx1OE,2067
|
|
36
|
+
pythagoras/_070_protected_code_portals/fn_arg_names_checker.py,sha256=6FjOUJmGgDCjkFcXf5Ook-E9eiEFguarY2qqzOyJj7A,1230
|
|
37
|
+
pythagoras/_070_protected_code_portals/list_flattener.py,sha256=mlS1Eq2dwgHbNI55CPXKXzbRca49pDNRHTgCOmuo1LU,331
|
|
38
|
+
pythagoras/_070_protected_code_portals/package_manager.py,sha256=QRHXGIatzx6NKPPC06CMijUmASl_mrPwikVBWG7Z03Y,1965
|
|
39
|
+
pythagoras/_070_protected_code_portals/protected_decorators.py,sha256=5Y62rswuD7CD1duXd54_rhMb6-lLh7YvgdDgojP577g,1598
|
|
40
|
+
pythagoras/_070_protected_code_portals/protected_portal_core_classes.py,sha256=ZTSD6m9HGTJDa9WuInb-0wqzP8NzaoIqWapg9XUXD-E,13583
|
|
41
|
+
pythagoras/_070_protected_code_portals/system_utils.py,sha256=h4oiEQFAyFKzqvd0ywwAI0WDYKSuIh_vif86XQIXYwE,2360
|
|
42
|
+
pythagoras/_070_protected_code_portals/validation_succesful_const.py,sha256=4NWGwN5Gu6kbbHTMkmJs8Ym0rFee_cIE2VlAPonmlJI,298
|
|
43
|
+
pythagoras/_080_pure_code_portals/__init__.py,sha256=OI7836lLHT51SYdFfmWp4GdGRgcAkpLiAj-Zj_g2Gxo,1052
|
|
44
|
+
pythagoras/_080_pure_code_portals/pure_core_classes.py,sha256=EaJEvx8CH4523APjsEgc5LkKFV0h5se7F4o2Xy-XUfs,20441
|
|
45
|
+
pythagoras/_080_pure_code_portals/pure_decorator.py,sha256=WHZQzmyxgCpALHrqfeiOMrM6TDkZcv0Y2b756ez4Q2k,2279
|
|
46
|
+
pythagoras/_080_pure_code_portals/recursion_pre_validator.py,sha256=n03ooGISJvuwNWteBN9t7CFFSLYAu86AHHFJVcywPqg,1865
|
|
47
|
+
pythagoras/_090_swarming_portals/__init__.py,sha256=TuA17PftTBudptAblNtBlD46BqUiitksOtf3y01QKm0,514
|
|
48
|
+
pythagoras/_090_swarming_portals/output_suppressor.py,sha256=g-bMm8xioia6uxFlkS71CV6pSEmc5RNqdRasi1RSJgc,626
|
|
49
|
+
pythagoras/_090_swarming_portals/swarming_portals.py,sha256=is47E5fxziUKMDJciZG0s4-jYjMln3f51eUt_fWTufs,12294
|
|
50
|
+
pythagoras/_100_top_level_API/__init__.py,sha256=s5LtwskY2nwkRPFKzP0PrCzQ1c9oScZO0kM9_bWLi3U,64
|
|
51
|
+
pythagoras/_100_top_level_API/default_local_portal.py,sha256=SnykTpTXg1KuT1qwDnrAZ63lYshMy-0nNiUgoOVMxCs,339
|
|
52
|
+
pythagoras/_100_top_level_API/top_level_API.py,sha256=S2NXW4bfL98o6Txn6NM0EeBb1nzwFtPSl-yWNevAQIE,906
|
|
53
|
+
pythagoras/_800_signatures_and_converters/__init__.py,sha256=WAzpPe8fsh_w_7HhVxJZLBid7gxnW3pmPZW86fYnJjk,166
|
|
54
|
+
pythagoras/_800_signatures_and_converters/base_16_32_convertors.py,sha256=ZjVtKjjjMgMgHUhM-1Q9qLYWCDKhllqq9z4YgKL0qCg,1236
|
|
55
|
+
pythagoras/_800_signatures_and_converters/current_date_gmt_str.py,sha256=K-rGHyrREsyBdYMq7vWrv3FdAacepWQpvOfT_mrZqNM,268
|
|
56
|
+
pythagoras/_800_signatures_and_converters/hash_signatures.py,sha256=AsUID_Z7yeF06Jmk8kKAFXIuxoF0hN0OwOS1T5nu7_k,989
|
|
57
|
+
pythagoras/_800_signatures_and_converters/node_signature.py,sha256=pSZ4yB4aXNH6yhizQ6Z3m4uRcuDNkr_-lZ8024NbZ7w,592
|
|
58
|
+
pythagoras/_800_signatures_and_converters/random_signatures.py,sha256=wXTyjATM8IwMXq2vHhoAq6T-yI7DcN72Svyt05EjFBo,323
|
|
59
|
+
pythagoras/_900_project_stats_collector/__init__.py,sha256=Eagt-BhPPtBGgpMywx2lkLDK1603Y9t_QBdtHKUHHFY,71
|
|
60
|
+
pythagoras/_900_project_stats_collector/project_analyzer.py,sha256=uhycFKjUIXEpYcZYnak3yn4JFhchl-oZ7wt6spFxhoY,3574
|
|
61
|
+
pythagoras/__init__.py,sha256=TMPtJdSi_WShCpJnsVVdO48Wcvs78GMbUi5gHc1eMLw,1233
|
|
62
|
+
pythagoras/core/__init__.py,sha256=cXtQ-Vbm8TqzazvkFws5cV3AEEYbEKzNXYeuHeLGFK0,328
|
|
63
|
+
pythagoras-0.23.17.dist-info/WHEEL,sha256=NHRAbdxxzyL9K3IO2LjmlNqKSyPZnKv2BD16YYVKo18,79
|
|
64
|
+
pythagoras-0.23.17.dist-info/METADATA,sha256=b3mlrM4fFVErDphFSruQ8SyKvSs7jsss6fgTQ7CW6ek,7605
|
|
65
|
+
pythagoras-0.23.17.dist-info/RECORD,,
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -1,77 +0,0 @@
|
|
|
1
|
-
pythagoras/.DS_Store,sha256=e7088b94b9a729cd67e6cf3f81bf7ecd32dceb7be930640c42dae577a33818fe,8196
|
|
2
|
-
pythagoras/_010_basic_portals/.DS_Store,sha256=4b23d39ddb9982f80e96b3f9269d28f670baa541fb83e04afda075fdd837a334,6148
|
|
3
|
-
pythagoras/_010_basic_portals/__init__.py,sha256=111d2457fb61ee16dae275d78e83fe8e837e72a9143281f889148280a50fef96,1703
|
|
4
|
-
pythagoras/_010_basic_portals/basic_portal_core_classes.py,sha256=a79359d0935581ffc452af67ada600831507a88a876c73b87630e70b17c91399,20229
|
|
5
|
-
pythagoras/_010_basic_portals/exceptions.py,sha256=a15bab585769159db1bedf123bc92e920695f14faa3ad1f4ab0f863b7742b391,237
|
|
6
|
-
pythagoras/_010_basic_portals/long_infoname.py,sha256=9742b2bf023389704c88628a8ed81d1c82ad6eb15a0a27c9cddadbfae1e9cf2d,650
|
|
7
|
-
pythagoras/_010_basic_portals/not_picklable_class.py,sha256=2f7405a32c530a68fae64c5e06731b69c44dea1fc0611e72284d5b13dffd77c0,352
|
|
8
|
-
pythagoras/_010_basic_portals/portal_tester.py,sha256=cefdbf60bfc7697934ef8fd653303ac5295014884af780351baf84d859ec6de0,1817
|
|
9
|
-
pythagoras/_010_basic_portals/post_init_metaclass.py,sha256=6dbe6856e4e46627bc0ae64d4220274b1147d4d2a74f6440f2454f8a93485c7e,583
|
|
10
|
-
pythagoras/_020_ordinary_code_portals/.DS_Store,sha256=d7a19b1fd4966dc3bac2ebe4098f24fbc3e3e4afe7178a68bd7ee570a3843ab6,8196
|
|
11
|
-
pythagoras/_020_ordinary_code_portals/__init__.py,sha256=a77912a9a4188f4c65864f41c29b45800d5449d4db7c790007943d307f80348d,1295
|
|
12
|
-
pythagoras/_020_ordinary_code_portals/code_normalizer.py,sha256=ecbdcfe40699292f483eaac812fe5425cdc71c33f8f1fc3a1064165d973142d3,5004
|
|
13
|
-
pythagoras/_020_ordinary_code_portals/function_processing.py,sha256=ae5841d1da5a533b6fe92336c2551d6947444dc576a55508098b9f56b40245c7,3623
|
|
14
|
-
pythagoras/_020_ordinary_code_portals/ordinary_decorator.py,sha256=278ab1d37344120a585af8380fc52400bd0f76d02ddac43230dd68a7a2cc16c0,1028
|
|
15
|
-
pythagoras/_020_ordinary_code_portals/ordinary_portal_core_classes.py,sha256=6d8d87cf2d7d9537b3bfde9d49cd65e52b1a1b13643133aaf08b1f9e4755d706,9743
|
|
16
|
-
pythagoras/_030_data_portals/.DS_Store,sha256=f5f94ec27b4fc982cbc024c21396dd40ba6cf68dc6630a0a5103c7798f7a5cca,6148
|
|
17
|
-
pythagoras/_030_data_portals/__init__.py,sha256=7ff17d0c29ae5603cc833c118ee363e8523add2de85eeee58f7cd4eba370ec77,1427
|
|
18
|
-
pythagoras/_030_data_portals/data_portal_core_classes.py,sha256=e8c3ecf61233bd2ae8fba50159afcf875c0e42c8238fca704da7ab545fabe1b1,20406
|
|
19
|
-
pythagoras/_030_data_portals/ready_and_get.py,sha256=50a8901e42e174076f1303f9053768027a785c4b3b1c31b1eb4dba33678cb9cd,2842
|
|
20
|
-
pythagoras/_030_data_portals/storable_decorator.py,sha256=97c5b71a156622c7208e80931aaded99d7a12860cb2159c56d333e196fb51b88,578
|
|
21
|
-
pythagoras/_040_logging_code_portals/.DS_Store,sha256=46c8ef1c6a669f9dc1c014267090247f19b5813b92eae0222f60f3249ca66ff2,6148
|
|
22
|
-
pythagoras/_040_logging_code_portals/__init__.py,sha256=ab6855c8e56013ef51bb7c9c8a52bdf184bd45ab7cb5273a7ab77b02d1b1a5a0,996
|
|
23
|
-
pythagoras/_040_logging_code_portals/exception_processing_tracking.py,sha256=b14f8509acafa6917a81a7c14402ac25c302d0930172708288bceedf2166c620,778
|
|
24
|
-
pythagoras/_040_logging_code_portals/execution_environment_summary.py,sha256=853bd36da75802d8ac6781fcaeafa7fe1b0a3c24b7f23b12cfc970fc0d4322a6,2268
|
|
25
|
-
pythagoras/_040_logging_code_portals/kw_args.py,sha256=e046293ebaf6c4280501aae674544a944bc68481c2f6493d91cf953d6e12f970,2717
|
|
26
|
-
pythagoras/_040_logging_code_portals/logging_decorator.py,sha256=d3bf70dbf6791e15c52eb8325d07a48ee39bcbd09d5201541916d14f9969ba35,891
|
|
27
|
-
pythagoras/_040_logging_code_portals/logging_portal_core_classes.py,sha256=26050bae7fbe9eb427aa49d44f978412adb8a5b827f9e73cccdb2cf802071b2a,21970
|
|
28
|
-
pythagoras/_040_logging_code_portals/notebook_checker.py,sha256=e654090c80f38512114a65f54fcf2701110c10ca030c57f438829cbd3a678739,541
|
|
29
|
-
pythagoras/_040_logging_code_portals/output_capturer.py,sha256=a210a9eaaab12fb22e2467e716e088823e4e7381e60bc73bb99184feecd69199,4216
|
|
30
|
-
pythagoras/_040_logging_code_portals/uncaught_exceptions.py,sha256=0776cfbd7e679c9271e098cb486765d715ce054da9aa8dc23fe32898901f5da1,3121
|
|
31
|
-
pythagoras/_050_safe_code_portals/.DS_Store,sha256=4137dddc28dd213e43dc87c297d93e236df1c09b115035accc190022a7b8227a,6148
|
|
32
|
-
pythagoras/_050_safe_code_portals/__init__.py,sha256=611f95e96d96675ed28ea993c98db1758d7ac5354412e2ecd8c75d263fd60995,557
|
|
33
|
-
pythagoras/_050_safe_code_portals/safe_decorator.py,sha256=653b08326b5bdde180592a7074c6174662326898aa57a99d15b07f32a9e0efce,804
|
|
34
|
-
pythagoras/_050_safe_code_portals/safe_portal_core_classes.py,sha256=28243eec0ce94d2486d7bb9df488e48995baa17fb2772d2b55bc40ec09b1c80b,2558
|
|
35
|
-
pythagoras/_060_autonomous_code_portals/.DS_Store,sha256=be980a3d7b905d9d086f2d57eb3e4b69a61e1db7d40281dca8221db8e69143f2,8196
|
|
36
|
-
pythagoras/_060_autonomous_code_portals/__init__.py,sha256=867bff771c51c7c73b2037f54205581df628795033f280fd2b4a1623fa3d376d,1704
|
|
37
|
-
pythagoras/_060_autonomous_code_portals/autonomous_decorators.py,sha256=762597d378d96889dce798c0837f75651061f92b797b12512c36624bb76a62f8,2895
|
|
38
|
-
pythagoras/_060_autonomous_code_portals/autonomous_portal_core_classes.py,sha256=db524dc01804a081d7c02ac13dbfde379bcc6874d9f7c2dd1641ee68c1ed908d,6665
|
|
39
|
-
pythagoras/_060_autonomous_code_portals/names_usage_analyzer.py,sha256=9aaaf3010c37b46c4f617b0c03c1347e1848a49a29bd116bce47353154ac3d74,7474
|
|
40
|
-
pythagoras/_070_protected_code_portals/.DS_Store,sha256=d65165279105ca6773180500688df4bdc69a2c7b771752f0a46ef120b7fd8ec3,6148
|
|
41
|
-
pythagoras/_070_protected_code_portals/__init__.py,sha256=4ef19c25acf6d10aac9aff26da903876e06d167fc274229f9126ce485a094bc9,989
|
|
42
|
-
pythagoras/_070_protected_code_portals/basic_pre_validators.py,sha256=eb0ad62ae981af67b2121aa9cd9bfc525717d16c149c053343d0f8705cb1d4e1,2067
|
|
43
|
-
pythagoras/_070_protected_code_portals/fn_arg_names_checker.py,sha256=e858ce5099868030a39057177f93a893e13d7a210582e6ab636aaaccec898fb0,1230
|
|
44
|
-
pythagoras/_070_protected_code_portals/list_flattener.py,sha256=9a54b512ad9dc201db348e7908f5ca5f36d171ae3da433511d38023a6ba8d4b5,331
|
|
45
|
-
pythagoras/_070_protected_code_portals/package_manager.py,sha256=4111d71886adcf1e8d28f3c2d3a08c8a352601297f9ab3f08a4541586ed9d376,1965
|
|
46
|
-
pythagoras/_070_protected_code_portals/protected_decorators.py,sha256=e58eb6aecc2e0fb083d5db97779e3fae131bebe94b87b62f81d0e0a233f9efb8,1598
|
|
47
|
-
pythagoras/_070_protected_code_portals/protected_portal_core_classes.py,sha256=653483ea6f471932436bd5ae2276fed30ab33fc3736a822a59aa60f575170fe1,13583
|
|
48
|
-
pythagoras/_070_protected_code_portals/system_utils.py,sha256=878a22110140c852b3aaf774cb0c0023458360a4ae221fef89ff3a5d02176301,2360
|
|
49
|
-
pythagoras/_070_protected_code_portals/validation_succesful_const.py,sha256=e0d586c0de46bba91b6c74cc92626cf189b4ac579efdc204d959403e89e69492,298
|
|
50
|
-
pythagoras/_080_pure_code_portals/.DS_Store,sha256=ec7c36cb029ddbf713e83744785bac6fc16291969d353cb069b006a83a4ebdac,6148
|
|
51
|
-
pythagoras/_080_pure_code_portals/__init__.py,sha256=388efcdfa94b1d3e754987457e65a9e067464607009292e2023f998ff8361b1a,1052
|
|
52
|
-
pythagoras/_080_pure_code_portals/pure_core_classes.py,sha256=11a244bf1f021f8e76dc03e3b0481ce4b90a155d21e6c7bb178a365f2f9751fb,20441
|
|
53
|
-
pythagoras/_080_pure_code_portals/pure_decorator.py,sha256=587650ce6cb1802a402c7aea7de88e32b33a4c391972fd18d9bef9e9ecf84369,2279
|
|
54
|
-
pythagoras/_080_pure_code_portals/recursion_pre_validator.py,sha256=9f4de8a0621226fbb0356b5e04df6dec214548b600bbce801c714955ccb03ea8,1865
|
|
55
|
-
pythagoras/_090_swarming_portals/.DS_Store,sha256=7a3db23de0180407a62b83b707e08cedebeedb661eb384afa40b37cfd2f859dd,6148
|
|
56
|
-
pythagoras/_090_swarming_portals/__init__.py,sha256=4ee035ecf7ed4c1b9da6d01b94db41943e3a06a5228ad92c3ad7f7cb4d502a6d,514
|
|
57
|
-
pythagoras/_090_swarming_portals/output_suppressor.py,sha256=83e6cc9bcc62a226babb1165912ef5095ea948499ce5136a7516ac8b54522607,626
|
|
58
|
-
pythagoras/_090_swarming_portals/swarming_portals.py,sha256=8ace3b1397f1ce250a30325c8991b4b38fa36233259f77f9d5e52dfdf593b9fb,12294
|
|
59
|
-
pythagoras/_100_top_level_API/.DS_Store,sha256=d65165279105ca6773180500688df4bdc69a2c7b771752f0a46ef120b7fd8ec3,6148
|
|
60
|
-
pythagoras/_100_top_level_API/__init__.py,sha256=b392edc2c918da7c2444f14accfd0fac2cd0d5cf6849c64ed2433dfdb58b8b75,64
|
|
61
|
-
pythagoras/_100_top_level_API/default_local_portal.py,sha256=4a7ca44e94d78352ae4f5ab00e7ac067ade562c84ccbed27362520a0e54cc42b,339
|
|
62
|
-
pythagoras/_100_top_level_API/top_level_API.py,sha256=4b63575b86df2fdf28e93c67e8d33411e05bd67cf016d3d297ec9635ebc04081,906
|
|
63
|
-
pythagoras/_800_signatures_and_converters/.DS_Store,sha256=d65165279105ca6773180500688df4bdc69a2c7b771752f0a46ef120b7fd8ec3,6148
|
|
64
|
-
pythagoras/_800_signatures_and_converters/__init__.py,sha256=580ce93def1fb21ff0ffb1e15712592c189dee0c675b7a663d95bce9f6272639,166
|
|
65
|
-
pythagoras/_800_signatures_and_converters/base_16_32_convertors.py,sha256=66356d2a38e33203201d484cfb543da8b6160832a1965aaaf73e1880a2f4a828,1236
|
|
66
|
-
pythagoras/_800_signatures_and_converters/current_date_gmt_str.py,sha256=2beac61f2ad112cc8175832aeef5abbf715d01a71ea56429bce7d3fe6ad9a8d3,268
|
|
67
|
-
pythagoras/_800_signatures_and_converters/hash_signatures.py,sha256=02c5080ff67bc9e174e899a4f2428015722ec6817484dd0ec0e4b54f99eeeff9,989
|
|
68
|
-
pythagoras/_800_signatures_and_converters/node_signature.py,sha256=a52678c81e1a5cd1faca18b343a6779b8b9172e0cd92bffe959f34db835b67bc,592
|
|
69
|
-
pythagoras/_800_signatures_and_converters/random_signatures.py,sha256=c174f28c04ccf08c0c5eadaf1e1a00aba4fec88ec370def64afcadd39123141a,323
|
|
70
|
-
pythagoras/_900_project_stats_collector/.DS_Store,sha256=d65165279105ca6773180500688df4bdc69a2c7b771752f0a46ef120b7fd8ec3,6148
|
|
71
|
-
pythagoras/_900_project_stats_collector/__init__.py,sha256=11a82df8184f3ed046829332c31da590b0cad7ad3763db7f40176d1ca5071c56,71
|
|
72
|
-
pythagoras/_900_project_stats_collector/project_analyzer.py,sha256=ba1c9c14a8d421712961c6589da937ca7e0916172197ea19ef0b7ab291718686,3574
|
|
73
|
-
pythagoras/__init__.py,sha256=4cc3ed25d4a2fd64a10a9267b1555d3b8f1672fb3bf0631b522e601dcd5e30bc,1233
|
|
74
|
-
pythagoras/core/__init__.py,sha256=717b50f956e6f13ab36b3be4170b39715dc010461b10accd5d87ae1de2c614ad,328
|
|
75
|
-
pythagoras-0.23.15.dist-info/WHEEL,sha256=d10358abd5c217094bd40da9e447bd3c8979f6f95a2ce6e2da850cf9abfe7943,78
|
|
76
|
-
pythagoras-0.23.15.dist-info/METADATA,sha256=3edc4ebe519d2c8091af5d22cc577cd88c561988e0ba05f399b475069763ac32,5000
|
|
77
|
-
pythagoras-0.23.15.dist-info/RECORD,,
|