jaseci 1.4.2.5__py3-none-any.whl → 2.0.0__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.
Potentially problematic release.
This version of jaseci might be problematic. Click here for more details.
- jaseci/__init__.py +3 -37
- jaseci-2.0.0.dist-info/METADATA +65 -0
- jaseci-2.0.0.dist-info/RECORD +4 -0
- {jaseci-1.4.2.5.dist-info → jaseci-2.0.0.dist-info}/WHEEL +1 -2
- jaseci/VERSION +0 -1
- jaseci/cli_tools/__init__.py +0 -0
- jaseci/cli_tools/book_tools.py +0 -457
- jaseci/cli_tools/jsctl.py +0 -500
- jaseci/cli_tools/tests/__init__.py +0 -0
- jaseci/cli_tools/tests/test_jsctl.py +0 -556
- jaseci/extens/__init__.py +0 -0
- jaseci/extens/act_lib/__init__.py +0 -0
- jaseci/extens/act_lib/date.py +0 -117
- jaseci/extens/act_lib/elastic.py +0 -87
- jaseci/extens/act_lib/file.py +0 -76
- jaseci/extens/act_lib/file_handler.py +0 -189
- jaseci/extens/act_lib/internal.py +0 -18
- jaseci/extens/act_lib/jaseci.py +0 -61
- jaseci/extens/act_lib/mail.py +0 -10
- jaseci/extens/act_lib/maths.py +0 -168
- jaseci/extens/act_lib/net.py +0 -191
- jaseci/extens/act_lib/rand.py +0 -82
- jaseci/extens/act_lib/regex.py +0 -85
- jaseci/extens/act_lib/request.py +0 -169
- jaseci/extens/act_lib/std.py +0 -235
- jaseci/extens/act_lib/storage.py +0 -53
- jaseci/extens/act_lib/stripe.py +0 -337
- jaseci/extens/act_lib/task.py +0 -13
- jaseci/extens/act_lib/tests/__init__.py +0 -0
- jaseci/extens/act_lib/tests/std_test_code.py +0 -37
- jaseci/extens/act_lib/tests/test_date.py +0 -26
- jaseci/extens/act_lib/tests/test_elastic.py +0 -159
- jaseci/extens/act_lib/tests/test_file.py +0 -116
- jaseci/extens/act_lib/tests/test_file_lib.py +0 -40
- jaseci/extens/act_lib/tests/test_mail_lib.py +0 -33
- jaseci/extens/act_lib/tests/test_maths.py +0 -147
- jaseci/extens/act_lib/tests/test_net_lib.py +0 -62
- jaseci/extens/act_lib/tests/test_regex.py +0 -61
- jaseci/extens/act_lib/tests/test_std.py +0 -51
- jaseci/extens/act_lib/tests/test_std_lib.py +0 -36
- jaseci/extens/act_lib/tests/test_url.py +0 -32
- jaseci/extens/act_lib/tests/test_vector.py +0 -36
- jaseci/extens/act_lib/tests/test_webtool.py +0 -44
- jaseci/extens/act_lib/tests/test_zlib.py +0 -24
- jaseci/extens/act_lib/url.py +0 -79
- jaseci/extens/act_lib/vector.py +0 -157
- jaseci/extens/act_lib/webtool.py +0 -28
- jaseci/extens/act_lib/zip.py +0 -33
- jaseci/extens/api/__init__.py +0 -0
- jaseci/extens/api/actions_api.py +0 -170
- jaseci/extens/api/alias_api.py +0 -139
- jaseci/extens/api/architype_api.py +0 -196
- jaseci/extens/api/config_api.py +0 -129
- jaseci/extens/api/global_api.py +0 -84
- jaseci/extens/api/graph_api.py +0 -167
- jaseci/extens/api/health_api.py +0 -20
- jaseci/extens/api/interface.py +0 -268
- jaseci/extens/api/jac_api.py +0 -171
- jaseci/extens/api/jsorc_api.py +0 -316
- jaseci/extens/api/logger_api.py +0 -89
- jaseci/extens/api/master_api.py +0 -133
- jaseci/extens/api/object_api.py +0 -101
- jaseci/extens/api/prometheus_api.py +0 -74
- jaseci/extens/api/queue_api.py +0 -140
- jaseci/extens/api/sentinel_api.py +0 -270
- jaseci/extens/api/super_api.py +0 -64
- jaseci/extens/api/tests/__init__.py +0 -0
- jaseci/extens/api/tests/test_architype_api.py +0 -66
- jaseci/extens/api/tests/test_global_api.py +0 -179
- jaseci/extens/api/tests/test_graph_api.py +0 -64
- jaseci/extens/api/tests/test_logger_api.py +0 -43
- jaseci/extens/api/tests/test_object_api.py +0 -20
- jaseci/extens/api/tests/test_sentinel_api.py +0 -66
- jaseci/extens/api/tests/test_uncommon.py +0 -107
- jaseci/extens/api/tests/test_user_api.py +0 -32
- jaseci/extens/api/tests/test_walker_api.py +0 -316
- jaseci/extens/api/user_api.py +0 -144
- jaseci/extens/api/walker_api.py +0 -298
- jaseci/extens/api/webhook_api.py +0 -74
- jaseci/extens/svc/__init__.py +0 -0
- jaseci/extens/svc/elastic_svc.py +0 -366
- jaseci/extens/svc/kube_svc.py +0 -432
- jaseci/extens/svc/mail_svc.py +0 -156
- jaseci/extens/svc/prome_svc.py +0 -378
- jaseci/extens/svc/redis_svc.py +0 -63
- jaseci/extens/svc/storage_svc.py +0 -193
- jaseci/extens/svc/stripe_svc.py +0 -51
- jaseci/extens/svc/task_svc.py +0 -155
- jaseci/extens/svc/tasks.py +0 -302
- jaseci/jac/__init__.py +0 -0
- jaseci/jac/interpreter/__init__.py +0 -0
- jaseci/jac/interpreter/architype_interp.py +0 -214
- jaseci/jac/interpreter/interp.py +0 -1783
- jaseci/jac/interpreter/sentinel_interp.py +0 -257
- jaseci/jac/interpreter/tests/__init__.py +0 -0
- jaseci/jac/interpreter/tests/test_interp.py +0 -42
- jaseci/jac/interpreter/walker_interp.py +0 -248
- jaseci/jac/ir/__init__.py +0 -0
- jaseci/jac/ir/ast.py +0 -73
- jaseci/jac/ir/ast_builder.py +0 -249
- jaseci/jac/ir/jac_code.py +0 -152
- jaseci/jac/ir/passes/__init__.py +0 -6
- jaseci/jac/ir/passes/ast_prune_pass.py +0 -9
- jaseci/jac/ir/passes/codegen_pass.py +0 -244
- jaseci/jac/ir/passes/ir_pass.py +0 -29
- jaseci/jac/ir/passes/printer_pass.py +0 -23
- jaseci/jac/ir/passes/pt_prune_pass.py +0 -29
- jaseci/jac/ir/passes/schedule.py +0 -23
- jaseci/jac/ir/passes/stats_pass.py +0 -16
- jaseci/jac/jac.g4 +0 -450
- jaseci/jac/jac_parse/__init__.py +0 -0
- jaseci/jac/jac_parse/jacLexer.py +0 -809
- jaseci/jac/jac_parse/jacListener.py +0 -853
- jaseci/jac/jac_parse/jacParser.py +0 -9192
- jaseci/jac/jac_set.py +0 -119
- jaseci/jac/jsci_vm/__init__.py +0 -0
- jaseci/jac/jsci_vm/disasm.py +0 -94
- jaseci/jac/jsci_vm/inst_ptr.py +0 -31
- jaseci/jac/jsci_vm/machine.py +0 -188
- jaseci/jac/jsci_vm/op_codes.py +0 -82
- jaseci/jac/jsci_vm/tests/__init__.py +0 -0
- jaseci/jac/jsci_vm/tests/test_codegen.py +0 -31
- jaseci/jac/machine/__init__.py +0 -0
- jaseci/jac/machine/jac_scope.py +0 -85
- jaseci/jac/machine/jac_value.py +0 -226
- jaseci/jac/machine/machine_state.py +0 -383
- jaseci/jac/tests/__init__.py +0 -0
- jaseci/jac/tests/book_code.py +0 -624
- jaseci/jac/tests/test_book.py +0 -380
- jaseci/jac/tests/test_lang_14.py +0 -49
- jaseci/jsorc/__init__.py +0 -7
- jaseci/jsorc/jsorc.py +0 -642
- jaseci/jsorc/jsorc_settings.py +0 -211
- jaseci/jsorc/jsorc_utils.py +0 -298
- jaseci/jsorc/live_actions.py +0 -364
- jaseci/jsorc/manifests/__init__.py +0 -0
- jaseci/jsorc/manifests/database.yaml +0 -109
- jaseci/jsorc/manifests/elastic.yaml +0 -6024
- jaseci/jsorc/manifests/prometheus.yaml +0 -1383
- jaseci/jsorc/manifests/redis.yaml +0 -64
- jaseci/jsorc/memory.py +0 -258
- jaseci/jsorc/redis.py +0 -139
- jaseci/jsorc/remote_actions.py +0 -157
- jaseci/jsorc/tests/__init__.py +0 -0
- jaseci/jsorc/tests/test_actions.py +0 -542
- jaseci/jsorc/tests/test_jsorc.py +0 -112
- jaseci/prim/__init__.py +0 -0
- jaseci/prim/ability.py +0 -93
- jaseci/prim/architype.py +0 -89
- jaseci/prim/edge.py +0 -172
- jaseci/prim/element.py +0 -233
- jaseci/prim/graph.py +0 -26
- jaseci/prim/master.py +0 -64
- jaseci/prim/node.py +0 -532
- jaseci/prim/obj_mixins.py +0 -235
- jaseci/prim/sentinel.py +0 -281
- jaseci/prim/super_master.py +0 -31
- jaseci/prim/walker.py +0 -261
- jaseci/svc/__init__.py +0 -0
- jaseci/tests/__init__.py +0 -0
- jaseci/tests/infer.py +0 -39
- jaseci/tests/jac_test_code.py +0 -1293
- jaseci/tests/jac_test_progs.py +0 -774
- jaseci/tests/test_core.py +0 -153
- jaseci/tests/test_jac.py +0 -824
- jaseci/tests/test_node.py +0 -89
- jaseci/tests/test_progs.py +0 -702
- jaseci/tests/test_stack.py +0 -220
- jaseci/tests/test_stripe.py +0 -225
- jaseci/utils/__init__.py +0 -0
- jaseci/utils/actions/__init__.py +0 -0
- jaseci/utils/actions/actions_manager.py +0 -254
- jaseci/utils/actions/actions_optimizer.py +0 -516
- jaseci/utils/actions/actions_state.py +0 -95
- jaseci/utils/file_handler.py +0 -171
- jaseci/utils/gprof2dot.py +0 -3786
- jaseci/utils/id_list.py +0 -168
- jaseci/utils/json_handler.py +0 -70
- jaseci/utils/log_utils.py +0 -57
- jaseci/utils/test_core.py +0 -62
- jaseci/utils/utils.py +0 -387
- jaseci-1.4.2.5.dist-info/LICENSE +0 -21
- jaseci-1.4.2.5.dist-info/METADATA +0 -39
- jaseci-1.4.2.5.dist-info/RECORD +0 -184
- jaseci-1.4.2.5.dist-info/entry_points.txt +0 -3
- jaseci-1.4.2.5.dist-info/top_level.txt +0 -1
jaseci/utils/utils.py
DELETED
|
@@ -1,387 +0,0 @@
|
|
|
1
|
-
import io
|
|
2
|
-
import os
|
|
3
|
-
import pstats
|
|
4
|
-
import cProfile
|
|
5
|
-
import pdb
|
|
6
|
-
import importlib
|
|
7
|
-
import pkgutil
|
|
8
|
-
import logging
|
|
9
|
-
import logging.handlers as handlers
|
|
10
|
-
import types
|
|
11
|
-
import base64
|
|
12
|
-
import re
|
|
13
|
-
import json
|
|
14
|
-
import sys
|
|
15
|
-
import functools
|
|
16
|
-
import traceback
|
|
17
|
-
import inspect
|
|
18
|
-
import unittest
|
|
19
|
-
from time import time
|
|
20
|
-
from pathlib import Path
|
|
21
|
-
from pprint import pformat
|
|
22
|
-
from typing import Union
|
|
23
|
-
from jaseci.utils.log_utils import LimitedSlidingBuffer
|
|
24
|
-
from jaseci.utils.gprof2dot import (
|
|
25
|
-
PstatsParser,
|
|
26
|
-
DotWriter,
|
|
27
|
-
Profile,
|
|
28
|
-
TEMPERATURE_COLORMAP,
|
|
29
|
-
)
|
|
30
|
-
|
|
31
|
-
LOGS_DIR = ".jaseci_logs/"
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
class ColCodes:
|
|
35
|
-
TY = "\033[33m"
|
|
36
|
-
TG = "\033[32m"
|
|
37
|
-
TR = "\033[31m"
|
|
38
|
-
EC = "\033[m"
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
def master_from_meta(meta):
|
|
42
|
-
"""Return master from meta in actions"""
|
|
43
|
-
return meta["h"].get_obj(meta["m_id"], meta["m_id"])
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
def connect_logger_handler(target_logger, handler, level=logging.WARN):
|
|
47
|
-
"""Attaches standard formatting and adds handler to logger"""
|
|
48
|
-
target_logger.setLevel(level)
|
|
49
|
-
handler.setFormatter(
|
|
50
|
-
logging.Formatter("%(asctime)s - %(levelname)s - %(funcName)s: %(message)s")
|
|
51
|
-
)
|
|
52
|
-
target_logger.addHandler(handler)
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
# Get an instance of a logger
|
|
56
|
-
logger = logging.getLogger("core")
|
|
57
|
-
logger.propagate = False
|
|
58
|
-
logs = LimitedSlidingBuffer()
|
|
59
|
-
# Create the logs folder
|
|
60
|
-
os.makedirs(LOGS_DIR, exist_ok=True)
|
|
61
|
-
if len(logger.handlers) < 1:
|
|
62
|
-
connect_logger_handler(logger, logging.StreamHandler(), logging.INFO)
|
|
63
|
-
connect_logger_handler(logger, logging.StreamHandler(stream=logs), logging.INFO)
|
|
64
|
-
# set up a timed rotating file handler
|
|
65
|
-
core_rotating_file_handler = handlers.TimedRotatingFileHandler(
|
|
66
|
-
os.path.join(LOGS_DIR, "core.log"), when="midnight", backupCount=180
|
|
67
|
-
)
|
|
68
|
-
connect_logger_handler(logger, core_rotating_file_handler, logging.INFO)
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
app_logger = logging.getLogger("app")
|
|
72
|
-
app_logger.propagate = False
|
|
73
|
-
if len(app_logger.handlers) < 1:
|
|
74
|
-
connect_logger_handler(app_logger, logging.StreamHandler(), logging.INFO)
|
|
75
|
-
connect_logger_handler(app_logger, logging.StreamHandler(stream=logs), logging.INFO)
|
|
76
|
-
# set up a timed rotating file handler
|
|
77
|
-
app_rotating_file_handler = handlers.TimedRotatingFileHandler(
|
|
78
|
-
os.path.join(LOGS_DIR, "app.log"), when="midnight", backupCount=180
|
|
79
|
-
)
|
|
80
|
-
connect_logger_handler(app_logger, app_rotating_file_handler, logging.INFO)
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
def log_var_out(val):
|
|
84
|
-
"""Print to log"""
|
|
85
|
-
if not logging.getLogger("core").disabled:
|
|
86
|
-
logger.info(pformat(val))
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
camel_to_snake_re = re.compile(r"(?<!^)(?=[A-Z])")
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
def camel_to_snake(name):
|
|
93
|
-
return camel_to_snake_re.sub("_", name).lower()
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
def bp():
|
|
97
|
-
pdb.set_trace()
|
|
98
|
-
breakpoint()
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
def dummy_bp(inspect):
|
|
102
|
-
traceback.print_stack()
|
|
103
|
-
print(inspect)
|
|
104
|
-
input()
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
def print_stack_to_log():
|
|
108
|
-
tb = traceback.extract_stack()
|
|
109
|
-
log_var_out(tb)
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
def exc_stack_as_str_list():
|
|
113
|
-
return traceback.format_exception(*sys.exc_info())
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
def generate_stack_as_str_list(error=None):
|
|
117
|
-
stack = traceback.format_stack()
|
|
118
|
-
stack.pop() # format_stack
|
|
119
|
-
stack.pop() # generate_stack_as_str_list
|
|
120
|
-
if error:
|
|
121
|
-
stack.append(error)
|
|
122
|
-
return stack
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
uuid_re = re.compile(
|
|
126
|
-
"([a-f0-9]{8}-?[a-f0-9]{4}-?4[a-f0-9]{3}-?[89aAbB][a-f0-9]{3}-?[a-f0-9]{12})"
|
|
127
|
-
)
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
def is_urn(s: str):
|
|
131
|
-
"""Test if is uuid string in urn format"""
|
|
132
|
-
return type(s) == str and s.startswith("urn:uuid:")
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
def is_jsonable(x):
|
|
136
|
-
"""Test if object can be json serialized"""
|
|
137
|
-
try:
|
|
138
|
-
json.dumps(x)
|
|
139
|
-
return True
|
|
140
|
-
except (TypeError, OverflowError):
|
|
141
|
-
return False
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
def json_out(val):
|
|
145
|
-
if type(val) == str:
|
|
146
|
-
return val
|
|
147
|
-
try:
|
|
148
|
-
return json.dumps(val)
|
|
149
|
-
except Exception:
|
|
150
|
-
return val
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
def parse_str_token(s):
|
|
154
|
-
return str(bytes(s, "utf-8").decode("unicode_escape")[1:-1])
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
def get_all_subclasses(cls):
|
|
158
|
-
"""Return list of all subclasses of cls"""
|
|
159
|
-
return set(cls.__subclasses__()).union(
|
|
160
|
-
[s for c in cls.__subclasses__() for s in get_all_subclasses(c)]
|
|
161
|
-
)
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
def matching_fields(obj1, obj2):
|
|
165
|
-
"""
|
|
166
|
-
Return list of matching member attributes in objects
|
|
167
|
-
(non-private fields only)
|
|
168
|
-
"""
|
|
169
|
-
matches = []
|
|
170
|
-
for a in dir(obj1):
|
|
171
|
-
if not a.startswith("_"):
|
|
172
|
-
for b in dir(obj2):
|
|
173
|
-
if a == b:
|
|
174
|
-
matches.append(a)
|
|
175
|
-
return matches
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
obj_class_cache = {}
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
def build_class_dict(from_where):
|
|
182
|
-
global obj_class_cache
|
|
183
|
-
prefix = from_where.__name__ + "."
|
|
184
|
-
for importer, modname, ispkg in pkgutil.iter_modules(from_where.__path__, prefix):
|
|
185
|
-
if not ispkg:
|
|
186
|
-
clsmembers = inspect.getmembers(
|
|
187
|
-
importlib.import_module(modname), inspect.isclass
|
|
188
|
-
)
|
|
189
|
-
for cls, obj in clsmembers:
|
|
190
|
-
obj_class_cache[camel_to_snake(cls)] = getattr(
|
|
191
|
-
importlib.import_module(modname), cls
|
|
192
|
-
)
|
|
193
|
-
else:
|
|
194
|
-
if hasattr(from_where, modname.split(".")[-1]):
|
|
195
|
-
build_class_dict(getattr(from_where, modname.split(".")[-1]))
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
def find_class_and_import(class_name, from_where):
|
|
199
|
-
"""
|
|
200
|
-
Search for class through all core packages
|
|
201
|
-
|
|
202
|
-
Classes assumed to have same name as module file
|
|
203
|
-
"""
|
|
204
|
-
global obj_class_cache
|
|
205
|
-
if not obj_class_cache.keys():
|
|
206
|
-
build_class_dict(from_where)
|
|
207
|
-
return obj_class_cache[class_name]
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
def copy_func(f, name=None):
|
|
211
|
-
"""
|
|
212
|
-
Utility to duplicate function in python.
|
|
213
|
-
Can be used to programatically add methods to classes
|
|
214
|
-
"""
|
|
215
|
-
g = types.FunctionType(
|
|
216
|
-
f.__code__,
|
|
217
|
-
f.__globals__,
|
|
218
|
-
name=f.__name__,
|
|
219
|
-
argdefs=f.__defaults__,
|
|
220
|
-
closure=f.__closure__,
|
|
221
|
-
)
|
|
222
|
-
g = functools.update_wrapper(g, f)
|
|
223
|
-
g.__kwdefaults__ = f.__kwdefaults__
|
|
224
|
-
g.__name__ = name if name else g.__name__
|
|
225
|
-
return g
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
def b64decode_str(code):
|
|
229
|
-
"""Decode a base 64 encoded string"""
|
|
230
|
-
try:
|
|
231
|
-
code = base64.b64decode(code).decode()
|
|
232
|
-
except UnicodeDecodeError:
|
|
233
|
-
logger.error("Code encoding invalid!")
|
|
234
|
-
return code
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
class MyPstatsParser(PstatsParser):
|
|
238
|
-
def __init__(self, stats_obj):
|
|
239
|
-
self.stats = stats_obj
|
|
240
|
-
self.profile = Profile()
|
|
241
|
-
self.function_ids = {}
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
def perf_test_start():
|
|
245
|
-
perf_prof = cProfile.Profile()
|
|
246
|
-
perf_prof.enable()
|
|
247
|
-
return perf_prof
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
def perf_test_stop(perf_prof):
|
|
251
|
-
perf_prof.disable()
|
|
252
|
-
stats = pstats.Stats(perf_prof)
|
|
253
|
-
profile = MyPstatsParser(stats).parse()
|
|
254
|
-
profile.prune(
|
|
255
|
-
node_thres=0.01, edge_thres=0.002, paths="", color_nodes_by_selftime=False
|
|
256
|
-
)
|
|
257
|
-
graph_str = io.StringIO()
|
|
258
|
-
dot = DotWriter(graph_str)
|
|
259
|
-
dot.graph(profile, TEMPERATURE_COLORMAP)
|
|
260
|
-
calls_str = io.StringIO()
|
|
261
|
-
sortby = pstats.SortKey.CUMULATIVE
|
|
262
|
-
ps = pstats.Stats(perf_prof, stream=calls_str).sort_stats(sortby)
|
|
263
|
-
ps.print_stats()
|
|
264
|
-
calls_str = calls_str.getvalue()
|
|
265
|
-
calls_str = "ncalls" + calls_str.split("ncalls")[-1]
|
|
266
|
-
calls_str = "\n".join(
|
|
267
|
-
[",".join(line.rstrip().split(None, 5)) for line in calls_str.split("\n")]
|
|
268
|
-
)
|
|
269
|
-
return calls_str, graph_str.getvalue()
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
def format_jac_profile(jac_profile, sort_by="cum_time"):
|
|
273
|
-
"""Format a JAC profile to a csv string"""
|
|
274
|
-
entries = []
|
|
275
|
-
for k in jac_profile.keys():
|
|
276
|
-
c = jac_profile[k]["calls"]
|
|
277
|
-
u = jac_profile[k]["u_calls"]
|
|
278
|
-
t = jac_profile[k]["tot_time"]
|
|
279
|
-
p = jac_profile[k]["cum_time"]
|
|
280
|
-
jac_profile[k]["avg_time"] = t / c
|
|
281
|
-
jac_profile[k]["per_call"] = p / c
|
|
282
|
-
jac_profile[k]["name"] = k
|
|
283
|
-
entries.append(jac_profile[k])
|
|
284
|
-
sorted_entries = sorted(entries, key=lambda x: x[sort_by], reverse=True)
|
|
285
|
-
csv = "name,calls,r_calls,avg_time,per_call,tot_time,cum_time\n"
|
|
286
|
-
for e in sorted_entries:
|
|
287
|
-
csv += (
|
|
288
|
-
f"{e['name']},{e['calls']},{e['calls']-e['u_calls']},"
|
|
289
|
-
+ f"{e['avg_time']},{e['per_call']},{e['tot_time']},{e['cum_time']}\n"
|
|
290
|
-
)
|
|
291
|
-
return csv
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
class TestCaseHelper:
|
|
295
|
-
"""Helper to pretty print test results"""
|
|
296
|
-
|
|
297
|
-
def setUp(self):
|
|
298
|
-
self.logger_off()
|
|
299
|
-
self.stime = time()
|
|
300
|
-
return super().setUp()
|
|
301
|
-
|
|
302
|
-
def tearDown(self):
|
|
303
|
-
td = super().tearDown()
|
|
304
|
-
result = (
|
|
305
|
-
f"Time: {ColCodes.TY}{time()-self.stime:.3f} "
|
|
306
|
-
+ f'- {ColCodes.EC}{self.id().split(".")[-1]}: '
|
|
307
|
-
)
|
|
308
|
-
get_outcome = self.defaultTestResult()
|
|
309
|
-
self._feedErrorsToResult(get_outcome, self._outcome.errors)
|
|
310
|
-
if len(get_outcome.errors) or len(get_outcome.failures):
|
|
311
|
-
result += f"{ColCodes.TR}[failed]{ColCodes.EC}"
|
|
312
|
-
elif len(self._outcome.skipped):
|
|
313
|
-
result += f"{ColCodes.TY}[skipped]{ColCodes.EC}"
|
|
314
|
-
else:
|
|
315
|
-
result += f"{ColCodes.TG}[passed]{ColCodes.EC}"
|
|
316
|
-
|
|
317
|
-
print(result)
|
|
318
|
-
self.logger_on()
|
|
319
|
-
return td
|
|
320
|
-
|
|
321
|
-
def logger_off(self):
|
|
322
|
-
"""Turn off logging output"""
|
|
323
|
-
logging.getLogger("core").disabled = True
|
|
324
|
-
logging.getLogger("app").disabled = True
|
|
325
|
-
|
|
326
|
-
def logger_on(self):
|
|
327
|
-
"""Turn on logging output"""
|
|
328
|
-
logging.getLogger("core").disabled = False
|
|
329
|
-
logging.getLogger("app").disabled = False
|
|
330
|
-
|
|
331
|
-
def is_logger_off(self):
|
|
332
|
-
return logging.getLogger("core").disabled and logging.getLogger("app").disabled
|
|
333
|
-
|
|
334
|
-
def log(self, *val):
|
|
335
|
-
"""Print to log"""
|
|
336
|
-
is_off = self.is_logger_off()
|
|
337
|
-
self.logger_on()
|
|
338
|
-
for i in val:
|
|
339
|
-
log_var_out(i)
|
|
340
|
-
if is_off:
|
|
341
|
-
self.logger_off()
|
|
342
|
-
|
|
343
|
-
def stopper(self):
|
|
344
|
-
"""Force test to fail"""
|
|
345
|
-
self.assertTrue(False)
|
|
346
|
-
|
|
347
|
-
def perf_test_start(self):
|
|
348
|
-
self.pr = perf_test_start()
|
|
349
|
-
|
|
350
|
-
def perf_test_stop(self):
|
|
351
|
-
print(perf_test_stop(self.pr))
|
|
352
|
-
|
|
353
|
-
def skip_test(self, msg="No reason provided"):
|
|
354
|
-
raise unittest.SkipTest("Skipping: " + msg)
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
def is_true(val):
|
|
358
|
-
return (
|
|
359
|
-
val.lower() == "true"
|
|
360
|
-
if type(val) is str
|
|
361
|
-
else val is True # is_async might be non bool
|
|
362
|
-
)
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
class InvalidApiException(Exception):
|
|
366
|
-
pass
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
def find_first_api(api_name, **api_endpoints):
|
|
370
|
-
for path, api_list in api_endpoints.items():
|
|
371
|
-
api = next(filter(lambda x: api_name == "_".join(x["groups"]), api_list), None)
|
|
372
|
-
if api:
|
|
373
|
-
return path, api
|
|
374
|
-
raise InvalidApiException(f"api {api_name} is not existing!")
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
cache_root = Path(Path.home(), ".jaseci/models")
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
def model_base_path(cache_dir: Union[str, Path]) -> Path:
|
|
381
|
-
cache_dir = Path(cache_dir)
|
|
382
|
-
|
|
383
|
-
if not os.path.isabs(cache_dir):
|
|
384
|
-
model_cache = cache_root / cache_dir
|
|
385
|
-
else:
|
|
386
|
-
model_cache = cache_dir
|
|
387
|
-
return model_cache
|
jaseci-1.4.2.5.dist-info/LICENSE
DELETED
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
MIT License
|
|
2
|
-
|
|
3
|
-
Copyright (c) 2021 Jaseci Labs LLC
|
|
4
|
-
|
|
5
|
-
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
-
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
-
in the Software without restriction, including without limitation the rights
|
|
8
|
-
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
-
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
-
furnished to do so, subject to the following conditions:
|
|
11
|
-
|
|
12
|
-
The above copyright notice and this permission notice shall be included in all
|
|
13
|
-
copies or substantial portions of the Software.
|
|
14
|
-
|
|
15
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
-
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
-
SOFTWARE.
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
Metadata-Version: 2.1
|
|
2
|
-
Name: jaseci
|
|
3
|
-
Version: 1.4.2.5
|
|
4
|
-
Home-page: https://github.com/Jaseci-Labs/jaseci
|
|
5
|
-
Author: Jason Mars
|
|
6
|
-
Author-email: jason@jaseci.org
|
|
7
|
-
License-File: LICENSE
|
|
8
|
-
Requires-Dist: click <8.2.0,>=8.1.0
|
|
9
|
-
Requires-Dist: click-shell <2.2,>=2.1
|
|
10
|
-
Requires-Dist: numpy <1.24.0,>=1.23.0
|
|
11
|
-
Requires-Dist: antlr4-python3-runtime <4.10.0,>=4.9.3
|
|
12
|
-
Requires-Dist: fastapi[all] <1.0.0,>=0.75.0
|
|
13
|
-
Requires-Dist: requests
|
|
14
|
-
Requires-Dist: redis
|
|
15
|
-
Requires-Dist: kombu ==5.3.1
|
|
16
|
-
Requires-Dist: celery ==5.3.1
|
|
17
|
-
Requires-Dist: flake8
|
|
18
|
-
Requires-Dist: pep8-naming
|
|
19
|
-
Requires-Dist: stripe
|
|
20
|
-
Requires-Dist: pydantic <2.0.0
|
|
21
|
-
Requires-Dist: docstring-parser
|
|
22
|
-
Requires-Dist: prometheus-api-client ==0.5.1
|
|
23
|
-
Requires-Dist: prometheus-client ==0.14.1
|
|
24
|
-
Requires-Dist: kubernetes ==23.6.0
|
|
25
|
-
Requires-Dist: pytest
|
|
26
|
-
Requires-Dist: pytest-xdist
|
|
27
|
-
Requires-Dist: pytest-cov
|
|
28
|
-
Requires-Dist: validators ==0.21.2
|
|
29
|
-
Requires-Dist: psycopg2-binary ==2.9.5
|
|
30
|
-
Requires-Dist: pygls ==1.0.2
|
|
31
|
-
Requires-Dist: mock
|
|
32
|
-
Requires-Dist: beautifulsoup4 <4.13.0,>=4.12.2
|
|
33
|
-
Requires-Dist: lxml <4.10.0,>=4.9.2
|
|
34
|
-
Requires-Dist: html5lib <1.2,>=1.1
|
|
35
|
-
Requires-Dist: prettytable <3.8.0,>=3.7.0
|
|
36
|
-
Requires-Dist: apache-libcloud ==3.8.0
|
|
37
|
-
Requires-Dist: azure-storage-blob ==12.17.0
|
|
38
|
-
Requires-Dist: python-magic ==0.4.27
|
|
39
|
-
|
jaseci-1.4.2.5.dist-info/RECORD
DELETED
|
@@ -1,184 +0,0 @@
|
|
|
1
|
-
jaseci/VERSION,sha256=1F6TF2fIPdtGK0-_qSFBP8nnppLus4OWIbDYulYOCbA,8
|
|
2
|
-
jaseci/__init__.py,sha256=tFVuF0i901L-YymidhuSjyE24IWOhIiJA5G18DuAP2g,1246
|
|
3
|
-
jaseci/cli_tools/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
4
|
-
jaseci/cli_tools/book_tools.py,sha256=4xeNRhKufKJgAaKI5miPTezdBDWeA-iB_H5F5cqyIB8,16103
|
|
5
|
-
jaseci/cli_tools/jsctl.py,sha256=Wgz6sdUFwefce83bLZvlCjkcm4jjnUbYiUXucsB746A,14869
|
|
6
|
-
jaseci/cli_tools/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
7
|
-
jaseci/cli_tools/tests/test_jsctl.py,sha256=4wI6hHNn-j3ePqLcVtWmGVlrCAQTJ5Wcl0vgsezK1Nw,21548
|
|
8
|
-
jaseci/extens/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
9
|
-
jaseci/extens/act_lib/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
10
|
-
jaseci/extens/act_lib/date.py,sha256=93ZlGyBFMLjn0PoAUVj3k5Q_AbKqNWSKCe48Qjz1x-c,3115
|
|
11
|
-
jaseci/extens/act_lib/elastic.py,sha256=msl2F_NyOsiZahGQRY2NdZ2lqYfwa_vHQ65pJA9DJaU,2193
|
|
12
|
-
jaseci/extens/act_lib/file.py,sha256=NzLiV5Il5GaSOq_sSQQxUymcb1NDFSZVeMmdS95bpG8,1987
|
|
13
|
-
jaseci/extens/act_lib/file_handler.py,sha256=8bTRHeAqtBlqXQTsr6M3j5uBhVtQ1Pd0iR9sN7Q4VVo,4787
|
|
14
|
-
jaseci/extens/act_lib/internal.py,sha256=FkheUnwHei62ccurvgJg3IncYI0qqlsdl2Wuj1iemBM,481
|
|
15
|
-
jaseci/extens/act_lib/jaseci.py,sha256=heeTVhb8-9HmhedQRIaZppftN5OE-kFDZQxc2fCbqjc,1696
|
|
16
|
-
jaseci/extens/act_lib/mail.py,sha256=VwJMmOYYUVSewYS74EX5PZTvM5h43_37JQBcK9tukiU,315
|
|
17
|
-
jaseci/extens/act_lib/maths.py,sha256=fmqmiD_b7pUkHXZT7mt9th5QzvLmTFE_eO_UB3rN4Sk,2427
|
|
18
|
-
jaseci/extens/act_lib/net.py,sha256=Wil8umf3y8WCVe8ujbJst5JAgMj01Y7qxo-A9d4EJRA,7162
|
|
19
|
-
jaseci/extens/act_lib/rand.py,sha256=ffvqZ1kgtbWk25-u7u6Yxyo4DUB1IikMVE4cOZwIxXI,2119
|
|
20
|
-
jaseci/extens/act_lib/regex.py,sha256=bY8cpdNf-uYknQwAP2B4EBv9pvtnbhmdd5jBlB3QHQ4,2050
|
|
21
|
-
jaseci/extens/act_lib/request.py,sha256=ORxgNBgp2-O-b4pRO1dGjm1R3xjjJj4k9D-iSGzU2Ck,3953
|
|
22
|
-
jaseci/extens/act_lib/std.py,sha256=8micl3W3yh2KnXi9ZrGYEfOEIZbW-POmh0SiZTWOkf8,5959
|
|
23
|
-
jaseci/extens/act_lib/storage.py,sha256=1IzlL4byJYeBAY-ExAYqQHQjWSwGbNqs-mi70HOpjNQ,1509
|
|
24
|
-
jaseci/extens/act_lib/stripe.py,sha256=Vs7oPo2PSpgm42t-Moy_mmuoRyUEzsXdCpVnKR9lioA,8190
|
|
25
|
-
jaseci/extens/act_lib/task.py,sha256=rTg6qHvliMbkJh54_zVxiae-HcgLcqSvzX3BMktrJRY,376
|
|
26
|
-
jaseci/extens/act_lib/url.py,sha256=8ancdLY1N7f9vGGGLYVlKlf_AMuE-c7a6vAdt9aCpss,1851
|
|
27
|
-
jaseci/extens/act_lib/vector.py,sha256=ekTtYx3sHP6j23m1otVeKfqWynfLNsGg6271IIvfE-I,4636
|
|
28
|
-
jaseci/extens/act_lib/webtool.py,sha256=VZNlGPM6k3wfWOf1kbYmmSj59EBw5PnJeJKx9fWVPqA,939
|
|
29
|
-
jaseci/extens/act_lib/zip.py,sha256=re6jUmkFZaOsrCpum8BMnLFltavrclv-rjfvhbl67i4,942
|
|
30
|
-
jaseci/extens/act_lib/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
31
|
-
jaseci/extens/act_lib/tests/std_test_code.py,sha256=_pXoqkD4_s2LQHQBs_FFphYseJ5mCaPSe_LDvLW6p_Y,782
|
|
32
|
-
jaseci/extens/act_lib/tests/test_date.py,sha256=K9W3WsjuBWzv--b6bv0oDyjkJt0htDnvB9anxzQMjbk,741
|
|
33
|
-
jaseci/extens/act_lib/tests/test_elastic.py,sha256=ytwaENJ_LwG_wACAr3BaVxMp5vF1t4PiX5DrCZUktcc,5835
|
|
34
|
-
jaseci/extens/act_lib/tests/test_file.py,sha256=woyEy_EmrA9bBbWoVihz4BxtyjDNnnFS9_XJdKnlJoM,3694
|
|
35
|
-
jaseci/extens/act_lib/tests/test_file_lib.py,sha256=134nkJwjZGm7nTZM6kWCY4oa87GVVw8lJH3aX37PZVI,1460
|
|
36
|
-
jaseci/extens/act_lib/tests/test_mail_lib.py,sha256=H1ZjCMwMj0MbArIG337mgA2EShMS6gziZCp65t6GDWU,1082
|
|
37
|
-
jaseci/extens/act_lib/tests/test_maths.py,sha256=aKxe0812F9Kz2O-l2ElJUxKL0D93wrcZAx1wstOzbv8,4271
|
|
38
|
-
jaseci/extens/act_lib/tests/test_net_lib.py,sha256=CrREUnx1H_3vESAFcAQ5XZYWIHOnr_oFMUHk0r4MWPg,2215
|
|
39
|
-
jaseci/extens/act_lib/tests/test_regex.py,sha256=ahPDqHHNaxYIdk78FCTC06vf0rf9tWXG4X58uPaCcrk,2007
|
|
40
|
-
jaseci/extens/act_lib/tests/test_std.py,sha256=wSNganrnB7XVNYKBD8n2emXp1jrJJ5IiN5OgFn7Kb-w,1735
|
|
41
|
-
jaseci/extens/act_lib/tests/test_std_lib.py,sha256=TL3s98DhgI51Uk3p6yv7e8L9pONKHEBkCdwWORUCzdQ,1243
|
|
42
|
-
jaseci/extens/act_lib/tests/test_url.py,sha256=TfCWRtSrB-wjDOxRpfT9yjkSVRW6Ro4_IynbPir00XM,904
|
|
43
|
-
jaseci/extens/act_lib/tests/test_vector.py,sha256=Lte-EZnheAGiJUpCE0mlXzhCH3dTMW000pgYbiLeHtY,1285
|
|
44
|
-
jaseci/extens/act_lib/tests/test_webtool.py,sha256=BfRQOdCUk3ciZj_wP6yzxVevcieqH5fQ6NhnbhllBH8,1529
|
|
45
|
-
jaseci/extens/act_lib/tests/test_zlib.py,sha256=iG5FRkUsUDfJWKEhrgAJ21HWNZRfiWxGrctsZXpSxPw,840
|
|
46
|
-
jaseci/extens/api/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
47
|
-
jaseci/extens/api/actions_api.py,sha256=Ml2wRROmXofEXWTOXy0PQCxRcjDLkxz163p7Z13zfKs,6923
|
|
48
|
-
jaseci/extens/api/alias_api.py,sha256=kfO9wxfp_HF5-_1TeIgU5KYAcn-7vZ91GOJiDRUv6gs,5157
|
|
49
|
-
jaseci/extens/api/architype_api.py,sha256=GozQuyFJYaG-7Ee1JT_62Pc0InCR2KcLD_esrkIdeGM,7237
|
|
50
|
-
jaseci/extens/api/config_api.py,sha256=OgIkXUKc34HfgetmHtJxKMae8sB2XCl66kI8brtarb0,3581
|
|
51
|
-
jaseci/extens/api/global_api.py,sha256=zfaYJn6rF3YJFplt9Eu5D9t7EXbyrWq-q0PMlc8oQoo,2685
|
|
52
|
-
jaseci/extens/api/graph_api.py,sha256=mGuUr22tGys-NypaW0AEZE-vZ6_OzSnqESVxhQrEI60,5074
|
|
53
|
-
jaseci/extens/api/health_api.py,sha256=XYx5elrk9ubV4JRPMShhpaAOCNSpcUmRTaFjpUEO6XY,407
|
|
54
|
-
jaseci/extens/api/interface.py,sha256=KnYbClPGe0iTlENdr0LHL8RBuPJGyyuaPspnRvggcXo,9587
|
|
55
|
-
jaseci/extens/api/jac_api.py,sha256=95w0sh08BHHXv5avMa5xngNo06iipU9Fk08D3TiBHj0,5816
|
|
56
|
-
jaseci/extens/api/jsorc_api.py,sha256=N1xBl5izIjjUFf4CB-T-If45-ZoWwX244TcTWg21K7A,10167
|
|
57
|
-
jaseci/extens/api/logger_api.py,sha256=9uAvhUW4rv-SoFmtVBB6lIDcoGNs_vCQY00rfGnX0a4,2805
|
|
58
|
-
jaseci/extens/api/master_api.py,sha256=69sfxfPAVGbix5pLdq5cWnVYxaoKLBykh8FFeBBgsLA,4142
|
|
59
|
-
jaseci/extens/api/object_api.py,sha256=-UAyWxrhIhZ0JVUO-Rez4C-qgXenAatFK11jutubQBY,3640
|
|
60
|
-
jaseci/extens/api/prometheus_api.py,sha256=KF0jBHkxup21e8jhDoLiW3cwefDu0D6X0kBtSGiI_EA,1742
|
|
61
|
-
jaseci/extens/api/queue_api.py,sha256=tq3KuiWdDmIh4qWuX8md-Cuqyu5LzWHFRoalcGmuBDk,5435
|
|
62
|
-
jaseci/extens/api/sentinel_api.py,sha256=wGbG9GZ-snis9cYBi2CJEYc85KTsldKgNqyxW9N4EkM,9632
|
|
63
|
-
jaseci/extens/api/super_api.py,sha256=Zk0n0W6XfLFFn8G1dw7oaRFmK7AchFy3krANrwz9_yI,1998
|
|
64
|
-
jaseci/extens/api/user_api.py,sha256=2Hb3K0RbLO8SERwEfPQfccUcmC5s9QHEurBvsmq8nJQ,5449
|
|
65
|
-
jaseci/extens/api/walker_api.py,sha256=4zOm9C5u3hia_B_kkM5W4F37QW56C65G4MkUiycMPSk,9556
|
|
66
|
-
jaseci/extens/api/webhook_api.py,sha256=5UmDOLANN-SETNC4jBXFS5yKq83aub8u7bbhIMz5pvM,2375
|
|
67
|
-
jaseci/extens/api/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
68
|
-
jaseci/extens/api/tests/test_architype_api.py,sha256=zq3_lwFQUWC8ZULWX-pWsR9MP7PgZrB_C9dqdlyAJUY,1820
|
|
69
|
-
jaseci/extens/api/tests/test_global_api.py,sha256=qmQMHCAOpwhcEhsTgQnpdqCJrnaTAtP56Ns4ca0PNuc,6742
|
|
70
|
-
jaseci/extens/api/tests/test_graph_api.py,sha256=1QNKzaO-LdOalzfAvi-iGJIeR6DWwZf7WAZqK1uV3cY,2304
|
|
71
|
-
jaseci/extens/api/tests/test_logger_api.py,sha256=eycB2th4qJGrnw_8RKTG0buIV6o0k4SRb0FqCh0DIvI,1468
|
|
72
|
-
jaseci/extens/api/tests/test_object_api.py,sha256=5dXbwcRulYdS2EDJoHpndr0MnGhfx0jUyrBZXTetTko,596
|
|
73
|
-
jaseci/extens/api/tests/test_sentinel_api.py,sha256=tLvkW3qFkFc2M1qE84_-UomAlOFPn_tDd0e8kMXyils,1988
|
|
74
|
-
jaseci/extens/api/tests/test_uncommon.py,sha256=x6JB9tGcD1IIQEOoYuXDO6HCbBji7ynLS6RvfOrT75o,3947
|
|
75
|
-
jaseci/extens/api/tests/test_user_api.py,sha256=4MXXjd48uRbZs0CvEkuVIisCjIM4QrIiARt3mgafXGk,873
|
|
76
|
-
jaseci/extens/api/tests/test_walker_api.py,sha256=KgWNP5hP4niiMDG0pAoJWPu-thhSarcj6X7MN3BMWJw,12622
|
|
77
|
-
jaseci/extens/svc/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
78
|
-
jaseci/extens/svc/elastic_svc.py,sha256=FBVszDZEaUUDTJB9ZAnQ5a255sMVZzC7c1OEX1dYH08,13461
|
|
79
|
-
jaseci/extens/svc/kube_svc.py,sha256=fmD2_DqWbbrxAbmmtBvHJGjxW9donbHdyqvcD8SOF5E,16859
|
|
80
|
-
jaseci/extens/svc/mail_svc.py,sha256=g7lvUpEDc8mEYIE4cs_Kh3oPp7CAKd437Kgtklo0f8I,5064
|
|
81
|
-
jaseci/extens/svc/prome_svc.py,sha256=btnYPRI7gFoXzbp0-VJDQn1O4RR8sPlT0iPJpjBkRZ4,12467
|
|
82
|
-
jaseci/extens/svc/redis_svc.py,sha256=GiJYWfjZT5_v7HsvwmzpI19A4Z-QFLJS1pcy59N2YAo,1589
|
|
83
|
-
jaseci/extens/svc/storage_svc.py,sha256=mVpvL4FI60kxAymGPCHy-J6ZvOs_tacC_-G4aIndPMk,6350
|
|
84
|
-
jaseci/extens/svc/stripe_svc.py,sha256=sh5rZ1VDOSHrGSBRhIxKvWzddg5dChsoBrKiTA3haRk,1842
|
|
85
|
-
jaseci/extens/svc/task_svc.py,sha256=suIhfwo0GFPhILKaxkkKLAzqVFNYoKo1M9Q1cCZDzYI,5203
|
|
86
|
-
jaseci/extens/svc/tasks.py,sha256=EXE1nTwxbCbEKkHPavZ3dwDudcaA36_ydMj85_Zu8ZE,10588
|
|
87
|
-
jaseci/jac/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
88
|
-
jaseci/jac/jac.g4,sha256=Nr-M3lxfr4nd4VQwxdcQYid6mg-TPMngU1ZW3trvUFE,8916
|
|
89
|
-
jaseci/jac/jac_set.py,sha256=Reg1QkRQEAyzd6F8r-2cD0LvslgOF2Pc8mS-xalmEt0,3357
|
|
90
|
-
jaseci/jac/interpreter/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
91
|
-
jaseci/jac/interpreter/architype_interp.py,sha256=O_HA5BmgCMfxjIwUlNocp0Gcd8a4mF46GNIOljTyFX0,7370
|
|
92
|
-
jaseci/jac/interpreter/interp.py,sha256=o_RbYWQnEBirC7v-6SEIwE1CiBjwXCfgPvDpXve8Yyg,67272
|
|
93
|
-
jaseci/jac/interpreter/sentinel_interp.py,sha256=alnPidl4Zomybfi-SWT0U2Xa6xq48JebArjeYhFIJHs,9414
|
|
94
|
-
jaseci/jac/interpreter/walker_interp.py,sha256=fmA9G5T_xZqn3q3xLcs9RAuG0LpD059QwHb6vj1rsRI,8451
|
|
95
|
-
jaseci/jac/interpreter/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
96
|
-
jaseci/jac/interpreter/tests/test_interp.py,sha256=sQGSZNrQgLuEp-PaE8w5urMIM1I4zEFLcug84HEnh0o,1546
|
|
97
|
-
jaseci/jac/ir/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
98
|
-
jaseci/jac/ir/ast.py,sha256=tvG-rr1OqxsLSbQ6dAn1j43iX8xxaQBZQrdfHVKdEjM,1759
|
|
99
|
-
jaseci/jac/ir/ast_builder.py,sha256=jh0BKyBDzlDgE59twB9tm-dOjj2I0fnH4gUSSI_I5dE,8399
|
|
100
|
-
jaseci/jac/ir/jac_code.py,sha256=PbThal8CP4fvl-gCs8WkjeHZtnTPRw3f0vZJ7S0Vx0Y,4601
|
|
101
|
-
jaseci/jac/ir/passes/__init__.py,sha256=SWns4N_ZDV4iGUGoH0kvcq-DwdSSDCNRfbnEYwPdXmU,393
|
|
102
|
-
jaseci/jac/ir/passes/ast_prune_pass.py,sha256=w9hLg6H9g2FVOsnu2PPCW6HPjNuYQ96kPY_7pOFqJaA,331
|
|
103
|
-
jaseci/jac/ir/passes/codegen_pass.py,sha256=YzuhxFpad3yqdzZWfbjz-5lrkZe_OIYjGAGbk7oQplI,9375
|
|
104
|
-
jaseci/jac/ir/passes/ir_pass.py,sha256=h_umPqbSSZncfesgbtWao_Gn7mTCTQzX9us_iCDASn0,560
|
|
105
|
-
jaseci/jac/ir/passes/printer_pass.py,sha256=Ob6eXfAs1A-dHF84XPztn4A973PG_EnjFGzVJT2ljWc,822
|
|
106
|
-
jaseci/jac/ir/passes/pt_prune_pass.py,sha256=jR1g60txSIcC69UEuPVKnrnC4qjRftJRexAIO_6HqNg,811
|
|
107
|
-
jaseci/jac/ir/passes/schedule.py,sha256=PIEloXIhi9iywLtvzGSrq6tIAY67zsVLIEIHtZCkTrE,616
|
|
108
|
-
jaseci/jac/ir/passes/stats_pass.py,sha256=b2LI6SxPG2YsnbkL4TbfoYxe3DwagPIRMmKjAZID8kA,468
|
|
109
|
-
jaseci/jac/jac_parse/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
110
|
-
jaseci/jac/jac_parse/jacLexer.py,sha256=byRuxnd-NpBjdC_vbZ1JReywX1vbdRlmj12TU8WXnFE,34691
|
|
111
|
-
jaseci/jac/jac_parse/jacListener.py,sha256=omVWAovAIR4V0p98kkRa_IYrtV6i14-VzQ-fi9gFNno,29031
|
|
112
|
-
jaseci/jac/jac_parse/jacParser.py,sha256=Oc4CveorHlVgIB79JHqLmcaCrJpIc8pttX6-YNG6PYU,334026
|
|
113
|
-
jaseci/jac/jsci_vm/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
114
|
-
jaseci/jac/jsci_vm/disasm.py,sha256=sFZjrP2wufITt4gjICnKYlWNHjX61vQACL-y8mFk_v0,3613
|
|
115
|
-
jaseci/jac/jsci_vm/inst_ptr.py,sha256=1HPFEx1oSz9ru3ASsQPHSdP1MEmP08u3EwXUmx-eZlQ,768
|
|
116
|
-
jaseci/jac/jsci_vm/machine.py,sha256=eD-q_9cY0sI0eW80WWn5uu60AgakOm38CRqsvdTLqOQ,5701
|
|
117
|
-
jaseci/jac/jsci_vm/op_codes.py,sha256=h6DzvXw_9J5Uwvu8qIeZvfXmAyrXIpYHwB4MSsoE80I,1779
|
|
118
|
-
jaseci/jac/jsci_vm/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
119
|
-
jaseci/jac/jsci_vm/tests/test_codegen.py,sha256=sqBPy2qkQ8UWxUap4ZF5YJ3_RYzEXvFABxFMTwEJCiU,1116
|
|
120
|
-
jaseci/jac/machine/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
121
|
-
jaseci/jac/machine/jac_scope.py,sha256=vs2nMxE89IAdI1zOtDe_KKHmf8JCUTTpecWf_mXXiSE,2934
|
|
122
|
-
jaseci/jac/machine/jac_value.py,sha256=3lTdzyVg2XB7g7sb5nqC5IiECCu4EE_710E56kwCN6Q,6899
|
|
123
|
-
jaseci/jac/machine/machine_state.py,sha256=wAUWuGXnm4SHqCQ5CyrnX9xan1NzSJQFf6zgPJgrAmE,13599
|
|
124
|
-
jaseci/jac/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
125
|
-
jaseci/jac/tests/book_code.py,sha256=VZ_WL9dLGhK7wuZtAvgW6_rDC1OluiHZXuu7pX77njI,13323
|
|
126
|
-
jaseci/jac/tests/test_book.py,sha256=7P5YSSq7HUxNl6KmFh6UM2ZYsBaq-If06KpN0o618YY,13870
|
|
127
|
-
jaseci/jac/tests/test_lang_14.py,sha256=haw5hvFe4mR1IDHPZGtCvIAMAFLHF0bdg11nl-JP2aQ,1885
|
|
128
|
-
jaseci/jsorc/__init__.py,sha256=575FXvIbY1S4j1idZn7iqc8z3Gvo1A7FPZNA_1I5Ru4,134
|
|
129
|
-
jaseci/jsorc/jsorc.py,sha256=0_7sqFZjyScmQpXpV08ILEnNbx7V0C3ia-KqGt_rlQA,22563
|
|
130
|
-
jaseci/jsorc/jsorc_settings.py,sha256=eUYEt4CNoPfvHMSYqUtyggQi6snSX7kwwW0ECnOEp_0,8915
|
|
131
|
-
jaseci/jsorc/jsorc_utils.py,sha256=FruDc5qEwQA09qCCSCyifpyPtrGs_X-OqAPUeaGMj-A,9296
|
|
132
|
-
jaseci/jsorc/live_actions.py,sha256=_hHPfjzu4fE1uA7oP6aOs-5XT0_2KV5mFf7fWbJq69s,12302
|
|
133
|
-
jaseci/jsorc/memory.py,sha256=_2KQzlRncJby-iZ1fOHd8v4NA4PelD67zCSkvH0P0YA,8265
|
|
134
|
-
jaseci/jsorc/redis.py,sha256=1kAOQWhTaKN72lDx6JtuuGnfJztb6rjoITgW_FekJRo,4536
|
|
135
|
-
jaseci/jsorc/remote_actions.py,sha256=x9yYaH9eZj-p2dX6PV7huJo6w8dL-BmNm8VoXLcmdb4,4965
|
|
136
|
-
jaseci/jsorc/manifests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
137
|
-
jaseci/jsorc/manifests/database.yaml,sha256=T3lDD4s2QR1oKpsc_vihgvzhaYVOfsxPlv8YhQcGLZ4,2234
|
|
138
|
-
jaseci/jsorc/manifests/elastic.yaml,sha256=gJ1f4_RKLNO4GCtGWYWsPPlS-Pyafx6q4UJ8J2wB4cg,484138
|
|
139
|
-
jaseci/jsorc/manifests/prometheus.yaml,sha256=QqmL39UEcwO5V1NjyhZZtQHgQuPgQELB7OemnlD7v1Y,37855
|
|
140
|
-
jaseci/jsorc/manifests/redis.yaml,sha256=Rc-0fjjDInPZVRMb0R2eElT_C8jPJUqtTi1yq7rH-PU,1305
|
|
141
|
-
jaseci/jsorc/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
142
|
-
jaseci/jsorc/tests/test_actions.py,sha256=AYZG5-W6VexH_OctUqqJqpVYZxPABgT-8Mi-Pycvsao,16275
|
|
143
|
-
jaseci/jsorc/tests/test_jsorc.py,sha256=HAwDmI7NuuUJrFFdADYjpCCnr58cd9qPy1AZQ-wsH3s,4054
|
|
144
|
-
jaseci/prim/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
145
|
-
jaseci/prim/ability.py,sha256=rahRO-ReQAR_gzmlvnR8mQBOoBLGkQbkAOrB0tcOALA,3204
|
|
146
|
-
jaseci/prim/architype.py,sha256=mscTCsXTKh4ZBGyQTGHxEbQl1FFRJs3eoHs7koxLhm4,2706
|
|
147
|
-
jaseci/prim/edge.py,sha256=GzKLZVio28sCF65zfDzFDHyjDPlfcTbQA5L3RkItcR0,5169
|
|
148
|
-
jaseci/prim/element.py,sha256=XFGw0vVFdIe-KkBMILYWI-KkaltASdo6nm9NHLPYfSo,7669
|
|
149
|
-
jaseci/prim/graph.py,sha256=uZZLyq9jmQilCrAMUKpSwDXqrhVR8JGlIcu8bmPbCjY,596
|
|
150
|
-
jaseci/prim/master.py,sha256=raRr5gb9-iPulSNzemBhBI9GPK0dgF0hfgGvMAqvacw,1901
|
|
151
|
-
jaseci/prim/node.py,sha256=hpSP0TbMwoe8bTyQBLSEGY535dP_OvB5D0eOQcYqjKU,18287
|
|
152
|
-
jaseci/prim/obj_mixins.py,sha256=BNvNzUGjWKtJ2jJSizPdvELW-TEupsueGA7VMr-tU8A,7286
|
|
153
|
-
jaseci/prim/sentinel.py,sha256=ERWM-7p9xVRj1oAvQlv6gvMeudS0qqlhRi_06VD7uMs,9531
|
|
154
|
-
jaseci/prim/super_master.py,sha256=KHSD1YoF1OKWw3ob8qdS9Amxf38N0FpYfCkT1mk_DDQ,852
|
|
155
|
-
jaseci/prim/walker.py,sha256=gUCOiqdM6YaZpoSMUPErpb4UwDrQoa-DhqfwEVqACSw,8884
|
|
156
|
-
jaseci/svc/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
157
|
-
jaseci/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
158
|
-
jaseci/tests/infer.py,sha256=3TAwXO1W5s4yLDV5p_Izxbp5PvyQYR2oaMcB_aYza4c,1006
|
|
159
|
-
jaseci/tests/jac_test_code.py,sha256=d8WycjXqmqQJr07abJBIinuyTTDwXdYZxUU6qkhfrBY,27903
|
|
160
|
-
jaseci/tests/jac_test_progs.py,sha256=U7RwFdZUsEpZMdv-PUhBZ8CuRmTusRvKmNKNLRO_mfA,14672
|
|
161
|
-
jaseci/tests/test_core.py,sha256=fYoIF-xQizO8qrMnFpwhzMgScJAx5XTOL7SdvCx7do4,5888
|
|
162
|
-
jaseci/tests/test_jac.py,sha256=bE6FLhLV0-TnxLlS7HdPxe65wMj65Pa_qGLySpuVIJA,32750
|
|
163
|
-
jaseci/tests/test_node.py,sha256=tXnRbc3lHGPidzE45BIF1LiTkC5aB5idxbyzRj06Ufs,3710
|
|
164
|
-
jaseci/tests/test_progs.py,sha256=URIOMa17JhBOP2navnepYQo54H2IltSLy-p9K5nQn54,25401
|
|
165
|
-
jaseci/tests/test_stack.py,sha256=CrNbcRpRA5jhQw44wKsjWwfgbMXodJglY48TyoNYu5U,8453
|
|
166
|
-
jaseci/tests/test_stripe.py,sha256=c-H4h0nzfDdnvKWHVrXeUNz_RiBAPa9sHWH6RE7JDnc,8911
|
|
167
|
-
jaseci/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
168
|
-
jaseci/utils/file_handler.py,sha256=b1_zCVO37h1eKjaa_P9jKkx0lwJfrsWKRGkv68lYpY8,4797
|
|
169
|
-
jaseci/utils/gprof2dot.py,sha256=NwoCm318NFS169fvJhfltsIINxzpd6bS7_9b1-Fy4Xg,119142
|
|
170
|
-
jaseci/utils/id_list.py,sha256=vknSJi-xtIMPW8O3SjJb7l_Jg3Fw4kMjCAm6tS9KZ9s,5400
|
|
171
|
-
jaseci/utils/json_handler.py,sha256=-MmExFTpbr5hlS9i_0DAUZK-rgWI2wpDAA4rI3idv74,2234
|
|
172
|
-
jaseci/utils/log_utils.py,sha256=U46KspmCbX6S7YzEk1LB20iB4G1DPHfpV5RFim04Mbg,1629
|
|
173
|
-
jaseci/utils/test_core.py,sha256=DG0mW2GRc2l0M1A1-vCgTUFnZh8ip_0-h7eOfKMxlXQ,1549
|
|
174
|
-
jaseci/utils/utils.py,sha256=yKGryU2NmlWz037qop-l2H1xqoBMUS1b3ojvauA3r5U,10454
|
|
175
|
-
jaseci/utils/actions/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
176
|
-
jaseci/utils/actions/actions_manager.py,sha256=sKfWk9zRpDpkLo3-mKpVMKrqx7kpRG7hRi5tfDTcqb8,8527
|
|
177
|
-
jaseci/utils/actions/actions_optimizer.py,sha256=ddj6zF6pfcYD3OeLiOBTeDU07764-bLy7RXn7c71JrI,21564
|
|
178
|
-
jaseci/utils/actions/actions_state.py,sha256=5p080-DtDXS9QUd2FwkrtN6-7LBqT2tmJDOKVKjDEbU,2963
|
|
179
|
-
jaseci-1.4.2.5.dist-info/LICENSE,sha256=2b_qOOd7ak6x49HwOzCAmRLSPJehiBJdqj9HDX1Jp7U,1072
|
|
180
|
-
jaseci-1.4.2.5.dist-info/METADATA,sha256=CkdzRV1c2M6-I4VxZRQXByI3bHidYFryB_nxIU2zjm0,1223
|
|
181
|
-
jaseci-1.4.2.5.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
|
|
182
|
-
jaseci-1.4.2.5.dist-info/entry_points.txt,sha256=nryZyKQLUJzlTOcA9knRGoXHGmNUCQxvvuDIEj5ePyg,88
|
|
183
|
-
jaseci-1.4.2.5.dist-info/top_level.txt,sha256=0WZh7RF_ruiaZHQSi8IWOiLRUvKKDlhcnLe-by6EyFc,7
|
|
184
|
-
jaseci-1.4.2.5.dist-info/RECORD,,
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
jaseci
|