summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorruki <[email protected]>2026-04-20 22:48:50 +0800
committerruki <[email protected]>2026-04-20 22:48:50 +0800
commit4e3f6b16db88b9c1afad898a7f5dfeaecdfd0f27 (patch)
tree6822b239d43091d20037a99b6ffa9fd7e449f1db
parent9897b3063e72ce1489d21398c17e8e81af7ee92e (diff)
improve output
-rw-r--r--xmake/modules/private/action/require/depgraph.lua18
1 files changed, 15 insertions, 3 deletions
diff --git a/xmake/modules/private/action/require/depgraph.lua b/xmake/modules/private/action/require/depgraph.lua
index 46a1a8a7f..e022bdee4 100644
--- a/xmake/modules/private/action/require/depgraph.lua
+++ b/xmake/modules/private/action/require/depgraph.lua
@@ -108,10 +108,22 @@ function _print_dep_tree(packages_map, name, prefix, expanded)
local connector = is_last and "\\-- " or "|-- "
local next_prefix = prefix .. (is_last and " " or "| ")
local dep_entry = packages_map[dep]
- local dep_deps = dep_entry and dep_entry.deps or {}
local suffix = dep_entry and _format_package_suffix(dep_entry) or ""
- if expanded[dep] and #dep_deps > 0 then
- cprint("%s%s${color.dump.reference}%s${clear}${dim}%s (*)${clear}", prefix, connector, dep, suffix)
+ if expanded[dep] then
+ -- already expanded, show with (*) and list direct children as references
+ local dep_deps = dep_entry and dep_entry.deps or {}
+ if #dep_deps > 0 then
+ cprint("%s%s${color.dump.reference}%s${clear}${dim}%s${clear}", prefix, connector, dep, suffix)
+ for j, subdep in ipairs(dep_deps) do
+ local sub_is_last = (j == #dep_deps)
+ local sub_connector = sub_is_last and "\\-- " or "|-- "
+ local sub_entry = packages_map[subdep]
+ local sub_suffix = sub_entry and _format_package_suffix(sub_entry) or ""
+ cprint("%s%s${dim}%s%s (*)${clear}", next_prefix, sub_connector, subdep, sub_suffix)
+ end
+ else
+ cprint("%s%s${color.dump.reference}%s${clear}${dim}%s (*)${clear}", prefix, connector, dep, suffix)
+ end
else
cprint("%s%s${color.dump.reference}%s${clear}${dim}%s${clear}", prefix, connector, dep, suffix)
_print_dep_tree(packages_map, dep, next_prefix, expanded)