forked from mirrors/jj
cli: status: only scan through mutable changes to find conflicts
Fixes #3628
This commit is contained in:
parent
19563fee74
commit
b67e198cde
2 changed files with 6 additions and 0 deletions
|
@ -15,6 +15,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|||
|
||||
### Fixed bugs
|
||||
|
||||
* `jj status` no longer scans through the entire history to look for ancestors with conflicts.
|
||||
|
||||
## [0.17.0] - 2024-05-01
|
||||
|
||||
### Breaking changes
|
||||
|
|
|
@ -21,6 +21,7 @@ use tracing::instrument;
|
|||
use crate::cli_util::{print_conflicted_paths, CommandHelper};
|
||||
use crate::command_error::CommandError;
|
||||
use crate::diff_util;
|
||||
use crate::revset_util;
|
||||
use crate::ui::Ui;
|
||||
|
||||
/// Show high-level repo status
|
||||
|
@ -98,6 +99,9 @@ pub(crate) fn cmd_status(
|
|||
let ancestors_conflicts = RevsetExpression::filter(RevsetFilterPredicate::HasConflict)
|
||||
.intersection(&wc_revset.ancestors())
|
||||
.minus(&wc_revset)
|
||||
.minus(&revset_util::parse_immutable_expression(
|
||||
&workspace_command.revset_parse_context(),
|
||||
)?)
|
||||
.evaluate_programmatic(repo.as_ref())?
|
||||
.iter()
|
||||
.collect();
|
||||
|
|
Loading…
Reference in a new issue