jaseci 1.4.1.9__tar.gz → 1.4.2__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.

Potentially problematic release.


This version of jaseci might be problematic. Click here for more details.

Files changed (191) hide show
  1. jaseci-1.4.2/PKG-INFO +35 -0
  2. jaseci-1.4.2/jaseci/VERSION +1 -0
  3. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/api/global_api.py +11 -2
  4. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/svc/elastic_svc.py +6 -2
  5. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jsorc/jsorc_settings.py +2 -0
  6. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/prim/edge.py +5 -0
  7. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/prim/node.py +17 -10
  8. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/tests/jac_test_code.py +105 -0
  9. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/utils/id_list.py +9 -5
  10. jaseci-1.4.2/jaseci.egg-info/PKG-INFO +35 -0
  11. jaseci-1.4.1.9/PKG-INFO +0 -7
  12. jaseci-1.4.1.9/jaseci/VERSION +0 -1
  13. jaseci-1.4.1.9/jaseci.egg-info/PKG-INFO +0 -7
  14. {jaseci-1.4.1.9 → jaseci-1.4.2}/LICENSE +0 -0
  15. {jaseci-1.4.1.9 → jaseci-1.4.2}/README.md +0 -0
  16. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/__init__.py +0 -0
  17. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/cli_tools/__init__.py +0 -0
  18. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/cli_tools/book_tools.py +0 -0
  19. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/cli_tools/jsctl.py +0 -0
  20. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/cli_tools/tests/__init__.py +0 -0
  21. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/cli_tools/tests/test_jsctl.py +0 -0
  22. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/__init__.py +0 -0
  23. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/act_lib/__init__.py +0 -0
  24. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/act_lib/date.py +0 -0
  25. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/act_lib/elastic.py +0 -0
  26. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/act_lib/file.py +0 -0
  27. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/act_lib/file_handler.py +0 -0
  28. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/act_lib/internal.py +0 -0
  29. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/act_lib/jaseci.py +0 -0
  30. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/act_lib/mail.py +0 -0
  31. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/act_lib/maths.py +0 -0
  32. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/act_lib/net.py +0 -0
  33. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/act_lib/rand.py +0 -0
  34. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/act_lib/regex.py +0 -0
  35. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/act_lib/request.py +0 -0
  36. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/act_lib/std.py +0 -0
  37. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/act_lib/storage.py +0 -0
  38. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/act_lib/stripe.py +0 -0
  39. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/act_lib/task.py +0 -0
  40. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/act_lib/tests/__init__.py +0 -0
  41. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/act_lib/tests/std_test_code.py +0 -0
  42. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/act_lib/tests/test_date.py +0 -0
  43. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/act_lib/tests/test_elastic.py +0 -0
  44. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/act_lib/tests/test_file.py +0 -0
  45. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/act_lib/tests/test_file_lib.py +0 -0
  46. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/act_lib/tests/test_mail_lib.py +0 -0
  47. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/act_lib/tests/test_maths.py +0 -0
  48. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/act_lib/tests/test_net_lib.py +0 -0
  49. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/act_lib/tests/test_regex.py +0 -0
  50. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/act_lib/tests/test_std.py +0 -0
  51. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/act_lib/tests/test_std_lib.py +0 -0
  52. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/act_lib/tests/test_url.py +0 -0
  53. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/act_lib/tests/test_vector.py +0 -0
  54. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/act_lib/tests/test_webtool.py +0 -0
  55. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/act_lib/tests/test_zlib.py +0 -0
  56. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/act_lib/url.py +0 -0
  57. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/act_lib/vector.py +0 -0
  58. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/act_lib/webtool.py +0 -0
  59. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/act_lib/zip.py +0 -0
  60. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/api/__init__.py +0 -0
  61. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/api/actions_api.py +0 -0
  62. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/api/alias_api.py +0 -0
  63. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/api/architype_api.py +0 -0
  64. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/api/config_api.py +0 -0
  65. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/api/graph_api.py +0 -0
  66. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/api/interface.py +0 -0
  67. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/api/jac_api.py +0 -0
  68. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/api/jsorc_api.py +0 -0
  69. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/api/logger_api.py +0 -0
  70. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/api/master_api.py +0 -0
  71. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/api/object_api.py +0 -0
  72. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/api/prometheus_api.py +0 -0
  73. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/api/queue_api.py +0 -0
  74. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/api/sentinel_api.py +0 -0
  75. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/api/super_api.py +0 -0
  76. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/api/tests/__init__.py +0 -0
  77. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/api/tests/test_architype_api.py +0 -0
  78. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/api/tests/test_global_api.py +0 -0
  79. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/api/tests/test_graph_api.py +0 -0
  80. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/api/tests/test_logger_api.py +0 -0
  81. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/api/tests/test_object_api.py +0 -0
  82. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/api/tests/test_sentinel_api.py +0 -0
  83. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/api/tests/test_uncommon.py +0 -0
  84. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/api/tests/test_user_api.py +0 -0
  85. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/api/tests/test_walker_api.py +0 -0
  86. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/api/user_api.py +0 -0
  87. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/api/walker_api.py +0 -0
  88. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/api/webhook_api.py +0 -0
  89. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/svc/__init__.py +0 -0
  90. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/svc/kube_svc.py +0 -0
  91. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/svc/mail_svc.py +0 -0
  92. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/svc/prome_svc.py +0 -0
  93. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/svc/redis_svc.py +0 -0
  94. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/svc/storage_svc.py +0 -0
  95. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/svc/stripe_svc.py +0 -0
  96. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/svc/task_svc.py +0 -0
  97. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/extens/svc/tasks.py +0 -0
  98. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jac/__init__.py +0 -0
  99. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jac/interpreter/__init__.py +0 -0
  100. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jac/interpreter/architype_interp.py +0 -0
  101. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jac/interpreter/interp.py +0 -0
  102. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jac/interpreter/sentinel_interp.py +0 -0
  103. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jac/interpreter/tests/__init__.py +0 -0
  104. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jac/interpreter/tests/test_interp.py +0 -0
  105. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jac/interpreter/walker_interp.py +0 -0
  106. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jac/ir/__init__.py +0 -0
  107. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jac/ir/ast.py +0 -0
  108. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jac/ir/ast_builder.py +0 -0
  109. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jac/ir/jac_code.py +0 -0
  110. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jac/ir/passes/__init__.py +0 -0
  111. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jac/ir/passes/ast_prune_pass.py +0 -0
  112. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jac/ir/passes/codegen_pass.py +0 -0
  113. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jac/ir/passes/ir_pass.py +0 -0
  114. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jac/ir/passes/printer_pass.py +0 -0
  115. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jac/ir/passes/pt_prune_pass.py +0 -0
  116. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jac/ir/passes/schedule.py +0 -0
  117. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jac/ir/passes/stats_pass.py +0 -0
  118. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jac/jac.g4 +0 -0
  119. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jac/jac_parse/__init__.py +0 -0
  120. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jac/jac_parse/jacLexer.py +0 -0
  121. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jac/jac_parse/jacListener.py +0 -0
  122. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jac/jac_parse/jacParser.py +0 -0
  123. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jac/jac_set.py +0 -0
  124. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jac/jsci_vm/__init__.py +0 -0
  125. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jac/jsci_vm/disasm.py +0 -0
  126. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jac/jsci_vm/inst_ptr.py +0 -0
  127. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jac/jsci_vm/machine.py +0 -0
  128. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jac/jsci_vm/op_codes.py +0 -0
  129. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jac/jsci_vm/tests/__init__.py +0 -0
  130. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jac/jsci_vm/tests/test_codegen.py +0 -0
  131. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jac/machine/__init__.py +0 -0
  132. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jac/machine/jac_scope.py +0 -0
  133. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jac/machine/jac_value.py +0 -0
  134. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jac/machine/machine_state.py +0 -0
  135. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jac/tests/__init__.py +0 -0
  136. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jac/tests/book_code.py +0 -0
  137. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jac/tests/test_book.py +0 -0
  138. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jac/tests/test_lang_14.py +0 -0
  139. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jsorc/__init__.py +0 -0
  140. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jsorc/jsorc.py +0 -0
  141. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jsorc/jsorc_utils.py +0 -0
  142. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jsorc/live_actions.py +0 -0
  143. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jsorc/manifests/__init__.py +0 -0
  144. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jsorc/manifests/database.yaml +0 -0
  145. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jsorc/manifests/elastic.yaml +0 -0
  146. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jsorc/manifests/prometheus.yaml +0 -0
  147. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jsorc/manifests/redis.yaml +0 -0
  148. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jsorc/memory.py +0 -0
  149. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jsorc/redis.py +0 -0
  150. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jsorc/remote_actions.py +0 -0
  151. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jsorc/tests/__init__.py +0 -0
  152. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jsorc/tests/test_actions.py +0 -0
  153. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/jsorc/tests/test_jsorc.py +0 -0
  154. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/prim/__init__.py +0 -0
  155. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/prim/ability.py +0 -0
  156. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/prim/architype.py +0 -0
  157. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/prim/element.py +0 -0
  158. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/prim/graph.py +0 -0
  159. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/prim/master.py +0 -0
  160. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/prim/obj_mixins.py +0 -0
  161. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/prim/sentinel.py +0 -0
  162. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/prim/super_master.py +0 -0
  163. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/prim/walker.py +0 -0
  164. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/svc/__init__.py +0 -0
  165. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/tests/__init__.py +0 -0
  166. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/tests/infer.py +0 -0
  167. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/tests/jac_test_progs.py +0 -0
  168. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/tests/test_core.py +0 -0
  169. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/tests/test_jac.py +0 -0
  170. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/tests/test_node.py +0 -0
  171. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/tests/test_progs.py +0 -0
  172. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/tests/test_stack.py +0 -0
  173. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/tests/test_stripe.py +0 -0
  174. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/utils/__init__.py +0 -0
  175. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/utils/actions/__init__.py +0 -0
  176. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/utils/actions/actions_manager.py +0 -0
  177. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/utils/actions/actions_optimizer.py +0 -0
  178. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/utils/actions/actions_state.py +0 -0
  179. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/utils/file_handler.py +0 -0
  180. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/utils/gprof2dot.py +0 -0
  181. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/utils/json_handler.py +0 -0
  182. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/utils/log_utils.py +0 -0
  183. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/utils/test_core.py +0 -0
  184. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci/utils/utils.py +0 -0
  185. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci.egg-info/SOURCES.txt +0 -0
  186. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci.egg-info/dependency_links.txt +0 -0
  187. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci.egg-info/entry_points.txt +0 -0
  188. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci.egg-info/requires.txt +0 -0
  189. {jaseci-1.4.1.9 → jaseci-1.4.2}/jaseci.egg-info/top_level.txt +0 -0
  190. {jaseci-1.4.1.9 → jaseci-1.4.2}/setup.cfg +0 -0
  191. {jaseci-1.4.1.9 → jaseci-1.4.2}/setup.py +0 -0
jaseci-1.4.2/PKG-INFO ADDED
@@ -0,0 +1,35 @@
1
+ Metadata-Version: 2.1
2
+ Name: jaseci
3
+ Version: 1.4.2
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: celery<6,>=5
16
+ Requires-Dist: flake8
17
+ Requires-Dist: pep8-naming
18
+ Requires-Dist: stripe
19
+ Requires-Dist: pydantic<2.0.0
20
+ Requires-Dist: docstring-parser
21
+ Requires-Dist: prometheus_api_client==0.5.1
22
+ Requires-Dist: prometheus-client==0.14.1
23
+ Requires-Dist: kubernetes==23.6.0
24
+ Requires-Dist: pytest
25
+ Requires-Dist: pytest-xdist
26
+ Requires-Dist: pytest-cov
27
+ Requires-Dist: validators==0.21.2
28
+ Requires-Dist: psycopg2-binary==2.9.5
29
+ Requires-Dist: pygls
30
+ Requires-Dist: mock
31
+ Requires-Dist: beautifulsoup4<4.13.0,>=4.12.2
32
+ Requires-Dist: lxml<4.10.0,>=4.9.2
33
+ Requires-Dist: html5lib<1.2,>=1.1
34
+ Requires-Dist: prettytable<3.8.0,>=3.7.0
35
+ Requires-Dist: apache-libcloud==3.7.0
@@ -0,0 +1 @@
1
+ 1.4.2
@@ -42,17 +42,26 @@ class GlobalApi:
42
42
  @Interface.admin_api()
