dshellInterpreter 1.2.1.4__tar.gz → 1.2.1.5__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.
- {dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DISCORD_COMMANDS/dshell_ui.py +2 -14
- {dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DshellInterpreteur/dshell_interpreter.py +10 -6
- {dshellinterpreter-1.2.1.4/dshellInterpreter.egg-info → dshellinterpreter-1.2.1.5}/PKG-INFO +1 -1
- {dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5/dshellInterpreter.egg-info}/PKG-INFO +1 -1
- {dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/setup.py +1 -1
- {dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DISCORD_COMMANDS/__init__.py +0 -0
- {dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DISCORD_COMMANDS/dshell_channel.py +0 -0
- {dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DISCORD_COMMANDS/dshell_embed.py +0 -0
- {dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DISCORD_COMMANDS/dshell_file.py +0 -0
- {dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DISCORD_COMMANDS/dshell_interaction.py +0 -0
- {dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DISCORD_COMMANDS/dshell_member.py +0 -0
- {dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DISCORD_COMMANDS/dshell_message.py +0 -0
- {dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DISCORD_COMMANDS/dshell_pastbin.py +0 -0
- {dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DISCORD_COMMANDS/dshell_role.py +0 -0
- {dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DISCORD_COMMANDS/utils/__init__.py +0 -0
- {dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DISCORD_COMMANDS/utils/utils_embed.py +0 -0
- {dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DISCORD_COMMANDS/utils/utils_file.py +0 -0
- {dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DISCORD_COMMANDS/utils/utils_global.py +0 -0
- {dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DISCORD_COMMANDS/utils/utils_list.py +0 -0
- {dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DISCORD_COMMANDS/utils/utils_member.py +0 -0
- {dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DISCORD_COMMANDS/utils/utils_message.py +0 -0
- {dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DISCORD_COMMANDS/utils/utils_numbers.py +0 -0
- {dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DISCORD_COMMANDS/utils/utils_permissions.py +0 -0
- {dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DISCORD_COMMANDS/utils/utils_string.py +0 -0
- {dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DISCORD_COMMANDS/utils/utils_thread.py +0 -0
- {dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DISCORD_COMMANDS/utils/utils_type_validation.py +0 -0
- {dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DshellInterpreteur/__init__.py +0 -0
- {dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DshellInterpreteur/cached_messages.py +0 -0
- {dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DshellInterpreteur/dshell_arguments.py +0 -0
- {dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DshellInterpreteur/dshell_global_variables.py +0 -0
- {dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DshellInterpreteur/dshell_scope.py +0 -0
- {dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DshellInterpreteur/errors.py +0 -0
- {dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DshellInterpreteur/utils_interpreter.py +0 -0
- {dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DshellParser/__init__.py +0 -0
- {dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DshellParser/ast_nodes.py +0 -0
- {dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DshellParser/dshell_parser.py +0 -0
- {dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DshellParser/errors.py +0 -0
- {dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DshellPreProcess/__init__.py +0 -0
- {dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DshellPreProcess/dshell_preprocess.py +0 -0
- {dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DshellTokenizer/__init__.py +0 -0
- {dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DshellTokenizer/dshell_keywords.py +0 -0
- {dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DshellTokenizer/dshell_token_type.py +0 -0
- {dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DshellTokenizer/dshell_tokenizer.py +0 -0
- {dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/__init__.py +0 -0
- {dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/full_import.py +0 -0
- {dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/regex_test.py +0 -0
- {dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/LICENSE +0 -0
- {dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/README.md +0 -0
- {dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/dshellInterpreter.egg-info/SOURCES.txt +0 -0
- {dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/dshellInterpreter.egg-info/dependency_links.txt +0 -0
- {dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/dshellInterpreter.egg-info/requires.txt +0 -0
- {dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/dshellInterpreter.egg-info/top_level.txt +0 -0
- {dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/setup.cfg +0 -0
{dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DISCORD_COMMANDS/dshell_ui.py
RENAMED
|
@@ -383,17 +383,11 @@ async def ui_button_callback(button: ui.Button, interaction: Interaction, data:
|
|
|
383
383
|
code,
|
|
384
384
|
ctx=interaction,
|
|
385
385
|
debug=False,
|
|
386
|
-
vars_env=
|
|
387
|
-
|
|
388
|
-
if scope is not None:
|
|
389
|
-
update_nbr_usage_scope(scope, 1)
|
|
386
|
+
vars_env=scope)
|
|
390
387
|
|
|
391
388
|
with new_scope(new_interpreter, local_env):
|
|
392
389
|
await new_interpreter.execute()
|
|
393
390
|
|
|
394
|
-
if scope is not None:
|
|
395
|
-
update_nbr_usage_scope(scope, -1)
|
|
396
|
-
|
|
397
391
|
else:
|
|
398
392
|
await interaction.response.defer(invisible=True)
|
|
399
393
|
|
|
@@ -527,16 +521,10 @@ async def ui_select_callback(select: ui.Select, interaction: Interaction, data:
|
|
|
527
521
|
code,
|
|
528
522
|
ctx=interaction,
|
|
529
523
|
debug=False,
|
|
530
|
-
vars_env=
|
|
531
|
-
|
|
532
|
-
if scope is not None:
|
|
533
|
-
update_nbr_usage_scope(scope, 1)
|
|
524
|
+
vars_env=scope)
|
|
534
525
|
|
|
535
526
|
with new_scope(new_interpreter, local_env):
|
|
536
527
|
await new_interpreter.execute()
|
|
537
528
|
|
|
538
|
-
if scope is not None:
|
|
539
|
-
update_nbr_usage_scope(scope, -1)
|
|
540
|
-
|
|
541
529
|
else:
|
|
542
530
|
await interaction.response.defer(invisible=True)
|
|
@@ -27,7 +27,7 @@ class DshellInterpreteur:
|
|
|
27
27
|
def __init__(self, code: Union[str, CodeNode], ctx: context,
|
|
28
28
|
debug: bool = False,
|
|
29
29
|
vars: Optional[str] = None,
|
|
30
|
-
vars_env: Optional[dict[str, Any] |
|
|
30
|
+
vars_env: Optional[dict[str, Any] | str] = None):
|
|
31
31
|
"""
|
|
32
32
|
Interpreter Dshell code
|
|
33
33
|
:param code: The code to interpret. Each line must end with a newline character, except SEPARATOR and SUB_SEPARATOR tokens.
|
|
@@ -49,8 +49,13 @@ class DshellInterpreteur:
|
|
|
49
49
|
message = ctx.message if isinstance(ctx, Interaction) else ctx
|
|
50
50
|
|
|
51
51
|
# scope creation
|
|
52
|
-
|
|
53
|
-
|
|
52
|
+
scope = get_scope(vars_env)
|
|
53
|
+
if scope:
|
|
54
|
+
self.env = scope
|
|
55
|
+
self.scope_id = vars_env
|
|
56
|
+
else:
|
|
57
|
+
self.scope_id: str = create_scope()
|
|
58
|
+
self.env: Optional[Scope] = get_scope(self.scope_id)
|
|
54
59
|
|
|
55
60
|
if self.env is None:
|
|
56
61
|
raise Exception(f"Scope {self.scope_id} not found in interpreter creation !")
|
|
@@ -112,9 +117,8 @@ class DshellInterpreteur:
|
|
|
112
117
|
|
|
113
118
|
} if message is not None and not debug else {'__ret__': None, '__break__': BoolNode(0)}) # {} is used in debug mode, when ctx is None
|
|
114
119
|
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
elif isinstance(vars_env, dict): # add the variables to the environment
|
|
120
|
+
|
|
121
|
+
if isinstance(vars_env, dict): # add the variables to the environment
|
|
118
122
|
self.env.update(vars_env)
|
|
119
123
|
|
|
120
124
|
self.vars = StrNode(vars) if vars is not None else StrNode('')
|
|
@@ -5,7 +5,7 @@ with open("README.md", "r") as fh:
|
|
|
5
5
|
|
|
6
6
|
setup(
|
|
7
7
|
name="dshellInterpreter",
|
|
8
|
-
version="1.2.1.
|
|
8
|
+
version="1.2.1.5",
|
|
9
9
|
author="Chronos",
|
|
10
10
|
author_email="vagabonwalybi@gmail.com",
|
|
11
11
|
description="A Discord bot interpreter for creating custom commands and automations.",
|
|
File without changes
|
{dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DISCORD_COMMANDS/dshell_channel.py
RENAMED
|
File without changes
|
{dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DISCORD_COMMANDS/dshell_embed.py
RENAMED
|
File without changes
|
{dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DISCORD_COMMANDS/dshell_file.py
RENAMED
|
File without changes
|
|
File without changes
|
{dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DISCORD_COMMANDS/dshell_member.py
RENAMED
|
File without changes
|
{dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DISCORD_COMMANDS/dshell_message.py
RENAMED
|
File without changes
|
{dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DISCORD_COMMANDS/dshell_pastbin.py
RENAMED
|
File without changes
|
{dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DISCORD_COMMANDS/dshell_role.py
RENAMED
|
File without changes
|
{dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DISCORD_COMMANDS/utils/__init__.py
RENAMED
|
File without changes
|
{dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DISCORD_COMMANDS/utils/utils_embed.py
RENAMED
|
File without changes
|
{dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DISCORD_COMMANDS/utils/utils_file.py
RENAMED
|
File without changes
|
|
File without changes
|
{dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DISCORD_COMMANDS/utils/utils_list.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DshellInterpreteur/__init__.py
RENAMED
|
File without changes
|
{dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DshellInterpreteur/cached_messages.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DshellInterpreteur/dshell_scope.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DshellParser/dshell_parser.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DshellPreProcess/dshell_preprocess.py
RENAMED
|
File without changes
|
|
File without changes
|
{dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DshellTokenizer/dshell_keywords.py
RENAMED
|
File without changes
|
{dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DshellTokenizer/dshell_token_type.py
RENAMED
|
File without changes
|
{dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/Dshell/DshellTokenizer/dshell_tokenizer.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/dshellInterpreter.egg-info/SOURCES.txt
RENAMED
|
File without changes
|
|
File without changes
|
{dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/dshellInterpreter.egg-info/requires.txt
RENAMED
|
File without changes
|
{dshellinterpreter-1.2.1.4 → dshellinterpreter-1.2.1.5}/dshellInterpreter.egg-info/top_level.txt
RENAMED
|
File without changes
|
|
File without changes
|