diff --git a/src/_pytask/task_utils.py b/src/_pytask/task_utils.py index 59af53e..7432570 100644 --- a/src/_pytask/task_utils.py +++ b/src/_pytask/task_utils.py @@ -12,6 +12,7 @@ from _pytask.mark import Mark from _pytask.models import CollectionMetadata from _pytask.shared import find_duplicates from _pytask.typing import is_task_function +from _pytask.exceptions import CollectionError __all__ = [ @@ -94,7 +95,12 @@ def task( unwrapped = inspect.unwrap(func) - raw_path = inspect.getfile(unwrapped) + try: + raw_path = inspect.getfile(unwrapped) + except TypeError: + msg = "Builtin functions cannot be wrapped" + raise CollectionError(msg) from None + if "" in raw_path: path = Path(unwrapped.__globals__["__file__"]).absolute().resolve() else: