From 7e8f67061460daa70de72054c94168493010b673 Mon Sep 17 00:00:00 2001 From: Roberto Pastor Muela <37798125+RobPasMue@users.noreply.github.com> Date: Thu, 17 Jul 2025 13:50:29 +0200 Subject: [PATCH 1/3] feat: removing cached_property for bodies --- src/ansys/geometry/core/designer/body.py | 1 - src/ansys/geometry/core/designer/component.py | 12 ++---------- src/ansys/geometry/core/designer/design.py | 1 - 3 files changed, 2 insertions(+), 12 deletions(-) diff --git a/src/ansys/geometry/core/designer/body.py b/src/ansys/geometry/core/designer/body.py index c40589f5fd..bb35ef16cf 100644 --- a/src/ansys/geometry/core/designer/body.py +++ b/src/ansys/geometry/core/designer/body.py @@ -1254,7 +1254,6 @@ def copy(self, parent: "Component", name: str = None) -> "Body": # noqa: D102 response.get("master_id"), copy_name, self._grpc_client, is_surface=self.is_surface ) parent._master_component.part.bodies.append(tb) - parent._clear_cached_bodies() body_id = f"{parent.id}/{tb.id}" if parent.parent_component else tb.id return Body(body_id, response.get("name"), parent, tb) diff --git a/src/ansys/geometry/core/designer/component.py b/src/ansys/geometry/core/designer/component.py index 767672c757..11bd642273 100644 --- a/src/ansys/geometry/core/designer/component.py +++ b/src/ansys/geometry/core/designer/component.py @@ -251,11 +251,6 @@ def __init__( self._master_component.occurrences.append(self) - def _clear_cached_bodies(self) -> None: - """Clear the cached bodies.""" - if "bodies" in self.__dict__: - del self.__dict__["bodies"] - @property def id(self) -> str: """ID of the component.""" @@ -305,14 +300,13 @@ def components(self) -> list["Component"]: """List of ``Component`` objects inside of the component.""" return self._components - @cached_property + @property def bodies(self) -> list[Body]: """List of ``Body`` objects inside of the component.""" bodies = [] for body in self._master_component.part.bodies: - id = f"{self.id}/{body.id}" if self.parent_component else body.id if body.is_alive: - bodies.append(Body(id, body.name, self, body)) + bodies.append(Body(f"{self.id}/{body.id}" if self.parent_component else body.id, body.name, self, body)) return bodies @property @@ -539,7 +533,6 @@ def __build_body_from_response(self, response: dict) -> Body: is_surface=response["is_surface"], ) self._master_component.part.bodies.append(tb) - self._clear_cached_bodies() return Body(response["id"], response["name"], self, tb) @check_input_types @@ -1335,7 +1328,6 @@ def delete_body(self, body: Body | str) -> None: # on the client side body_requested._is_alive = False self._grpc_client.log.debug(f"Body {body_requested.id} has been deleted.") - self._clear_cached_bodies() else: self._grpc_client.log.warning( f"Body {id} is not found in this component (or subcomponents)." diff --git a/src/ansys/geometry/core/designer/design.py b/src/ansys/geometry/core/designer/design.py index 0c08334022..6367a461f0 100644 --- a/src/ansys/geometry/core/designer/design.py +++ b/src/ansys/geometry/core/designer/design.py @@ -1247,7 +1247,6 @@ def _update_design_inplace(self) -> None: # https://github.com/ansys/pyansys-geometry/issues/1319 # self._components = [] - self._clear_cached_bodies() self._materials = [] self._named_selections = {} self._coordinate_systems = {} From c1d49fbaad52fdae864281dccf3911285495536c Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Thu, 17 Jul 2025 11:52:22 +0000 Subject: [PATCH 2/3] chore: auto fixes from pre-commit hooks --- src/ansys/geometry/core/designer/component.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/ansys/geometry/core/designer/component.py b/src/ansys/geometry/core/designer/component.py index 11bd642273..d8fbe3d33e 100644 --- a/src/ansys/geometry/core/designer/component.py +++ b/src/ansys/geometry/core/designer/component.py @@ -22,7 +22,6 @@ """Provides for managing components.""" from enum import Enum, unique -from functools import cached_property from typing import TYPE_CHECKING, Any, Optional, Union import uuid @@ -306,7 +305,14 @@ def bodies(self) -> list[Body]: bodies = [] for body in self._master_component.part.bodies: if body.is_alive: - bodies.append(Body(f"{self.id}/{body.id}" if self.parent_component else body.id, body.name, self, body)) + bodies.append( + Body( + f"{self.id}/{body.id}" if self.parent_component else body.id, + body.name, + self, + body, + ) + ) return bodies @property From a29b1c10748e66d27d79d16fa7ee3f08ee88ab54 Mon Sep 17 00:00:00 2001 From: pyansys-ci-bot <92810346+pyansys-ci-bot@users.noreply.github.com> Date: Thu, 17 Jul 2025 11:53:27 +0000 Subject: [PATCH 3/3] chore: adding changelog file 2122.added.md [dependabot-skip] --- doc/changelog.d/2122.added.md | 1 + 1 file changed, 1 insertion(+) create mode 100644 doc/changelog.d/2122.added.md diff --git a/doc/changelog.d/2122.added.md b/doc/changelog.d/2122.added.md new file mode 100644 index 0000000000..8e0824d437 --- /dev/null +++ b/doc/changelog.d/2122.added.md @@ -0,0 +1 @@ +Removing cached_property for bodies \ No newline at end of file