From 00633151395808a2c8eadc2db67ecd0923504319 Mon Sep 17 00:00:00 2001 From: Mary Hipp Date: Wed, 26 Feb 2025 10:59:54 -0500 Subject: [PATCH] fix(api): add new args to all uses of get_all_board_image_names_for_board --- .../bulk_download/bulk_download_default.py | 6 +++++- invokeai/app/services/images/images_default.py | 8 ++++++-- invokeai/app/services/shared/invocation_context.py | 14 +++++++++++--- 3 files changed, 22 insertions(+), 6 deletions(-) diff --git a/invokeai/app/services/bulk_download/bulk_download_default.py b/invokeai/app/services/bulk_download/bulk_download_default.py index 4ebbd10d4f..bb1c06971a 100644 --- a/invokeai/app/services/bulk_download/bulk_download_default.py +++ b/invokeai/app/services/bulk_download/bulk_download_default.py @@ -63,7 +63,11 @@ class BulkDownloadService(BulkDownloadBase): return [self._invoker.services.images.get_dto(image_name) for image_name in image_names] def _board_handler(self, board_id: str) -> list[ImageDTO]: - image_names = self._invoker.services.board_image_records.get_all_board_image_names_for_board(board_id) + image_names = self._invoker.services.board_image_records.get_all_board_image_names_for_board( + board_id, + categories=None, + is_intermediate=None, + ) return self._image_handler(image_names) def generate_item_id(self, board_id: Optional[str]) -> str: diff --git a/invokeai/app/services/images/images_default.py b/invokeai/app/services/images/images_default.py index 15d950bab8..70f40e907c 100644 --- a/invokeai/app/services/images/images_default.py +++ b/invokeai/app/services/images/images_default.py @@ -265,7 +265,11 @@ class ImageService(ImageServiceABC): def delete_images_on_board(self, board_id: str): try: - image_names = self.__invoker.services.board_image_records.get_all_board_image_names_for_board(board_id) + image_names = self.__invoker.services.board_image_records.get_all_board_image_names_for_board( + board_id, + categories=None, + is_intermediate=None, + ) for image_name in image_names: self.__invoker.services.image_files.delete(image_name) self.__invoker.services.image_records.delete_many(image_names) @@ -278,7 +282,7 @@ class ImageService(ImageServiceABC): self.__invoker.services.logger.error("Failed to delete image files") raise except Exception as e: - self.__invoker.services.logger.error("Problem deleting image records and files") + self.__invoker.services.logger.error(f"Problem deleting image records and files: {str(e)}") raise e def delete_intermediates(self) -> int: diff --git a/invokeai/app/services/shared/invocation_context.py b/invokeai/app/services/shared/invocation_context.py index 721934cecb..443587ad37 100644 --- a/invokeai/app/services/shared/invocation_context.py +++ b/invokeai/app/services/shared/invocation_context.py @@ -9,6 +9,7 @@ from torch import Tensor from invokeai.app.invocations.constants import IMAGE_MODES from invokeai.app.invocations.fields import MetadataField, WithBoard, WithMetadata +from invokeai.app.services.board_records.board_records_common import BoardRecordOrderBy from invokeai.app.services.boards.boards_common import BoardDTO from invokeai.app.services.config.config_default import InvokeAIAppConfig from invokeai.app.services.image_records.image_records_common import ImageCategory, ResourceOrigin @@ -16,6 +17,7 @@ from invokeai.app.services.images.images_common import ImageDTO from invokeai.app.services.invocation_services import InvocationServices from invokeai.app.services.model_records.model_records_base import UnknownModelException from invokeai.app.services.session_processor.session_processor_common import ProgressImage +from invokeai.app.services.shared.sqlite.sqlite_common import SQLiteDirection from invokeai.app.util.step_callback import flux_step_callback, stable_diffusion_step_callback from invokeai.backend.model_manager.config import ( AnyModel, @@ -102,7 +104,9 @@ class BoardsInterface(InvocationContextInterface): Returns: A list of all boards. """ - return self._services.boards.get_all() + return self._services.boards.get_all( + order_by=BoardRecordOrderBy.CreatedAt, direction=SQLiteDirection.Descending + ) def add_image_to_board(self, board_id: str, image_name: str) -> None: """Adds an image to a board. @@ -122,7 +126,11 @@ class BoardsInterface(InvocationContextInterface): Returns: A list of all image names for the board. """ - return self._services.board_images.get_all_board_image_names_for_board(board_id) + return self._services.board_images.get_all_board_image_names_for_board( + board_id, + categories=None, + is_intermediate=None, + ) class LoggerInterface(InvocationContextInterface): @@ -283,7 +291,7 @@ class ImagesInterface(InvocationContextInterface): Returns: The local path of the image or thumbnail. """ - return self._services.images.get_path(image_name, thumbnail) + return Path(self._services.images.get_path(image_name, thumbnail)) class TensorsInterface(InvocationContextInterface):