From c66ca8d726c039441b9628fd3bf5cdff7a8052f9 Mon Sep 17 00:00:00 2001 From: Quratulain-bilal Date: Tue, 4 Aug 2026 01:26:52 +0500 Subject: [PATCH] fix: replace print() with logger.warning() in presets catalog warning Print to stderr is inappropriate for library code. Replaced with logger.warning() for proper log management. Removed unused sys import. --- src/specify_cli/presets/__init__.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/specify_cli/presets/__init__.py b/src/specify_cli/presets/__init__.py index cc5308f3fc..5867541bbb 100644 --- a/src/specify_cli/presets/__init__.py +++ b/src/specify_cli/presets/__init__.py @@ -10,6 +10,7 @@ import copy import json import hashlib +import logging import os import tempfile import shutil @@ -54,6 +55,8 @@ verify_archive_sha256, ) +logger = logging.getLogger(__name__) + _CONSTITUTION_PROVENANCE_FILE = ".constitution-template.json" @@ -4256,18 +4259,15 @@ def get_active_catalogs(self) -> List[PresetCatalogEntry]: Raises: PresetValidationError: If a catalog URL is invalid """ - import sys - # 1. SPECKIT_PRESET_CATALOG_URL env var replaces all defaults if env_value := os.environ.get("SPECKIT_PRESET_CATALOG_URL"): catalog_url = env_value.strip() self._validate_catalog_url(catalog_url) if catalog_url != self.DEFAULT_CATALOG_URL: if not getattr(self, "_non_default_catalog_warning_shown", False): - print( - "Warning: Using non-default preset catalog. " + logger.warning( + "Using non-default preset catalog. " "Only use catalogs from sources you trust.", - file=sys.stderr, ) self._non_default_catalog_warning_shown = True return [PresetCatalogEntry(url=catalog_url, name="custom", priority=1, install_allowed=True, description="Custom catalog via SPECKIT_PRESET_CATALOG_URL")]