Skip to content

Commit

Permalink
fixing sucommands priorities
Browse files Browse the repository at this point in the history
  • Loading branch information
SandrineP committed Feb 5, 2025
1 parent e882ab6 commit baef54e
Show file tree
Hide file tree
Showing 3 changed files with 41 additions and 27 deletions.
57 changes: 36 additions & 21 deletions libmamba/src/api/list.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -216,7 +216,42 @@ namespace mamba
std::sort(packages.begin(), packages.end(), comparator);

// format and print output
if (options.explicit_)
if (options.revisions)
{
if (options.explicit_)
{
LOG_WARNING
<< "Option --explicit ignored because --revisions was also provided.";
}
if (options.canonical)
{
LOG_WARNING
<< "Option --canonical ignored because --revisions was also provided.";
}
if (options.export_)
{
LOG_WARNING
<< "Option --export ignored because --revisions was also provided.";
}
auto user_requests = prefix_data.history().get_user_requests();
for (auto r : user_requests)
{
if ((r.link_dists.size() > 0) || (r.unlink_dists.size() > 0))
{
std::cout << r.date << " (rev " << r.revision_num << ")" << std::endl;
for (auto ud : r.unlink_dists)
{
std::cout << "-" << ud << std::endl;
}
for (auto ld : r.link_dists)
{
std::cout << "+" << ld << std::endl;
}
std::cout << std::endl;
}
}
}
else if (options.explicit_)
{
if (options.canonical)
{
Expand Down Expand Up @@ -260,26 +295,6 @@ namespace mamba
std::cout << p.name << "=" << p.version << "=" << p.build_string << std::endl;
}
}
else if (options.revisions)
{
auto user_requests = prefix_data.history().get_user_requests();
for (auto r : user_requests)
{
if ((r.link_dists.size() > 0) || (r.unlink_dists.size() > 0))
{
std::cout << r.date << " (rev " << r.revision_num << ")" << std::endl;
for (auto ld : r.link_dists)
{
std::cout << "+ " << ld << std::endl;
}
for (auto ud : r.unlink_dists)
{
std::cout << "- " << ud << std::endl;
}
std::cout << std::endl;
}
}
}
else
{
auto requested_specs = prefix_data.history().get_requested_specs_map();
Expand Down
5 changes: 2 additions & 3 deletions libmamba/src/core/history.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -203,7 +203,7 @@ namespace mamba
std::vector<History::UserRequest> History::get_user_requests()
{
std::vector<UserRequest> res;
int i = 0;
int revision_num = 0;
for (const auto& el : parse())
{
UserRequest r;
Expand All @@ -226,8 +226,7 @@ namespace mamba
}
if ((r.link_dists.size() > 0) || (r.unlink_dists.size() > 0))
{
r.revision_num = i;
i += 1;
r.revision_num = revision_num++;
}
res.push_back(r);
}
Expand Down
6 changes: 3 additions & 3 deletions micromamba/src/list.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ init_list_parser(CLI::App* subcom, Configuration& config)

auto& explicit_ = config.insert(Configurable("explicit", false)
.group("cli")
.description("List explicitly all installed packages with URL."
.description("List explicitly all installed packages with URL. Ignored if --revisions is also provided."
));
subcom->add_flag("--explicit", explicit_.get_cli_config<bool>(), explicit_.description());

Expand All @@ -53,7 +53,7 @@ init_list_parser(CLI::App* subcom, Configuration& config)
auto& canonical = config.insert(
Configurable("canonical", false)
.group("cli")
.description("Output canonical names of packages only. Ignored if --explicit is also provided."
.description("Output canonical names of packages only. Ignored if --revisions or --explicit is also provided."
)
);
subcom->add_flag("-c,--canonical", canonical.get_cli_config<bool>(), canonical.description());
Expand All @@ -62,7 +62,7 @@ init_list_parser(CLI::App* subcom, Configuration& config)
Configurable("export", false)
.group("cli")
.description(
"Output explicit, machine-readable requirement strings instead of human-readable lists of packages. Ignored if --explicit or --canonical is also provided."
"Output explicit, machine-readable requirement strings instead of human-readable lists of packages. Ignored if --revisions, --explicit or --canonical is also provided."
)
);
subcom->add_flag("-e,--export", export_.get_cli_config<bool>(), export_.description());
Expand Down

0 comments on commit baef54e

Please sign in to comment.