Skip to content

Conversation

@mitchellwrosen
Copy link
Member

@mitchellwrosen mitchellwrosen commented Nov 5, 2025

Overview

This PR swaps out the naive implementation of diff.branch foo bar when foo and bar either don't share a history at all (in which case we treat foo as the LCA), or when the LCA is either foo or bar (a fast-forward).

Previously, we'd simply not bother to compare the LCA causal to either branch, and proceed to do a lot of unnecessary work in the case that it matches one of them. Now, we are careful to avoid any duplicate work (loading definitions, computing syntactic hashes, etc).

Test coverage

There's an existing transcript for this feature. I also tested manually at the command line.

@mitchellwrosen mitchellwrosen changed the base branch from trunk to 25-11-04-difftool November 7, 2025 17:00
Base automatically changed from 25-11-04-difftool to trunk November 8, 2025 00:05
@mitchellwrosen mitchellwrosen marked this pull request as ready for review November 10, 2025 16:55
@aryairani aryairani merged commit 6e59c0a into trunk Nov 10, 2025
31 checks passed
@aryairani aryairani deleted the 25-11-05-difftool branch November 10, 2025 17:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants