nbdev 2.4.5__py3-none-any.whl → 2.4.7__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.
- nbdev/__init__.py +1 -1
- nbdev/_modidx.py +0 -28
- nbdev/cli.py +9 -2
- nbdev/export.py +1 -1
- nbdev/process.py +1 -1
- nbdev/quarto.py +1 -1
- nbdev/release.py +6 -2
- nbdev/showdoc.py +6 -148
- {nbdev-2.4.5.dist-info → nbdev-2.4.7.dist-info}/METADATA +2 -2
- {nbdev-2.4.5.dist-info → nbdev-2.4.7.dist-info}/RECORD +14 -14
- {nbdev-2.4.5.dist-info → nbdev-2.4.7.dist-info}/WHEEL +0 -0
- {nbdev-2.4.5.dist-info → nbdev-2.4.7.dist-info}/entry_points.txt +0 -0
- {nbdev-2.4.5.dist-info → nbdev-2.4.7.dist-info}/licenses/LICENSE +0 -0
- {nbdev-2.4.5.dist-info → nbdev-2.4.7.dist-info}/top_level.txt +0 -0
nbdev/__init__.py
CHANGED
nbdev/_modidx.py
CHANGED
|
@@ -322,37 +322,9 @@ d = { 'settings': { 'branch': 'main',
|
|
|
322
322
|
'nbdev.showdoc.BasicMarkdownRenderer': ('api/showdoc.html#basicmarkdownrenderer', 'nbdev/showdoc.py'),
|
|
323
323
|
'nbdev.showdoc.BasicMarkdownRenderer._repr_markdown_': ( 'api/showdoc.html#basicmarkdownrenderer._repr_markdown_',
|
|
324
324
|
'nbdev/showdoc.py'),
|
|
325
|
-
'nbdev.showdoc.DocmentTbl': ('api/showdoc.html#docmenttbl', 'nbdev/showdoc.py'),
|
|
326
|
-
'nbdev.showdoc.DocmentTbl.__eq__': ('api/showdoc.html#docmenttbl.__eq__', 'nbdev/showdoc.py'),
|
|
327
|
-
'nbdev.showdoc.DocmentTbl.__init__': ('api/showdoc.html#docmenttbl.__init__', 'nbdev/showdoc.py'),
|
|
328
|
-
'nbdev.showdoc.DocmentTbl._columns': ('api/showdoc.html#docmenttbl._columns', 'nbdev/showdoc.py'),
|
|
329
|
-
'nbdev.showdoc.DocmentTbl._hdr_list': ('api/showdoc.html#docmenttbl._hdr_list', 'nbdev/showdoc.py'),
|
|
330
|
-
'nbdev.showdoc.DocmentTbl._repr_markdown_': ( 'api/showdoc.html#docmenttbl._repr_markdown_',
|
|
331
|
-
'nbdev/showdoc.py'),
|
|
332
|
-
'nbdev.showdoc.DocmentTbl._row': ('api/showdoc.html#docmenttbl._row', 'nbdev/showdoc.py'),
|
|
333
|
-
'nbdev.showdoc.DocmentTbl._row_list': ('api/showdoc.html#docmenttbl._row_list', 'nbdev/showdoc.py'),
|
|
334
|
-
'nbdev.showdoc.DocmentTbl.has_docment': ('api/showdoc.html#docmenttbl.has_docment', 'nbdev/showdoc.py'),
|
|
335
|
-
'nbdev.showdoc.DocmentTbl.has_return': ('api/showdoc.html#docmenttbl.has_return', 'nbdev/showdoc.py'),
|
|
336
|
-
'nbdev.showdoc.DocmentTbl.hdr_str': ('api/showdoc.html#docmenttbl.hdr_str', 'nbdev/showdoc.py'),
|
|
337
|
-
'nbdev.showdoc.DocmentTbl.params_str': ('api/showdoc.html#docmenttbl.params_str', 'nbdev/showdoc.py'),
|
|
338
|
-
'nbdev.showdoc.DocmentTbl.return_str': ('api/showdoc.html#docmenttbl.return_str', 'nbdev/showdoc.py'),
|
|
339
|
-
'nbdev.showdoc.ShowDocRenderer': ('api/showdoc.html#showdocrenderer', 'nbdev/showdoc.py'),
|
|
340
|
-
'nbdev.showdoc.ShowDocRenderer.__init__': ('api/showdoc.html#showdocrenderer.__init__', 'nbdev/showdoc.py'),
|
|
341
|
-
'nbdev.showdoc._bold': ('api/showdoc.html#_bold', 'nbdev/showdoc.py'),
|
|
342
325
|
'nbdev.showdoc._create_html_table': ('api/showdoc.html#_create_html_table', 'nbdev/showdoc.py'),
|
|
343
|
-
'nbdev.showdoc._docstring': ('api/showdoc.html#_docstring', 'nbdev/showdoc.py'),
|
|
344
|
-
'nbdev.showdoc._escape_markdown': ('api/showdoc.html#_escape_markdown', 'nbdev/showdoc.py'),
|
|
345
326
|
'nbdev.showdoc._ext_link': ('api/showdoc.html#_ext_link', 'nbdev/showdoc.py'),
|
|
346
|
-
'nbdev.showdoc._f_name': ('api/showdoc.html#_f_name', 'nbdev/showdoc.py'),
|
|
347
|
-
'nbdev.showdoc._fmt_anno': ('api/showdoc.html#_fmt_anno', 'nbdev/showdoc.py'),
|
|
348
|
-
'nbdev.showdoc._fmt_sig': ('api/showdoc.html#_fmt_sig', 'nbdev/showdoc.py'),
|
|
349
|
-
'nbdev.showdoc._fullname': ('api/showdoc.html#_fullname', 'nbdev/showdoc.py'),
|
|
350
327
|
'nbdev.showdoc._html_link': ('api/showdoc.html#_html_link', 'nbdev/showdoc.py'),
|
|
351
|
-
'nbdev.showdoc._list2row': ('api/showdoc.html#_list2row', 'nbdev/showdoc.py'),
|
|
352
|
-
'nbdev.showdoc._maybe_nm': ('api/showdoc.html#_maybe_nm', 'nbdev/showdoc.py'),
|
|
353
|
-
'nbdev.showdoc._non_empty_keys': ('api/showdoc.html#_non_empty_keys', 'nbdev/showdoc.py'),
|
|
354
|
-
'nbdev.showdoc._show_param': ('api/showdoc.html#_show_param', 'nbdev/showdoc.py'),
|
|
355
|
-
'nbdev.showdoc._wrap_sig': ('api/showdoc.html#_wrap_sig', 'nbdev/showdoc.py'),
|
|
356
328
|
'nbdev.showdoc.colab_link': ('api/showdoc.html#colab_link', 'nbdev/showdoc.py'),
|
|
357
329
|
'nbdev.showdoc.doc': ('api/showdoc.html#doc', 'nbdev/showdoc.py'),
|
|
358
330
|
'nbdev.showdoc.show_doc': ('api/showdoc.html#show_doc', 'nbdev/showdoc.py'),
|
nbdev/cli.py
CHANGED
|
@@ -101,7 +101,8 @@ def nbdev_new(**kwargs):
|
|
|
101
101
|
if tag is None:
|
|
102
102
|
with warnings.catch_warnings():
|
|
103
103
|
warnings.simplefilter('ignore', UserWarning)
|
|
104
|
-
tag = GhApi(gh_host='https://api.github.com', authenticate=False
|
|
104
|
+
tag = GhApi(gh_host='https://api.github.com', authenticate=False
|
|
105
|
+
).repos.get_latest_release(org_or_usr, repo).tag_name
|
|
105
106
|
|
|
106
107
|
url = f"https://github.com/{org_or_usr}/{repo}/archive/{tag}.tar.gz"
|
|
107
108
|
extract_tgz(url)
|
|
@@ -184,10 +185,16 @@ def watch_export(nbs:str=None, # Nb directory to watch for changes
|
|
|
184
185
|
lib = lib or (cfg.lib_path if cfg else '.')
|
|
185
186
|
if cfg and (nbs != cfg.nbs_path or lib != cfg.lib_path) and not force:
|
|
186
187
|
raise ValueError("In nbdev project. Use --force to override config.")
|
|
188
|
+
run(f'nbdev_export')
|
|
187
189
|
def _export(e,lib=lib):
|
|
188
190
|
p = e.src_path
|
|
189
191
|
if (not '.ipynb_checkpoints' in p and p.endswith('.ipynb') and not Path(p).name.startswith('.~')):
|
|
190
|
-
if e.event_type == 'modified':
|
|
192
|
+
if e.event_type == 'modified':
|
|
193
|
+
time.sleep(0.1)
|
|
194
|
+
try: run(f'nb_export --lib_path {lib} "{p}"')
|
|
195
|
+
except IOError:
|
|
196
|
+
time.sleep(0.3)
|
|
197
|
+
run(f'nb_export --lib_path {lib} "{p}"')
|
|
191
198
|
with fs_watchdog(_export, nbs):
|
|
192
199
|
while True: time.sleep(1)
|
|
193
200
|
|
nbdev/export.py
CHANGED
|
@@ -85,7 +85,7 @@ def nb_export(nbname:str, # Filename of notebook
|
|
|
85
85
|
all_cells = exp.in_all[mod]
|
|
86
86
|
nm = ifnone(name, getattr(exp, 'default_exp', None) if mod=='#' else mod)
|
|
87
87
|
if not nm:
|
|
88
|
-
warn(f"Notebook '{nbname}' uses `#|export` without `#|default_exp` cell.\n"
|
|
88
|
+
warn(f"Notebook '{nbname}' uses `#| export` without `#| default_exp` cell.\n"
|
|
89
89
|
"Note nbdev2 no longer supports nbdev1 syntax. Run `nbdev_migrate` to upgrade.\n"
|
|
90
90
|
"See https://nbdev.fast.ai/getting_started.html for more information.")
|
|
91
91
|
return
|
nbdev/process.py
CHANGED
|
@@ -35,7 +35,7 @@ def _quarto_re(lang=None): return re.compile(_dir_pre(lang) + r'\s*[\w|-]+\s*:')
|
|
|
35
35
|
# %% ../nbs/api/03_process.ipynb
|
|
36
36
|
def _directive(s, lang='python'):
|
|
37
37
|
s = re.sub('^'+_dir_pre(lang), f"{langs[lang]}|", s)
|
|
38
|
-
if s.strip().endswith(':'): s = s.replace(':', '') # You can append colon at the end to be Quarto compliant. Ex: #|hide:
|
|
38
|
+
if s.strip().endswith(':'): s = s.replace(':', '') # You can append colon at the end to be Quarto compliant. Ex: #| hide:
|
|
39
39
|
if ':' in s: s = s.replace(':', ': ')
|
|
40
40
|
s = (s.strip()[2:]).strip().split()
|
|
41
41
|
if not s: return None
|
nbdev/quarto.py
CHANGED
nbdev/release.py
CHANGED
|
@@ -12,6 +12,7 @@ from fastcore.all import *
|
|
|
12
12
|
from ghapi.core import *
|
|
13
13
|
|
|
14
14
|
from datetime import datetime
|
|
15
|
+
from packaging.version import Version
|
|
15
16
|
import shutil,subprocess
|
|
16
17
|
|
|
17
18
|
from .doclinks import *
|
|
@@ -71,8 +72,11 @@ def changelog(self:Release,
|
|
|
71
72
|
"Create the CHANGELOG.md file, or return the proposed text if `debug` is `True`"
|
|
72
73
|
if not self.changefile.exists(): self.changefile.write_text("# Release notes\n\n<!-- do not remove -->\n")
|
|
73
74
|
marker = '<!-- do not remove -->\n'
|
|
74
|
-
try: self.commit_date = self.gh.repos.get_latest_release().published_at
|
|
75
|
-
except HTTP404NotFoundError: self.commit_date = '2000-01-01T00:00:004Z'
|
|
75
|
+
try: self.commit_date = (lr:=self.gh.repos.get_latest_release()).published_at
|
|
76
|
+
except HTTP404NotFoundError: lr,self.commit_date = None,'2000-01-01T00:00:004Z'
|
|
77
|
+
if lr and (Version(self.cfg.version) <= Version(lr.tag_name)):
|
|
78
|
+
print(f'Error: Version bump required: expected: >{lr.tag_name}, got: {self.cfg.version}.')
|
|
79
|
+
raise SystemExit(1)
|
|
76
80
|
res = f"\n## {self.cfg.version}\n"
|
|
77
81
|
issues = self._issue_groups()
|
|
78
82
|
res += '\n'.join(_issues_txt(*o) for o in zip(issues, self.groups.values()))
|
nbdev/showdoc.py
CHANGED
|
@@ -17,152 +17,12 @@ from textwrap import fill
|
|
|
17
17
|
from types import FunctionType
|
|
18
18
|
|
|
19
19
|
# %% auto 0
|
|
20
|
-
__all__ = ['
|
|
21
|
-
'colab_link']
|
|
22
|
-
|
|
23
|
-
# %% ../nbs/api/08_showdoc.ipynb
|
|
24
|
-
def _non_empty_keys(d:dict): return L([k for k,v in d.items() if v != inspect._empty])
|
|
25
|
-
def _bold(s): return f'**{s}**' if s.strip() else s
|
|
26
|
-
|
|
27
|
-
# %% ../nbs/api/08_showdoc.ipynb
|
|
28
|
-
def _escape_markdown(s):
|
|
29
|
-
for c in '|^': s = re.sub(rf'\\?\{c}', rf'\{c}', s)
|
|
30
|
-
return s.replace('\n', '<br>')
|
|
31
|
-
|
|
32
|
-
# %% ../nbs/api/08_showdoc.ipynb
|
|
33
|
-
def _maybe_nm(o):
|
|
34
|
-
if (o == inspect._empty): return ''
|
|
35
|
-
else: return o.__name__ if hasattr(o, '__name__') else _escape_markdown(str(o))
|
|
36
|
-
|
|
37
|
-
# %% ../nbs/api/08_showdoc.ipynb
|
|
38
|
-
def _list2row(l:list): return '| '+' | '.join([_maybe_nm(o) for o in l]) + ' |'
|
|
39
|
-
|
|
40
|
-
# %% ../nbs/api/08_showdoc.ipynb
|
|
41
|
-
class DocmentTbl:
|
|
42
|
-
# this is the column order we want these items to appear
|
|
43
|
-
_map = OrderedDict({'anno':'Type', 'default':'Default', 'docment':'Details'})
|
|
44
|
-
|
|
45
|
-
def __init__(self, obj, verbose=True, returns=True):
|
|
46
|
-
"Compute the docment table string"
|
|
47
|
-
self.verbose = verbose
|
|
48
|
-
self.returns = False if isdataclass(obj) else returns
|
|
49
|
-
try: self.params = L(signature_ex(obj, eval_str=True).parameters.keys())
|
|
50
|
-
except (ValueError,TypeError): self.params=[]
|
|
51
|
-
try: _dm = docments(obj, full=True, returns=returns)
|
|
52
|
-
except: _dm = {}
|
|
53
|
-
if 'self' in _dm: del _dm['self']
|
|
54
|
-
for d in _dm.values(): d['docment'] = ifnone(d['docment'], inspect._empty)
|
|
55
|
-
self.dm = _dm
|
|
56
|
-
|
|
57
|
-
@property
|
|
58
|
-
def _columns(self):
|
|
59
|
-
"Compute the set of fields that have at least one non-empty value so we don't show tables empty columns"
|
|
60
|
-
cols = set(flatten(L(self.dm.values()).filter().map(_non_empty_keys)))
|
|
61
|
-
candidates = self._map if self.verbose else {'docment': 'Details'}
|
|
62
|
-
return OrderedDict({k:v for k,v in candidates.items() if k in cols})
|
|
63
|
-
|
|
64
|
-
@property
|
|
65
|
-
def has_docment(self): return 'docment' in self._columns and self._row_list
|
|
66
|
-
|
|
67
|
-
@property
|
|
68
|
-
def has_return(self): return self.returns and bool(_non_empty_keys(self.dm.get('return', {})))
|
|
69
|
-
|
|
70
|
-
def _row(self, nm, props):
|
|
71
|
-
"unpack data for single row to correspond with column names."
|
|
72
|
-
return [nm] + [props[c] for c in self._columns]
|
|
73
|
-
|
|
74
|
-
@property
|
|
75
|
-
def _row_list(self):
|
|
76
|
-
"unpack data for all rows."
|
|
77
|
-
ordered_params = [(p, self.dm[p]) for p in self.params if p != 'self' and p in self.dm]
|
|
78
|
-
return L([self._row(nm, props) for nm,props in ordered_params])
|
|
79
|
-
|
|
80
|
-
@property
|
|
81
|
-
def _hdr_list(self): return [' '] + [_bold(l) for l in L(self._columns.values())]
|
|
82
|
-
|
|
83
|
-
@property
|
|
84
|
-
def hdr_str(self):
|
|
85
|
-
"The markdown string for the header portion of the table"
|
|
86
|
-
md = _list2row(self._hdr_list)
|
|
87
|
-
return md + '\n' + _list2row(['-' * len(l) for l in self._hdr_list])
|
|
88
|
-
|
|
89
|
-
@property
|
|
90
|
-
def params_str(self):
|
|
91
|
-
"The markdown string for the parameters portion of the table."
|
|
92
|
-
return '\n'.join(self._row_list.map(_list2row))
|
|
93
|
-
|
|
94
|
-
@property
|
|
95
|
-
def return_str(self):
|
|
96
|
-
"The markdown string for the returns portion of the table."
|
|
97
|
-
return _list2row(['**Returns**']+[_bold(_maybe_nm(self.dm['return'][c])) for c in self._columns])
|
|
98
|
-
|
|
99
|
-
def _repr_markdown_(self):
|
|
100
|
-
if not self.has_docment: return ''
|
|
101
|
-
_tbl = [self.hdr_str, self.params_str]
|
|
102
|
-
if self.has_return: _tbl.append(self.return_str)
|
|
103
|
-
return '\n'.join(_tbl)
|
|
104
|
-
|
|
105
|
-
def __eq__(self,other): return self.__str__() == str(other).strip()
|
|
106
|
-
|
|
107
|
-
__str__ = _repr_markdown_
|
|
108
|
-
__repr__ = basic_repr()
|
|
109
|
-
|
|
110
|
-
# %% ../nbs/api/08_showdoc.ipynb
|
|
111
|
-
def _docstring(sym):
|
|
112
|
-
npdoc = parse_docstring(sym)
|
|
113
|
-
return '\n\n'.join([npdoc['Summary'], npdoc['Extended']]).strip()
|
|
114
|
-
|
|
115
|
-
# %% ../nbs/api/08_showdoc.ipynb
|
|
116
|
-
def _fullname(o):
|
|
117
|
-
module,name = getattr(o, "__module__", None),qual_name(o)
|
|
118
|
-
return name if module is None or module in ('__main__','builtins') else module + '.' + name
|
|
119
|
-
|
|
120
|
-
class ShowDocRenderer:
|
|
121
|
-
def __init__(self, sym, name:str|None=None, title_level:int=3):
|
|
122
|
-
"Show documentation for `sym`"
|
|
123
|
-
sym = getattr(sym, '__wrapped__', sym)
|
|
124
|
-
sym = getattr(sym, 'fget', None) or getattr(sym, 'fset', None) or sym
|
|
125
|
-
store_attr()
|
|
126
|
-
self.nm = name or qual_name(sym)
|
|
127
|
-
self.isfunc = inspect.isfunction(sym)
|
|
128
|
-
try: self.sig = signature_ex(sym, eval_str=True)
|
|
129
|
-
except (ValueError,TypeError): self.sig = None
|
|
130
|
-
self.docs = _docstring(sym)
|
|
131
|
-
self.dm = DocmentTbl(sym)
|
|
132
|
-
self.fn = _fullname(sym)
|
|
133
|
-
|
|
134
|
-
__repr__ = basic_repr()
|
|
135
|
-
|
|
136
|
-
# %% ../nbs/api/08_showdoc.ipynb
|
|
137
|
-
def _f_name(o): return f'<function {o.__name__}>' if isinstance(o, FunctionType) else None
|
|
138
|
-
def _fmt_anno(o): return inspect.formatannotation(o).strip("'").replace(' ','')
|
|
139
|
-
|
|
140
|
-
def _show_param(param):
|
|
141
|
-
"Like `Parameter.__str__` except removes: quotes in annos, spaces, ids in reprs"
|
|
142
|
-
kind,res,anno,default = param.kind,param._name,param._annotation,param._default
|
|
143
|
-
kind = '*' if kind==inspect._VAR_POSITIONAL else '**' if kind==inspect._VAR_KEYWORD else ''
|
|
144
|
-
res = kind+res
|
|
145
|
-
if anno is not inspect._empty: res += f':{_f_name(anno) or _fmt_anno(anno)}'
|
|
146
|
-
if default is not inspect._empty: res += f'={_f_name(default) or repr(default)}'
|
|
147
|
-
return res
|
|
148
|
-
|
|
149
|
-
# %% ../nbs/api/08_showdoc.ipynb
|
|
150
|
-
def _fmt_sig(sig):
|
|
151
|
-
if sig is None: return ''
|
|
152
|
-
p = {k:v for k,v in sig.parameters.items()}
|
|
153
|
-
_params = [_show_param(p[k]) for k in p.keys() if k != 'self']
|
|
154
|
-
return "(" + ', '.join(_params) + ")"
|
|
155
|
-
|
|
156
|
-
def _wrap_sig(s):
|
|
157
|
-
"wrap a signature to appear on multiple lines if necessary."
|
|
158
|
-
pad = '> ' + ' ' * 5
|
|
159
|
-
indent = pad + ' ' * (s.find('(') + 1)
|
|
160
|
-
return fill(s, width=80, initial_indent=pad, subsequent_indent=indent)
|
|
20
|
+
__all__ = ['BasicMarkdownRenderer', 'show_doc', 'BasicHtmlRenderer', 'doc', 'showdoc_nm', 'colab_link']
|
|
161
21
|
|
|
162
22
|
# %% ../nbs/api/08_showdoc.ipynb
|
|
163
23
|
def _ext_link(url, txt, xtra=""): return f'[{txt}]({url}){{target="_blank" {xtra}}}'
|
|
164
24
|
|
|
165
|
-
class BasicMarkdownRenderer(
|
|
25
|
+
class BasicMarkdownRenderer(MarkdownRenderer):
|
|
166
26
|
"Markdown renderer for `show_doc`"
|
|
167
27
|
def _repr_markdown_(self):
|
|
168
28
|
doc = '---\n\n'
|
|
@@ -170,12 +30,7 @@ class BasicMarkdownRenderer(ShowDocRenderer):
|
|
|
170
30
|
if src: doc += _ext_link(src, 'source', 'style="float:right; font-size:smaller"') + '\n\n'
|
|
171
31
|
h = '#'*self.title_level
|
|
172
32
|
doc += f'{h} {self.nm}\n\n'
|
|
173
|
-
|
|
174
|
-
doc += f'{sig}'
|
|
175
|
-
if self.docs: doc += f"\n\n*{self.docs}*"
|
|
176
|
-
if self.dm.has_docment: doc += f"\n\n{self.dm}"
|
|
177
|
-
return doc
|
|
178
|
-
__repr__=__str__=_repr_markdown_
|
|
33
|
+
return doc+super()._repr_markdown_()
|
|
179
34
|
|
|
180
35
|
# %% ../nbs/api/08_showdoc.ipynb
|
|
181
36
|
def show_doc(sym, # Symbol to document
|
|
@@ -212,6 +67,9 @@ def _create_html_table(table_str):
|
|
|
212
67
|
# %% ../nbs/api/08_showdoc.ipynb
|
|
213
68
|
def _html_link(url, txt): return f'<a href="{url}" target="_blank" rel="noreferrer noopener">{txt}</a>'
|
|
214
69
|
|
|
70
|
+
# %% ../nbs/api/08_showdoc.ipynb
|
|
71
|
+
from fastcore.docments import _fmt_sig
|
|
72
|
+
|
|
215
73
|
# %% ../nbs/api/08_showdoc.ipynb
|
|
216
74
|
class BasicHtmlRenderer(ShowDocRenderer):
|
|
217
75
|
"HTML renderer for `show_doc`"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: nbdev
|
|
3
|
-
Version: 2.4.
|
|
3
|
+
Version: 2.4.7
|
|
4
4
|
Summary: Create delightful software with Jupyter Notebooks
|
|
5
5
|
Home-page: https://github.com/AnswerDotAI/nbdev
|
|
6
6
|
Author: Jeremy Howard and Hamel Husain
|
|
@@ -20,7 +20,7 @@ Requires-Python: >=3.9
|
|
|
20
20
|
Description-Content-Type: text/markdown
|
|
21
21
|
License-File: LICENSE
|
|
22
22
|
Requires-Dist: packaging
|
|
23
|
-
Requires-Dist: fastcore>=1.8.
|
|
23
|
+
Requires-Dist: fastcore>=1.8.14
|
|
24
24
|
Requires-Dist: execnb>=0.1.12
|
|
25
25
|
Requires-Dist: astunparse
|
|
26
26
|
Requires-Dist: ghapi>=1.0.3
|
|
@@ -1,29 +1,29 @@
|
|
|
1
|
-
nbdev/__init__.py,sha256=
|
|
2
|
-
nbdev/_modidx.py,sha256=
|
|
1
|
+
nbdev/__init__.py,sha256=k8PqZXyhMIr2bBA7eM1zhU-7em7N71-3TfUexz0K5kw,89
|
|
2
|
+
nbdev/_modidx.py,sha256=BfgR7f-ldpvdkhDERRHVIaylijQiqdaHrr3471zZ6Vw,38262
|
|
3
3
|
nbdev/clean.py,sha256=Ge3Hke1c1ArJ9-6P-Z11dXUfnQ7ZrYRnHHXPTAbJG4I,9412
|
|
4
|
-
nbdev/cli.py,sha256=
|
|
4
|
+
nbdev/cli.py,sha256=RK85JOKHFsXBNycSFSRe3juqxb4TZv31TQQkwS5c4ng,7338
|
|
5
5
|
nbdev/config.py,sha256=KmPAtLwsX819gA7TVJ40v-B4ok978b79pbqMF5WnAJE,13500
|
|
6
6
|
nbdev/doclinks.py,sha256=fDnlqKaRHCBCS1CVbmqhGNsiaKeEMF2hS-pNFHc8JYE,12632
|
|
7
|
-
nbdev/export.py,sha256=
|
|
7
|
+
nbdev/export.py,sha256=y3AmFyAZ6gNYDMmxgIooyLkvjx02xU9DDaT0Wur00i8,4061
|
|
8
8
|
nbdev/extract_attachments.py,sha256=O4mS4EFIOXL_yQ3jmsnBStrWxGR_nPNvxLYXHtLeimw,2208
|
|
9
9
|
nbdev/frontmatter.py,sha256=i195bhDLWd-WUEzQT9JBoA4Ee3j6gD1dKMT8yk5fF4Y,2761
|
|
10
10
|
nbdev/imports.py,sha256=f5Ynco14hsJyFCf43-uP_YARMhHADe6lM-20Mc_vXhw,95
|
|
11
11
|
nbdev/maker.py,sha256=oDs5jOZBcGWRcj6hy7zhKpSfASZqQrni_d8pIjDmFYE,9859
|
|
12
12
|
nbdev/merge.py,sha256=xmT7LMY_mQGOGl0ynqkB13M6HwJfUOTis1Xl--YDXR8,4341
|
|
13
13
|
nbdev/migrate.py,sha256=YJTtWC6TPaZpZTcD0Jex6stOSumjju2QrUozF9rvl0Y,7311
|
|
14
|
-
nbdev/process.py,sha256=
|
|
14
|
+
nbdev/process.py,sha256=NZlJnGaEoDMNAROktBNbW5BAqX_tMyPOcDF5rP5HeZg,5854
|
|
15
15
|
nbdev/processors.py,sha256=fS4WrowC8bi6sFJJUVA9r9IRgmk-gffrJ9zNfb7vpIM,11973
|
|
16
16
|
nbdev/qmd.py,sha256=VAxE-c1sT7y26VdyreB6j9fge-CuLbHWocRE_WbnYXg,2994
|
|
17
|
-
nbdev/quarto.py,sha256=
|
|
18
|
-
nbdev/release.py,sha256=
|
|
17
|
+
nbdev/quarto.py,sha256=NIgOE_6ykluU5_a5dyGzB_eo8Wl3dEF4FF-h5zaCvTc,13817
|
|
18
|
+
nbdev/release.py,sha256=6Ql-rZQYqNf7cBZw8jNsnm_p3Gdkr41vC20HGZqQVr8,14555
|
|
19
19
|
nbdev/serve.py,sha256=HcYoNQiSROdMS1J8YlOlyTya-LmmrR-8v3ho5D9g700,3146
|
|
20
20
|
nbdev/serve_drv.py,sha256=IZ2acem_KKsXYYe0iUECiR_orkYLBkT1ZG_258ZS7SQ,657
|
|
21
|
-
nbdev/showdoc.py,sha256=
|
|
21
|
+
nbdev/showdoc.py,sha256=TQCjFYjNmKNz8Evq-HtzWKtjDdWKol5tEw5tWVGVzwk,4357
|
|
22
22
|
nbdev/sync.py,sha256=ld-lSOmlX1FdnTOzaSHcxKyIuIguI_SpluqfPSH2BZ8,3201
|
|
23
23
|
nbdev/test.py,sha256=_ECBd5fvfGEICIfkTI2S8w8YatL5CaPltCeDSsiH6yw,4435
|
|
24
|
-
nbdev-2.4.
|
|
25
|
-
nbdev-2.4.
|
|
26
|
-
nbdev-2.4.
|
|
27
|
-
nbdev-2.4.
|
|
28
|
-
nbdev-2.4.
|
|
29
|
-
nbdev-2.4.
|
|
24
|
+
nbdev-2.4.7.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
|
|
25
|
+
nbdev-2.4.7.dist-info/METADATA,sha256=_7Z--WdQaG63zMrljQrvdoxKSyiKkDO4NyZ0XdL3a08,10805
|
|
26
|
+
nbdev-2.4.7.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
27
|
+
nbdev-2.4.7.dist-info/entry_points.txt,sha256=1ADLbIIJxZeLgOD8NpizkPULSsd_fgUQxwAkbGk45b8,1453
|
|
28
|
+
nbdev-2.4.7.dist-info/top_level.txt,sha256=3cWYLMuaXsZjz3TQRGEkWGs9Z8ieEDmYcq8TZS3y3vU,6
|
|
29
|
+
nbdev-2.4.7.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|