11"""ESMValtool task definition."""
22
3+ from __future__ import annotations
4+
35import abc
46import contextlib
57import datetime
@@ -283,7 +285,7 @@ def flatten(self):
283285 tasks .add (self )
284286 return tasks
285287
286- def run (self , input_files = None ):
288+ def run (self , input_files : list [ str ] | None = None ) -> None :
287289 """Run task."""
288290 if not self .output_files :
289291 if input_files is None :
@@ -308,7 +310,7 @@ def run(self, input_files=None):
308310 return self .output_files
309311
310312 @abc .abstractmethod
311- def _run (self , input_files ) :
313+ def _run (self , input_files : list [ str ]) -> list [ str ] :
312314 """Run task."""
313315
314316 def get_product_attributes (self ) -> dict :
@@ -362,7 +364,7 @@ def __init__(self, prev_preproc_dir, preproc_dir, name):
362364
363365 super ().__init__ (ancestors = None , name = name , products = products )
364366
365- def _run (self , _ ) :
367+ def _run (self , _ : list [ str ]) -> list [ str ] :
366368 """Return the result of a previous run."""
367369 metadata = self .get_product_attributes ()
368370
@@ -810,11 +812,11 @@ def available_cpu_count() -> int:
810812class TaskSet (set ):
811813 """Container for tasks."""
812814
813- def flatten (self ) -> " TaskSet" :
815+ def flatten (self ) -> TaskSet :
814816 """Flatten the list of tasks."""
815817 return TaskSet (t for task in self for t in task .flatten ())
816818
817- def get_independent (self ) -> " TaskSet" :
819+ def get_independent (self ) -> TaskSet :
818820 """Return a set of independent tasks."""
819821 independent_tasks = TaskSet ()
820822 all_tasks = self .flatten ()
0 commit comments