@@ -22,6 +22,7 @@ use tracing::instrument;
2222
2323use crate :: cli_util:: CommandHelper ;
2424use crate :: cli_util:: RevisionArg ;
25+ use crate :: cli_util:: print_unmatched_explicit_paths;
2526use crate :: cli_util:: print_updated_commits;
2627use crate :: command_error:: CommandError ;
2728use crate :: complete;
@@ -81,14 +82,20 @@ pub(crate) fn cmd_absorb(
8182 . parse_union_revsets ( ui, & args. into ) ?
8283 . resolve ( ) ?;
8384
84- let matcher = workspace_command
85- . parse_file_patterns ( ui, & args. paths ) ?
86- . to_matcher ( ) ;
85+ let fileset_expression = workspace_command. parse_file_patterns ( ui, & args. paths ) ?;
86+ let matcher = fileset_expression. to_matcher ( ) ;
8787
8888 let repo = workspace_command. repo ( ) . as_ref ( ) ;
89- let source = AbsorbSource :: from_commit ( repo, source_commit) ?;
89+ let source = AbsorbSource :: from_commit ( repo, source_commit. clone ( ) ) ?;
9090 let selected_trees = split_hunks_to_trees ( repo, & source, & destinations, & matcher) . block_on ( ) ?;
9191
92+ print_unmatched_explicit_paths (
93+ ui,
94+ & workspace_command,
95+ & fileset_expression,
96+ [ & source_commit. tree ( ) ?] ,
97+ ) ?;
98+
9299 let path_converter = workspace_command. path_converter ( ) ;
93100 for ( path, reason) in selected_trees. skipped_paths {
94101 let ui_path = path_converter. format_file_path ( & path) ;
0 commit comments