rpmdeps accepted multiple dependency selectors and printed their results as
one unlabeled stream, making combinations such as --provides --requires
ambiguous and unusable. The documented command form already treats these
selectors as operations, but the option parser stored each independently.

Collect selectors in a single ORed mode bitmask, reject missing or conflicting
operations before consuming input, and dispatch exactly one dependency class.
Preserve --rpmfcdebug and --alldeps behavior, and report a specific diagnostic
when no operation is supplied.

Add CLI regression coverage for every operation, repeated aliases, conflicts
between short and long operations, --alldeps conflicts, a missing operation,
and --version handling.

Fixes: #3931

Signed-off-by: Daan De Meyer <[email protected]>

You can view, comment on, or merge this pull request online at:

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

-- Commit Summary --

  * Make rpmdeps dependency selectors operations

-- File Changes --

    M tests/rpmdeps.at (65)
    M tools/CMakeLists.txt (2)
    M tools/rpmdeps.cc (116)

-- Patch Links --

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

-- 
Reply to this email directly or view it on GitHub:
https://github.com/rpm-software-management/rpm/pull/4275
You are receiving this because you are subscribed to this thread.

Message ID: <rpm-software-management/rpm/pull/[email protected]>
_______________________________________________
Rpm-maint mailing list
[email protected]
https://lists.rpm.org/mailman/listinfo/rpm-maint

Reply via email to