From 502181f471b85deb258f3b6bc42f7315784e6106 Mon Sep 17 00:00:00 2001 From: Alexey Shabalin Date: Tue, 23 Dec 2025 05:54:21 +0300 Subject: [PATCH] Treat macro level -14 as MACROFILES for ALT Linux rpm 4.13.0.1 bug --- specfile/macros.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/specfile/macros.py b/specfile/macros.py index 39084f6..e6ef762 100644 --- a/specfile/macros.py +++ b/specfile/macros.py @@ -27,6 +27,13 @@ class MacroLevel(IntEnum): OLDSPEC = -1 GLOBAL = 0 + @classmethod + def _missing_(cls, value: object) -> Optional["MacroLevel"]: + # ALT Linux uses old rpm 4.13.0.1 with a pushMacro(level - 1) bug. + if value == -14: + return cls.MACROFILES + return None + class Macro(collections.abc.Hashable): """