From f89ac56ef0ee7a349e0389913a510ba194022e95 Mon Sep 17 00:00:00 2001 From: Pavla Kratochvilova Date: Thu, 23 May 2019 14:32:32 +0200 Subject: [PATCH 1/2] Print the whole alias definition in case of infinite recursion (RhBug:1680488) https://bugzilla.redhat.com/show_bug.cgi?id=1680488 --- dnf/cli/commands/alias.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/dnf/cli/commands/alias.py b/dnf/cli/commands/alias.py index 10f58867ca..d3e6e4326e 100644 --- a/dnf/cli/commands/alias.py +++ b/dnf/cli/commands/alias.py @@ -151,7 +151,8 @@ def list_alias(self, cmd): try: args = self.aliases_base._resolve(args) except dnf.exceptions.Error as e: - logger.error(_('%s, alias %s'), e, cmd) + logger.error( + _('%s, alias %s="%s"'), e, cmd, (' ').join(self.aliases_base.aliases[cmd])) else: print(_("Alias %s='%s'") % (cmd, " ".join(args))) From ccd4213da366d49f6f84847fa2ccdb890d257930 Mon Sep 17 00:00:00 2001 From: Pavla Kratochvilova Date: Thu, 23 May 2019 14:39:19 +0200 Subject: [PATCH 2/2] [doc] Document aliases behavior in case of infinite recursion (RhBug:1680488) https://bugzilla.redhat.com/show_bug.cgi?id=1680488 --- doc/command_ref.rst | 2 ++ 1 file changed, 2 insertions(+) diff --git a/doc/command_ref.rst b/doc/command_ref.rst index ba22453055..ab72b66f8f 100644 --- a/doc/command_ref.rst +++ b/doc/command_ref.rst @@ -423,6 +423,8 @@ To use an alias (name=value), the name must be placed as the first "command" (e. that is not an option). It is then replaced by its value and the resulting sequence is again searched for aliases. The alias processing stops when the first found command is not a name of any alias. +In case the processing would result in an infinite recursion, the original arguments are used instead. + Also, like in shell aliases, if the result starts with a ``\``, the alias processing will stop. All aliases are defined in configuration files in the ``/etc/dnf/aliases.d/`` directory in the [aliases] section,