From 5b8ae6ed1a452e758720791382f1cd104c90de24 Mon Sep 17 00:00:00 2001 From: "J. Nick Koston" Date: Tue, 22 Jul 2025 19:20:28 -1000 Subject: [PATCH] update script --- script/ci-custom.py | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/script/ci-custom.py b/script/ci-custom.py index 1172c7152f..e726fcefc0 100755 --- a/script/ci-custom.py +++ b/script/ci-custom.py @@ -575,13 +575,15 @@ def lint_namespace(fname, content): expected_name = re.match( r"^esphome/components/([^/]+)/.*", fname.replace(os.path.sep, "/") ).group(1) - search = f"namespace {expected_name}" - if search in content: + # Check for both old style and C++17 nested namespace syntax + search_old = f"namespace {expected_name}" + search_new = f"namespace esphome::{expected_name}" + if search_old in content or search_new in content: return None return ( "Invalid namespace found in C++ file. All integration C++ files should put all " "functions in a separate namespace that matches the integration's name. " - f"Please make sure the file contains {highlight(search)}" + f"Please make sure the file contains {highlight(search_old)} or {highlight(search_new)}" )