Some builtin macros have their own special meaning for ! and ? which is 
inconsistent with the general meaning of those. This is confusing, bad and 
conflicts with the goal of making builtins more like normal macros.

This changes %{verbose} to return a simple boolean that can be used in an 
expression, and drops support for undocumented conditional %{?load:...} which 
can be avoided by using newly added boolean %{exists:...} instead. Also drop 
support for undocumented %{!trace} syntax to disable tracing, we can easily add 
some other syntax to support that if necessary. 

With that, builtin macros have no special syntaxes left, eliminate the internal 
arguments.
You can view, comment on, or merge this pull request online at:

  https://github.com/rpm-software-management/rpm/pull/1421

-- Commit Summary --

  * Change builtin %{verbose:...} to return a simple 0/1 boolean
  * Add %{exists:...} builtin macro for testing file existence
  * Drop undocumented special conditional syntax from %{load:...} builtin
  * Drop support for undocumented %{!trace} builtin syntax
  * Lose now unnecessary chkexist and negate arguments to builtin macros

-- File Changes --

    M doc/manual/macros.md (4)
    M macros.in (2)
    M rpmio/macro.c (84)
    M tests/rpmmacro.at (45)

-- Patch Links --

https://github.com/rpm-software-management/rpm/pull/1421.patch
https://github.com/rpm-software-management/rpm/pull/1421.diff

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/rpm-software-management/rpm/pull/1421
_______________________________________________
Rpm-maint mailing list
Rpm-maint@lists.rpm.org
http://lists.rpm.org/mailman/listinfo/rpm-maint

Reply via email to