Return type mismatch in repo.submodule_update()
Hello everyone! repo.submodule_update is annotated to return an Iterator[Submodule] (and I hoped it might return an iterator of modified modules or something similar).
| def submodule_update(self, *args: Any, **kwargs: Any) -> Iterator[Submodule]: | |
| """Update the submodules, keeping the repository consistent as it will | |
| take the previous state into consideration. | |
| :note: | |
| For more information, please see the documentation of | |
| :meth:`RootModule.update <git.objects.submodule.root.RootModule.update>`. | |
| """ | |
| return RootModule(self).update(*args, **kwargs) |
However, RootModule.update just returns self (type RootModule):
| def update( # type: ignore[override] | |
| self, | |
| previous_commit: Union[Commit_ish, str, None] = None, | |
| recursive: bool = True, | |
| force_remove: bool = False, | |
| init: bool = True, | |
| to_latest_revision: bool = False, | |
| progress: Union[None, "RootUpdateProgress"] = None, | |
| dry_run: bool = False, | |
| force_reset: bool = False, | |
| keep_going: bool = False, | |
| ) -> "RootModule": |