diff options
Diffstat (limited to 'src/clients/cave/cmd_report.cc')
-rw-r--r-- | src/clients/cave/cmd_report.cc | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/clients/cave/cmd_report.cc b/src/clients/cave/cmd_report.cc index 526f63009..e25c87a09 100644 --- a/src/clients/cave/cmd_report.cc +++ b/src/clients/cave/cmd_report.cc @@ -250,6 +250,23 @@ ReportCommand::run( } } + auto superiors((*env)[selection::BestVersionOnly(( + generator::Matches(make_package_dep_spec({ }) + .package((*i)->name()) + .version_requirement(make_named_values<VersionRequirement>( + n::version_operator() = vo_greater, + n::version_spec() = (*i)->version())), + nullptr, { })) | + filter::SameSlot(*i) | + filter::NotMasked() | + filter::SupportsAction<InstallAction>())]); + + if (! superiors->empty()) + { + need_heading(done_heading, *i); + cout << fuc(fs_package_not_best(), fv<'s'>(stringify(**superiors->begin()))); + } + if (done_heading) errors = true; } |