43
43
  def global_sentinel_set(self, snt: Sentinel = None):
44
44
  """
45
- Set sentinel as globally accessible
45
+ Make a sentinel globally accessible and set it as the global sentinel
46
46
  """
47
47
  snt.make_read_only()
48
48
  snt.propagate_access()
49
49
  self._h.save_glob("GLOB_SENTINEL", snt.jid)
50
50
  return {"response": f"Global sentinel set to '{snt}'!"}
51
51
 
52
+ @Interface.admin_api()
53
+ def global_sentinel_set_access(self, snt: Sentinel = None):
54
+ """
55
+ Make a sentinel globally accessible
56
+ """
57
+ snt.make_read_only()
58
+ snt.propagate_access()
59
+ return {"response": f"Sentinel '{snt}' is now globally accessible."}
60
+
52
61
  @Interface.admin_api()
53
62
  def global_sentinel_unset(self):
54
63
  """
55
- Set sentinel as globally accessible
64
+ Unset a global sentinel
56
65
  """
57
66
  current = self.global_get("GLOB_SENTINEL")["value"]
58
67
  if current:
@@ -81,8 +81,12 @@ class ElasticService(JsOrc.CommonService):
81
81
  under_test = self.config.get("under_test", False)
82
82
  if not under_test:
83
83
  self.configure_elastic()
84
- LOG_QUEUES["core"] = self.add_elastic_log_handler(logger, "core", under_test)
85
- LOG_QUEUES["app"] = self.add_elastic_log_handler(app_logger, "app", under_test)
84
+ LOG_QUEUES["core"] = self.add_elastic_log_handler(
85
+ logger, self.config.get("core_log_index") or "core", under_test
86
+ )
87
+ LOG_QUEUES["app"] = self.add_elastic_log_handler(
88
+ app_logger, self.config.get("app_log_index") or "app", under_test
89
+ )
86
90
 
87
91
  def configure_elastic(self):
88
92
  """
@@ -172,6 +172,8 @@ class JsOrcSettings:
172
172
  "auth": os.getenv("ELASTIC_AUTH"),
173
173
  "common_index": f"{KUBE_NAMESPACE}-common",
174
174
  "activity_index": f"{KUBE_NAMESPACE}-activity",
175
+ "core_log_index": "core",
176
+ "app_log_index": "app",
175
177
  "ilm_policy_name": ELASTIC_ILM_POLICY_NAME,
176
178
  "ilm_policy": ELASTIC_ILM_POLICY,
177
179
  "index_template_name": ELASTIC_INDEX_TEMPLATE_NAME,
@@ -103,8 +103,13 @@ class Edge(Element, Anchored):
103
103
  """
104
104
  Write self through hook to persistent storage
105
105
  """
106
+
106
107
  if self.is_fast():
107
108
  self._persist = False
109
+ if self.from_node_id:
110
+ self.from_node().save()
111
+ if self.to_node_id:
112
+ self.to_node().save()
108
113
  super().save()
109
114
 
110
115
  def destroy(self):
@@ -52,16 +52,23 @@ class Node(Element, Anchored):
52
52
  for k in self.fast_edges.keys():
53
53
  for v in self.fast_edges[k]:
54
54
  link_order = [v[0], self.jid] if v[1] == FROM else [self.jid, v[0]]
55
- edge = Edge(
56
- m_id=self._m_id, h=self._h, kind="edge", name=k, auto_save=False
57
- )
58
- edge.from_node_id = link_order[0]
59
- edge.to_node_id = link_order[1]
60
- edge.bidirected = v[1] == BI
61
- edge.jid = v[2] if len(v) > 2 else uuid.uuid4().urn
62
- edge.context = v[3] if len(v) > 3 else {}
63
- edge.save()
64
- self._fast_edge_ids.add_obj(edge)
55
+ edge = self._h.get_obj(self._m_id, v[2])
56
+ if edge:
57
+ v[3] = edge.context
58
+ else:
59
+ edge = Edge(
60
+ m_id=self._m_id, h=self._h, kind="edge", name=k, auto_save=False
61
+ )
62
+ edge.from_node_id = link_order[0]
63
+ edge.to_node_id = link_order[1]
64
+ edge.bidirected = v[1] == BI
65
+ edge.jid = v[2] if len(v) > 2 else uuid.uuid4().urn
66
+ edge.context = v[3] if len(v) > 3 else {}
67
+ # old `edge.save()` might be confusing
68
+ # this line doesn't mean it has to be saved on db
69
+ # it only needs to be available on cache (memory, redis)
70
+ self._h.commit_obj_to_cache(edge, True)
71
+ self._fast_edge_ids.add_obj(edge, bypass=True)
65
72
 
66
73
  def smart_add_edge(self, obj):
67
74
  # make sure fast edges built
@@ -1186,3 +1186,108 @@ struct_types = """
1186
1186
  report [a.basic.apple.apple, a.basic.apple.orange];
1187
1187
  }
