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
2 changes: 1 addition & 1 deletion src/kapla/__init__.py
Original file line number Diff line number Diff line change
@@ -1 +1 @@
__version__ = "0.35.0"
__version__ = "0.36.0"
25 changes: 9 additions & 16 deletions src/kapla/projects/kproject.py
Original file line number Diff line number Diff line change
Expand Up @@ -314,32 +314,25 @@ def _process_extras_and_groups(
for group_name, group_dependencies in self.spec.extras.items():
groups[group_name] = Group(dependencies={})
extras[group_name] = []
visited: Set[str] = set()
# A dependency can get added to dev group while still being in the in the main dependencies
# example: if it's a dependency of a dev dependency, or if it has been listed both as a main
# and a dev dependency by mistake. In that case, it will not be installed with the main dependencies.
# We add all the main dependencies to the visited set to avoid adding them again
visited: Set[str] = set(self.get_dependencies_names(include_extras=False))
for dep in group_dependencies:
if isinstance(dep, str):
dep_items = [(dep, None)] if isinstance(dep, str) else dep.items()
for dep_name, value in dep_items:
self._add_dependency_to_group(
dep,
dep_name,
group_name,
dependencies,
extras,
groups,
constraints,
lock_versions,
visited,
value,
)
else:
for key, value in dep.items():
self._add_dependency_to_group(
key,
group_name,
dependencies,
extras,
groups,
constraints,
lock_versions,
visited,
value,
)

def _add_dependency_to_group(
self,
Expand Down
2 changes: 1 addition & 1 deletion src/kapla/specs/kproject.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
class DockerImageSpec(AliasedModel):
name: str
template: Optional[str] = None
build_args: Optional[Dict[str, str]] = None # specific build_arg for this image
build_args: Optional[Dict[str, str]] = None # specific build_arg for this image


class DockerSpec(AliasedModel):
Expand Down