Repository: Avaiga/taipy
File: taipy/core/config/task_config.py (Python)

Code before:

    @property
    def input_configs(self) -> List[DataNodeConfig]:
        """The list of the input data node configurations."""
        return list(self._inputs)

    @property
    def inputs(self) -> List[DataNodeConfig]:
        """The list of the input data node configurations."""
        return list(self._inputs)

    @property
    def output_configs(self) -> List[DataNodeConfig]:
        """The list of the output data node configurations."""
        return list(self._outputs)

    @property
    def outputs(self) -> List[DataNodeConfig]:
        """The list of the output data node configurations."""
        return list(self._outputs)

    @property
    def scope(self) -> Scope:
        """The lowest scope of the task's data nodes.

        The lowest scope of input and output data node configurations or GLOBAL if there are
        either no input or no output configuration.
        """
        data_node_cfgs = list(self.inputs) + list(self.outputs)
        return Scope(min(dn.scope for dn in data_node_cfgs)) if len(data_node_cfgs) != 0 else Scope.GLOBAL

    @property
    def skippable(self) -> bool:
        """Indicates if the task can be skipped if no change has been made on inputs."""
        return _tpl._replace_templates(self._skippable)

    @classmethod
    def default_config(cls) -> "TaskConfig":
        """Get the default task configuration.

        Returns:
            The default task configuration.
        """
        return TaskConfig(cls._DEFAULT_KEY, None, [], [], False)

    def _clean(self) -> None:
        self.function = None
        self._inputs = []
        self._outputs = []
        self._skippable = False
        self._properties.clear()

Review comment (suggestion):
```suggestion
        The lowest scope of input and output data node configurations or GLOBAL if there is
```

Code after:

    @property
    def input_configs(self) -> List[DataNodeConfig]:
        """The list of the input data node configurations."""
        return list(self._inputs)

    @property
    def inputs(self) -> List[DataNodeConfig]:
        """The list of the input data node configurations."""
        return list(self._inputs)

    @property
    def output_configs(self) -> List[DataNodeConfig]:
        """The list of the output data node configurations."""
        return list(self._outputs)

    @property
    def outputs(self) -> List[DataNodeConfig]:
        """The list of the output data node configurations."""
        return list(self._outputs)

    @property
    def scope(self) -> Scope:
        """The lowest scope of the task's data nodes.

        The lowest scope of input and output data node configurations or GLOBAL if there is
        either no input or no output configuration.
        """
        data_node_cfgs = list(self.inputs) + list(self.outputs)
        return Scope(min(dn.scope for dn in data_node_cfgs)) if len(data_node_cfgs) != 0 else Scope.GLOBAL

    @property
    def skippable(self) -> bool:
        """Indicates if the task can be skipped if no change has been made on inputs."""
        return _tpl._replace_templates(self._skippable)

    @classmethod
    def default_config(cls) -> "TaskConfig":
        """Get the default task configuration.

        Returns:
            The default task configuration.
        """
        return TaskConfig(cls._DEFAULT_KEY, None, [], [], False)

    def _clean(self) -> None:
        self.function = None
        self._inputs = []
        self._outputs = []
        self._skippable = False
        self._properties.clear()