1188
1188
  """
1189
+
1190
+
1191
+ simple_graph = """
1192
+ node a1 {has val = 0;}
1193
+ node a2 {has val = 0;}
1194
+ node a3 {has val = 0;}
1195
+ node b1 {has val = 0;}
1196
+ node b2 {has val = 0;}
1197
+ edge e1 {has val = 0;}
1198
+ edge e2 {has val = 0;}
1199
+ edge e3 {has val = 0;}
1200
+
1201
+ walker sample {
1202
+ root {
1203
+ take --> node::a1 else: take spawn here +[e1]+> node::a1;
1204
+ take --> node::b1 else: take spawn here ++> node::b1;
1205
+ }
1206
+
1207
+ a1: take --> node::a2 else {
1208
+ report --> node::a2;
1209
+ report -[e2]-> node::a2;
1210
+ take spawn here +[e2]+> node::a2;
1211
+ }
1212
+ a2: take --> node::a3 else: take spawn here +[e3]+> node::a3;
1213
+ b1: take --> node::b2 else: take spawn here ++> node::b2;
1214
+ }
1215
+
1216
+ walker sample2 {
1217
+ root {
1218
+ take --> node::a1;
1219
+ take --> node::b1;
1220
+ }
1221
+ a1: take --> node::a2;
1222
+ a2: take --> node::a3;
1223
+ a3: here.val = 1;
1224
+ b1: take --> node::b2;
1225
+ b2: here.val = 1;
1226
+ }
1227
+
1228
+ walker sample3 {
1229
+ root {
1230
+ take --> node::a1;
1231
+ take --> node::b1;
1232
+ }
1233
+ a1 {
1234
+ -[e2]->.edge[0].val = 1;
1235
+ take --> node::a2;
1236
+ }
1237
+ a2 {
1238
+ take --> node::a3;
1239
+ here not --> node::a3;
1240
+ }
1241
+ a3: here.val = 2;
1242
+ b1: take --> node::b2;
1243
+ }
1244
+ """
1245
+
1246
+ simple_graph2 = """
1247
+ node a1 {has val = 0;}
1248
+ edge e1 {has val = 0;}
1249
+
1250
+ walker sample {
1251
+ root: report spawn here <+[e1]+ node::a1;
1252
+ }
1253
+
1254
+ walker sample2 {
1255
+ root: report <-[e1]- node::a1.edge[0].val;
1256
+ a1 {
1257
+ --> node::root.edge[0].val = 4;
1258
+ report -[e1]->.edge[0].val;
1259
+ take --> node::root;
1260
+ }
1261
+ }
1262
+
1263
+ walker sample3 {
1264
+ root {
1265
+ report <-[e1]- node::a1.edge[0].val;
1266
+ take <-[e1]- node::a1;
1267
+ }
1268
+
1269
+ a1: report -[e1]->.edge[0].val;
1270
+ }
1271
+
1272
+ walker sample4 {
1273
+ root {
1274
+ <-- node::a1.edge[0].val = 6;
1275
+ report <-[e1]- node::a1.edge[0].val;
1276
+ take <-[e1]- node::a1;
1277
+ }
1278
+ a1: report -[e1]-> node::root.edge[0].val;
1279
+ }
1280
+
1281
+ walker sample5 {
1282
+ root: report <-[e1]-.edge[0].val;
1283
+ a1 {
1284
+ report -[e1]-> node::root.edge[0].val;
1285
+ take -[e1]-> node::root;
1286
+ }
1287
+ }
1288
+
1289
+ walker sample6 {
1290
+ root: <-[e1]- node::a1.edge[0].val = 8;
1291
+ a1: report --> node::root.edge[0].val;
1292
+ }
1293
+ """
@@ -27,7 +27,9 @@ class IdList(list):
27
27
  def cache_reset(self):
28
28
  self.cached_objects = []
29
29
 
30
- def add_obj(self, obj, push_front=False, allow_dups=False, silent=False):
30
+ def add_obj(
31
+ self, obj, push_front=False, allow_dups=False, silent=False, bypass=False
32
+ ):
31
33
  """Adds a obj obj to Jaseci object"""
32
34
  self.parent_obj.check_hooks_match(obj)
33
35
  if not allow_dups and obj.jid in self:
@@ -39,10 +41,12 @@ class IdList(list):
39
41
  self.insert(0, obj.jid)
40
42
  else:
41
43
  self.append(obj.jid)
42
- if not obj.j_parent:
43
- obj.j_parent = self.parent_obj.jid
44
- self.save(obj)
45
- self.save()
44
+
45
+ if not bypass:
46
+ if not obj.j_parent:
47
+ obj.j_parent = self.parent_obj.jid
48
+ self.save(obj)
49
+ self.save()
46
50
 
47
51
  def add_obj_list(self, obj_list, push_front=False, allow_dups=False, silent=False):
48
52
  self.cache_reset()
@@ -0,0 +1,35 @@
1
+ Metadata-Version: 2.1
2
+ Name: jaseci
3
+ Version: 1.4.2
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: celery<6,>=5
16
+ Requires-Dist: flake8
17
+ Requires-Dist: pep8-naming
18
+ Requires-Dist: stripe
19
+ Requires-Dist: pydantic<2.0.0
20
+ Requires-Dist: docstring-parser
21
+ Requires-Dist: prometheus_api_client==0.5.1
22
+ Requires-Dist: prometheus-client==0.14.1
23
+ Requires-Dist: kubernetes==23.6.0
24
+ Requires-Dist: pytest
25
+ Requires-Dist: pytest-xdist
26
+ Requires-Dist: pytest-cov
27
+ Requires-Dist: validators==0.21.2
28
+ Requires-Dist: psycopg2-binary==2.9.5
29
+ Requires-Dist: pygls
30
+ Requires-Dist: mock
31
+ Requires-Dist: beautifulsoup4<4.13.0,>=4.12.2
32
+ Requires-Dist: lxml<4.10.0,>=4.9.2
33
+ Requires-Dist: html5lib<1.2,>=1.1
34
+ Requires-Dist: prettytable<3.8.0,>=3.7.0
35
+ Requires-Dist: apache-libcloud==3.7.0
jaseci-1.4.1.9/PKG-INFO DELETED
@@ -1,7 +0,0 @@
1
- Metadata-Version: 2.1
2
- Name: jaseci
3
- Version: 1.4.1.9
4
- Home-page: https://github.com/Jaseci-Labs/jaseci
5
- Author: Jason Mars
6
- Author-email: jason@jaseci.org
7
- License-File: LICENSE
@@ -1 +0,0 @@
1
- 1.4.1.9
@@ -1,7 +0,0 @@
1
- Metadata-Version: 2.1
2
- Name: jaseci
3
- Version: 1.4.1.9
4
- Home-page: https://github.com/Jaseci-Labs/jaseci
5
- Author: Jason Mars
6
- Author-email: jason@jaseci.org
7
- License-File: LICENSE
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