dialoghelper 0.0.31__tar.gz → 0.0.32__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 dialoghelper might be problematic. Click here for more details.
- {dialoghelper-0.0.31/dialoghelper.egg-info → dialoghelper-0.0.32}/PKG-INFO +3 -1
- dialoghelper-0.0.32/dialoghelper/__init__.py +2 -0
- {dialoghelper-0.0.31 → dialoghelper-0.0.32}/dialoghelper/_modidx.py +2 -0
- {dialoghelper-0.0.31 → dialoghelper-0.0.32}/dialoghelper/core.py +31 -11
- {dialoghelper-0.0.31 → dialoghelper-0.0.32/dialoghelper.egg-info}/PKG-INFO +3 -1
- {dialoghelper-0.0.31 → dialoghelper-0.0.32}/dialoghelper.egg-info/requires.txt +2 -0
- {dialoghelper-0.0.31 → dialoghelper-0.0.32}/settings.ini +2 -2
- dialoghelper-0.0.31/dialoghelper/__init__.py +0 -2
- {dialoghelper-0.0.31 → dialoghelper-0.0.32}/LICENSE +0 -0
- {dialoghelper-0.0.31 → dialoghelper-0.0.32}/MANIFEST.in +0 -0
- {dialoghelper-0.0.31 → dialoghelper-0.0.32}/README.md +0 -0
- {dialoghelper-0.0.31 → dialoghelper-0.0.32}/dialoghelper/db_dc.py +0 -0
- {dialoghelper-0.0.31 → dialoghelper-0.0.32}/dialoghelper/experimental.py +0 -0
- {dialoghelper-0.0.31 → dialoghelper-0.0.32}/dialoghelper/screenshot.js +0 -0
- {dialoghelper-0.0.31 → dialoghelper-0.0.32}/dialoghelper.egg-info/SOURCES.txt +0 -0
- {dialoghelper-0.0.31 → dialoghelper-0.0.32}/dialoghelper.egg-info/dependency_links.txt +0 -0
- {dialoghelper-0.0.31 → dialoghelper-0.0.32}/dialoghelper.egg-info/entry_points.txt +0 -0
- {dialoghelper-0.0.31 → dialoghelper-0.0.32}/dialoghelper.egg-info/not-zip-safe +0 -0
- {dialoghelper-0.0.31 → dialoghelper-0.0.32}/dialoghelper.egg-info/top_level.txt +0 -0
- {dialoghelper-0.0.31 → dialoghelper-0.0.32}/pyproject.toml +0 -0
- {dialoghelper-0.0.31 → dialoghelper-0.0.32}/setup.cfg +0 -0
- {dialoghelper-0.0.31 → dialoghelper-0.0.32}/setup.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: dialoghelper
|
|
3
|
-
Version: 0.0.
|
|
3
|
+
Version: 0.0.32
|
|
4
4
|
Summary: Helper functions for solveit dialogs
|
|
5
5
|
Home-page: https://github.com/AnswerDotAI/dialoghelper
|
|
6
6
|
Author: Jeremy Howard
|
|
@@ -23,6 +23,8 @@ Requires-Dist: fastlite
|
|
|
23
23
|
Requires-Dist: ghapi
|
|
24
24
|
Requires-Dist: ipykernel-helper
|
|
25
25
|
Requires-Dist: claudette
|
|
26
|
+
Requires-Dist: ast-grep-cli
|
|
27
|
+
Requires-Dist: ast-grep-py
|
|
26
28
|
Provides-Extra: dev
|
|
27
29
|
Requires-Dist: python-fasthtml; extra == "dev"
|
|
28
30
|
Dynamic: author
|
|
@@ -9,6 +9,8 @@ d = { 'settings': { 'branch': 'main',
|
|
|
9
9
|
'dialoghelper.core._umsg': ('core.html#_umsg', 'dialoghelper/core.py'),
|
|
10
10
|
'dialoghelper.core.add_html': ('core.html#add_html', 'dialoghelper/core.py'),
|
|
11
11
|
'dialoghelper.core.add_msg': ('core.html#add_msg', 'dialoghelper/core.py'),
|
|
12
|
+
'dialoghelper.core.ast_grep': ('core.html#ast_grep', 'dialoghelper/core.py'),
|
|
13
|
+
'dialoghelper.core.ast_py': ('core.html#ast_py', 'dialoghelper/core.py'),
|
|
12
14
|
'dialoghelper.core.call_endp': ('core.html#call_endp', 'dialoghelper/core.py'),
|
|
13
15
|
'dialoghelper.core.curr_dialog': ('core.html#curr_dialog', 'dialoghelper/core.py'),
|
|
14
16
|
'dialoghelper.core.del_msg': ('core.html#del_msg', 'dialoghelper/core.py'),
|
|
@@ -2,8 +2,9 @@
|
|
|
2
2
|
|
|
3
3
|
# %% auto 0
|
|
4
4
|
__all__ = ['Placements', 'empty', 'find_var', 'call_endp', 'find_dname', 'find_msg_id', 'curr_dialog', 'find_msgs', 'msg_idx',
|
|
5
|
-
'read_msg', 'add_html', '
|
|
6
|
-
'import_string', 'is_usable_tool', 'mk_toollist', 'import_gist', 'tool_info',
|
|
5
|
+
'read_msg', 'add_html', 'run_msg', 'add_msg', 'del_msg', 'update_msg', 'url2note', 'ast_py', 'ast_grep',
|
|
6
|
+
'load_gist', 'gist_file', 'import_string', 'is_usable_tool', 'mk_toollist', 'import_gist', 'tool_info',
|
|
7
|
+
'asdict']
|
|
7
8
|
|
|
8
9
|
# %% ../nbs/00_core.ipynb
|
|
9
10
|
import json, importlib, linecache
|
|
@@ -106,14 +107,6 @@ def add_html(
|
|
|
106
107
|
"Send HTML to the browser to be swapped into the DOM"
|
|
107
108
|
call_endp('add_html_', dname, content=to_xml(content))
|
|
108
109
|
|
|
109
|
-
# %% ../nbs/00_core.ipynb
|
|
110
|
-
def del_msg(
|
|
111
|
-
msgid:str=None, # id of message to delete
|
|
112
|
-
dname:str='' # Running dialog to get info for; defaults to current dialog
|
|
113
|
-
):
|
|
114
|
-
"Delete a message from the dialog."
|
|
115
|
-
call_endp('rm_msg_', dname, raiseex=True, msid=msgid)
|
|
116
|
-
|
|
117
110
|
# %% ../nbs/00_core.ipynb
|
|
118
111
|
def run_msg(
|
|
119
112
|
msgid:str=None, # id of message to execute
|
|
@@ -148,6 +141,14 @@ def add_msg(
|
|
|
148
141
|
time_run=time_run, is_exported=is_exported, skipped=skipped, pinned=pinned,
|
|
149
142
|
i_collapsed=i_collapsed, o_collapsed=o_collapsed, heading_collapsed=heading_collapsed)
|
|
150
143
|
|
|
144
|
+
# %% ../nbs/00_core.ipynb
|
|
145
|
+
def del_msg(
|
|
146
|
+
msgid:str=None, # id of message to delete
|
|
147
|
+
dname:str='' # Running dialog to get info for; defaults to current dialog
|
|
148
|
+
):
|
|
149
|
+
"Delete a message from the dialog."
|
|
150
|
+
call_endp('rm_msg_', dname, raiseex=True, msid=msgid)
|
|
151
|
+
|
|
151
152
|
# %% ../nbs/00_core.ipynb
|
|
152
153
|
@delegates(add_msg)
|
|
153
154
|
def _add_msg_unsafe(
|
|
@@ -155,12 +156,12 @@ def _add_msg_unsafe(
|
|
|
155
156
|
placement:str='add_after', # Can be 'add_after', 'add_before', 'at_start', 'at_end'
|
|
156
157
|
msgid:str=None, # id of message that placement is relative to (if None, uses current message)
|
|
157
158
|
run:bool=False, # For prompts, send it to the AI; for code, execute it (*DANGEROUS -- be careful of what you run!)
|
|
159
|
+
dname:str='', # Running dialog to get info for; defaults to current dialog
|
|
158
160
|
**kwargs
|
|
159
161
|
):
|
|
160
162
|
"""Add/update a message to the queue to show after code execution completes, and optionally run it. Be sure to pass a `sid` (stable id) not a `mid` (which is used only for sorting, and can change).
|
|
161
163
|
*WARNING*--This can execute arbitrary code, so check carefully what you run!--*WARNING"""
|
|
162
164
|
if placement not in ('at_start','at_end') and not msgid: msgid = find_msg_id()
|
|
163
|
-
dname = kwargs.pop('dname')
|
|
164
165
|
return call_endp(
|
|
165
166
|
'add_relative_', dname, content=content, placement=placement, msgid=msgid, run=run, **kwargs)
|
|
166
167
|
|
|
@@ -201,6 +202,25 @@ def url2note(
|
|
|
201
202
|
res = read_url(url, as_md=True, extract_section=extract_section, selector=selector)
|
|
202
203
|
return add_msg(res)
|
|
203
204
|
|
|
205
|
+
# %% ../nbs/00_core.ipynb
|
|
206
|
+
def ast_py(code:str):
|
|
207
|
+
"Get an SgRoot root node for python `code`"
|
|
208
|
+
from ast_grep_py import SgRoot
|
|
209
|
+
return SgRoot(code, "python").root()
|
|
210
|
+
|
|
211
|
+
# %% ../nbs/00_core.ipynb
|
|
212
|
+
def ast_grep(
|
|
213
|
+
pattern:str, # ast-grep pattern to search
|
|
214
|
+
path=".", # path to recursively search for files
|
|
215
|
+
lang="python" # language to search/scan
|
|
216
|
+
):
|
|
217
|
+
"Use the `ast-grep` command to find `pattern` in `path`"
|
|
218
|
+
import json, subprocess
|
|
219
|
+
cmd = f"ast-grep --pattern '{pattern}' --lang {lang} --json=compact"
|
|
220
|
+
if path != ".": cmd = f"cd {path} && {cmd}"
|
|
221
|
+
res = subprocess.run(cmd, shell=True, capture_output=True, text=True)
|
|
222
|
+
return json.loads(res.stdout) if res.stdout else res.stderr
|
|
223
|
+
|
|
204
224
|
# %% ../nbs/00_core.ipynb
|
|
205
225
|
def load_gist(gist_id:str):
|
|
206
226
|
"Retrieve a gist"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: dialoghelper
|
|
3
|
-
Version: 0.0.
|
|
3
|
+
Version: 0.0.32
|
|
4
4
|
Summary: Helper functions for solveit dialogs
|
|
5
5
|
Home-page: https://github.com/AnswerDotAI/dialoghelper
|
|
6
6
|
Author: Jeremy Howard
|
|
@@ -23,6 +23,8 @@ Requires-Dist: fastlite
|
|
|
23
23
|
Requires-Dist: ghapi
|
|
24
24
|
Requires-Dist: ipykernel-helper
|
|
25
25
|
Requires-Dist: claudette
|
|
26
|
+
Requires-Dist: ast-grep-cli
|
|
27
|
+
Requires-Dist: ast-grep-py
|
|
26
28
|
Provides-Extra: dev
|
|
27
29
|
Requires-Dist: python-fasthtml; extra == "dev"
|
|
28
30
|
Dynamic: author
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
[DEFAULT]
|
|
2
2
|
repo = dialoghelper
|
|
3
3
|
lib_name = dialoghelper
|
|
4
|
-
version = 0.0.
|
|
4
|
+
version = 0.0.32
|
|
5
5
|
min_python = 3.9
|
|
6
6
|
license = apache2
|
|
7
7
|
black_formatting = False
|
|
8
|
-
requirements = fastcore>=1.8.5 fastlite ghapi ipykernel-helper claudette
|
|
8
|
+
requirements = fastcore>=1.8.5 fastlite ghapi ipykernel-helper claudette ast-grep-cli ast-grep-py
|
|
9
9
|
dev_requirements = python-fasthtml
|
|
10
10
|
doc_path = _docs
|
|
11
11
|
lib_path = dialoghelper
|
|
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
|