diff --git a/src/cargo/ops/tree/format/mod.rs b/src/cargo/ops/tree/format/mod.rs index c1d8892c831..eef9cba1f77 100644 --- a/src/cargo/ops/tree/format/mod.rs +++ b/src/cargo/ops/tree/format/mod.rs @@ -66,7 +66,18 @@ impl<'a> fmt::Display for Display<'a> { match chunk { Chunk::Raw(s) => fmt.write_str(s)?, Chunk::Package => { - write!(fmt, "{} v{}", package.name(), package.version())?; + let proc_macro_suffix = if package.proc_macro() { + " (proc-macro)" + } else { + "" + }; + write!( + fmt, + "{} v{}{}", + package.name(), + package.version(), + proc_macro_suffix + )?; let source_id = package.package_id().source_id(); if !source_id.is_default_registry() { diff --git a/tests/testsuite/tree.rs b/tests/testsuite/tree.rs index 9d3ded9888c..f88194256b1 100644 --- a/tests/testsuite/tree.rs +++ b/tests/testsuite/tree.rs @@ -379,7 +379,7 @@ fn filters_target() { "\ foo v0.1.0 ([..]/foo) ├── hostdep v1.0.0 -└── pm_host v1.0.0 +└── pm_host v1.0.0 (proc-macro) [build-dependencies] └── build_host_dep v1.0.0 └── hostdep v1.0.0 @@ -392,7 +392,7 @@ foo v0.1.0 ([..]/foo) .with_stdout( "\ foo v0.1.0 ([..]/foo) -├── pm_target v1.0.0 +├── pm_target v1.0.0 (proc-macro) └── targetdep v1.0.0 [build-dependencies] └── build_host_dep v1.0.0 @@ -409,7 +409,7 @@ foo v0.1.0 ([..]/foo) "\ foo v0.1.0 ([..]/foo) ├── hostdep v1.0.0 -└── pm_host v1.0.0 +└── pm_host v1.0.0 (proc-macro) [build-dependencies] └── build_host_dep v1.0.0 └── hostdep v1.0.0 @@ -422,8 +422,8 @@ foo v0.1.0 ([..]/foo) "\ foo v0.1.0 ([..]/foo) ├── hostdep v1.0.0 -├── pm_host v1.0.0 -├── pm_target v1.0.0 +├── pm_host v1.0.0 (proc-macro) +├── pm_target v1.0.0 (proc-macro) └── targetdep v1.0.0 [build-dependencies] ├── build_host_dep v1.0.0 @@ -1211,7 +1211,7 @@ fn proc_macro_features() { .with_stdout( "\ foo v0.1.0 ([..]/foo) -├── pm v1.0.0 +├── pm v1.0.0 (proc-macro) │ └── somedep v1.0.0 │ └── optdep v1.0.0 └── somedep v1.0.0 (*) @@ -1225,7 +1225,7 @@ foo v0.1.0 ([..]/foo) .with_stdout( "\ foo v0.1.0 ([..]/foo) -├── pm v1.0.0 +├── pm v1.0.0 (proc-macro) │ └── somedep v1.0.0 │ └── optdep v1.0.0 └── somedep v1.0.0 @@ -1261,7 +1261,7 @@ somedep v1.0.0 "\ somedep v1.0.0 ├── foo v0.1.0 ([..]/foo) -└── pm v1.0.0 +└── pm v1.0.0 (proc-macro) └── foo v0.1.0 ([..]/foo) ", ) @@ -1275,7 +1275,7 @@ somedep v1.0.0 └── foo v0.1.0 ([..]/foo) somedep v1.0.0 -└── pm v1.0.0 +└── pm v1.0.0 (proc-macro) └── foo v0.1.0 ([..]/foo) ", )