File tree Expand file tree Collapse file tree 2 files changed +6
-4
lines changed Expand file tree Collapse file tree 2 files changed +6
-4
lines changed Original file line number Diff line number Diff line change 1
1
from argparse import ArgumentParser
2
2
from pathlib import Path
3
3
from typing import Protocol
4
+ import nbformat
4
5
5
6
from .core import Preludes , execute
7
+ from .types import Notebook
6
8
7
9
8
10
def load_preludes (d : Path ) -> Preludes :
@@ -27,5 +29,6 @@ def parse_args(argv: list[str] | None = None) -> Args:
27
29
def main (argv : list [str ] | None = None ) -> None :
28
30
args = parse_args (argv )
29
31
preludes = load_preludes (args .preludes )
30
- for nb in args .nb_path .rglob ("*.ipynb" ):
32
+ for nb_path in args .nb_path .rglob ("*.ipynb" ):
33
+ nb : Notebook = nbformat .reads (nb_path .read_text (), 4 )
31
34
execute (nb , cwd = args .nb_path , preludes = preludes )
Original file line number Diff line number Diff line change 5
5
from jupyter_client .manager import KernelManager
6
6
from nbclient import NotebookClient
7
7
from nbclient .util import ensure_async
8
- from nbformat import NotebookNode
9
8
10
9
from .types import CodeCell , Notebook
11
10
@@ -35,13 +34,13 @@ async def on_cell_execute(cell: CodeCell, cell_index: int) -> None:
35
34
36
35
37
36
def execute (
38
- nb : NotebookNode ,
37
+ nb : Notebook ,
39
38
preludes : Preludes ,
40
39
* ,
41
40
cwd : Path | None = None ,
42
41
km : KernelManager | None = None ,
43
42
** kwargs : Any ,
44
- ) -> NotebookNode :
43
+ ) -> Notebook :
45
44
"""Execute a notebook's code, updating outputs within the notebook object."""
46
45
resources = {}
47
46
if cwd is not None :
You can’t perform that action at this time.
0 commit comments