Collecting tasks#
If you want to inspect your project and see a summary of all the tasks, you can use the
pytask collect
command.
Let us take the following task.
# Content of task_module.py
from pathlib import Path
def task_write_file(
input_path: Path = Path("in.txt"), output_path: Path = Path("out.txt")
) -> None:
output_path.write_text(input_path.read_text())
Now, running pytask collect
will produce the following output.
$ pytask
──────────────────────────── Start pytask session ────────────────────────────
Platform: win32 -- Python <span style="color: var(--termynal-blue)">3.10.0</span>, pytask <span style="color: var(--termynal-blue)">0.4.0</span>, pluggy <span style="color: var(--termynal-blue)">1.0.0</span>
Root: C:\Users\pytask-dev\git\my_project
Collected <span style="color: var(--termynal-blue)">1</span> task.
Collected tasks:
└── 🐍 <Module task_module.py>
└── 📝 <Function <span class="termynal-dim">task_module.py::</span>task_write_file>
──────────────────────────────────────────────────────────────────────────────
If you want to have more information regarding the dependencies and products of the
task, append the pytask collect --nodes
flag.
$ pytask
──────────────────────────── Start pytask session ────────────────────────────
Platform: win32 -- Python <span style="color: var(--termynal-blue)">3.10.0</span>, pytask <span style="color: var(--termynal-blue)">0.4.0</span>, pluggy <span style="color: var(--termynal-blue)">1.0.0</span>
Root: C:\Users\pytask-dev\git\my_project
Collected <span style="color: var(--termynal-blue)">1</span> task.
Collected tasks:
└── 🐍 <Module task_module.py>
└── 📝 <Function <span class="termynal-dim">task_module.py::</span>task_write_file>
├── 📄 <Dependency my_project/in.txt>
└── 📄 <Product my_project/out.txt>
──────────────────────────────────────────────────────────────────────────────
To restrict the set of tasks you are looking at, use markers, expressions and ignore patterns as usual.