From c8c00c8f5ff93398279af219fd540158a1a674ba Mon Sep 17 00:00:00 2001 From: Jarrod Johnson Date: Mon, 8 Jun 2026 09:19:04 -0400 Subject: [PATCH] Update to ast.Constant Python removed ast.Num in 3.14 --- confluent_server/aiohmi/ipmi/oem/lenovo/config.py | 4 ++-- confluent_server/confluent/config/configmanager.py | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/confluent_server/aiohmi/ipmi/oem/lenovo/config.py b/confluent_server/aiohmi/ipmi/oem/lenovo/config.py index 1e5a54a9..32177f6c 100644 --- a/confluent_server/aiohmi/ipmi/oem/lenovo/config.py +++ b/confluent_server/aiohmi/ipmi/oem/lenovo/config.py @@ -107,8 +107,8 @@ class _ExpEngine(object): elif isinstance(parsed.ops[0], ast.Eq): return self.process(parsed.left) == self.process( parsed.comparators[0]) - if isinstance(parsed, ast.Num): - return parsed.n + if isinstance(parsed, ast.Constant) and isinstance(parsed.value, (int, float)): + return parsed.value if isinstance(parsed, ast.Attribute): category = parsed.value.id setting = parsed.attr diff --git a/confluent_server/confluent/config/configmanager.py b/confluent_server/confluent/config/configmanager.py index 6fb90170..49d1e8cc 100644 --- a/confluent_server/confluent/config/configmanager.py +++ b/confluent_server/confluent/config/configmanager.py @@ -1179,8 +1179,8 @@ class _ExpressionFormat(string.Formatter): return formatted def _handle_ast_node(self, node): - if isinstance(node, ast.Num): - return node.n + if isinstance(node, ast.Constant) and isinstance(node.value, (int, float)): + return node.value elif isinstance(node, ast.Attribute): #ok, we have something with a dot left = node