Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 3 additions & 2 deletions gitlab_submodule/gitlab_submodule.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,13 @@
from gitlab.v4.objects import Project, ProjectManager

from gitlab_submodule.objects import Submodule, Subproject
from gitlab_submodule.read_gitmodules import list_project_submodules
from gitlab_submodule.read_gitmodules import list_project_submodules, iterate_project_submodules
from gitlab_submodule.submodule_to_project import submodule_to_project
from gitlab_submodule.submodule_commit import get_submodule_commit


list_submodules = list_project_submodules
iterate_submodules = iterate_project_submodules


def _get_project_manager(
Expand Down Expand Up @@ -50,7 +51,7 @@ def iterate_subprojects(
get_latest_commit_possible_if_not_found: bool = False,
get_latest_commit_possible_ref: Optional[str] = None
) -> Generator[Subproject, None, None]:
for gitmodules_submodule in list_project_submodules(project, ref):
for gitmodules_submodule in iterate_project_submodules(project, ref):
try:
yield submodule_to_subproject(
gitmodules_submodule,
Expand Down
8 changes: 4 additions & 4 deletions gitlab_submodule/read_gitmodules.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,10 +10,10 @@
def list_project_submodules(
project: Project,
ref: Optional[str] = None) -> List[Submodule]:
return list(_get_project_submodules(project, ref))
return list(iterate_project_submodules(project, ref))


def _get_project_submodules(
def iterate_project_submodules(
project: Project,
ref: Optional[str] = None) -> Iterable[Submodule]:
gitmodules_file_content = _get_gitmodules_file_content(project, ref)
Expand Down Expand Up @@ -41,7 +41,7 @@ def _get_gitmodules_file_content(project: Project,


def _read_gitmodules_file_content(
gitmodules_file_content: str) -> List[Tuple[str, str, str]]:
gitmodules_file_content: str) -> Iterable[Tuple[str, str, str]]:
"""Some basic regex extractions to parse content of .gitmodules file
"""
name_regex = r'\[submodule "([a-zA-Z0-9\.\-/_]+)"\]'
Expand All @@ -52,4 +52,4 @@ def _read_gitmodules_file_content(
urls = re.findall(url_regex, gitmodules_file_content)
if not (len(names) == len(paths) == len(urls)):
raise RuntimeError('Failed parsing the .gitmodules content')
return list(zip(names, urls, paths))
return zip(names, urls, paths)