git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH 5/7] diff.c: add a blocks mode for moved code detection

From
JTJonathan Tan <jonathantanmy@google.com>
Date
Apr 24, 2018, 21:50 UTC
Message-ID
<20180424145050.e0ad29d4f304216441656057@google.com>
In-Reply-To
<20180424210330.87861-6-sbeller@google.com>

On Tue, 24 Apr 2018 14:03:28 -0700 Stefan Beller <sbeller@google.com> wrote:

> Suggested-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
>  (https://public-inbox.org/git/87o9j0uljo.fsf@evledraar.gmail.com/)
> Signed-off-by: Stefan Beller <sbeller@google.com>

Firstly, I don't know if this is the right solution- as written in the linked e-mail [1], the issue might be more that the config conflates 2 unrelated things, not that a certain intersection is missing.

[1] https://public-inbox.org/git/87muykuij7.fsf@evledraar.gmail.com/
Optional: Probably better to put the link inline, instead of in the
trailer.
Show 9 quoted lines
> -test_expect_success 'detect permutations inside moved code -- dimmed_zebra' '
> +test_expect_success 'detect blocks of moved code' '
>  	git reset --hard &&
>  	cat <<-\EOF >lines.txt &&
>  		long line 1
> @@ -1271,6 +1271,52 @@ test_expect_success 'detect permutations inside moved code -- dimmed_zebra' '
>  	test_config color.diff.newMovedDimmed "normal cyan" &&
>  	test_config color.diff.oldMovedAlternativeDimmed "normal blue" &&
>  	test_config color.diff.newMovedAlternativeDimmed "normal yellow" &&

Add a comment here explaining that these colors do not appear in the output, but merely set to recognizable values to ensure that they do not appear in the output.

Show 35 quoted lines
> +
> +	git diff HEAD --no-renames --color-moved=blocks --color |
> +		grep -v "index" |
> +		test_decode_color >actual &&
> +	cat <<-\EOF >expected &&
> +	<BOLD>diff --git a/lines.txt b/lines.txt<RESET>
> +	<BOLD>--- a/lines.txt<RESET>
> +	<BOLD>+++ b/lines.txt<RESET>
> +	<CYAN>@@ -1,16 +1,16 @@<RESET>
> +	<MAGENTA>-long line 1<RESET>
> +	<MAGENTA>-long line 2<RESET>
> +	<MAGENTA>-long line 3<RESET>
> +	 line 4<RESET>
> +	 line 5<RESET>
> +	 line 6<RESET>
> +	 line 7<RESET>
> +	 line 8<RESET>
> +	 line 9<RESET>
> +	<CYAN>+<RESET><CYAN>long line 1<RESET>
> +	<CYAN>+<RESET><CYAN>long line 2<RESET>
> +	<CYAN>+<RESET><CYAN>long line 3<RESET>
> +	<CYAN>+<RESET><CYAN>long line 14<RESET>
> +	<CYAN>+<RESET><CYAN>long line 15<RESET>
> +	<CYAN>+<RESET><CYAN>long line 16<RESET>
> +	 line 10<RESET>
> +	 line 11<RESET>
> +	 line 12<RESET>
> +	 line 13<RESET>
> +	<MAGENTA>-long line 14<RESET>
> +	<MAGENTA>-long line 15<RESET>
> +	<MAGENTA>-long line 16<RESET>
> +	EOF
> +	test_cmp expected actual
> +
> +'
[snip]
Previous: Stefan BellerNext: Stefan Beller
Message 9 of 18 in “[PATCHv2 0/7] Moved code detection: ignore space on uniform indentation”
  1. Stefan BellerApr 24, 2018
  2. 1/7 xdiff/xdiff.h: remove unused flagsStefan Beller, Apr 24, 2018
  3. 2/7 xdiff/xdiffi.c: remove unneeded function declarationsStefan Beller, Apr 24, 2018
  4. 3/7 diff.c: do not pass diff options as keydata to hashmapStefan Beller, Apr 24, 2018
  5. 7/7 diff.c: add --color-moved-ignore-space-delta optionStefan Beller, Apr 24, 2018
  6. Jonathan TanApr 24, 2018
  7. 4/7 diff.c: adjust hash function signature to match hashmap expectationStefan Beller, Apr 24, 2018
  8. 5/7 diff.c: add a blocks mode for moved code detectionStefan Beller, Apr 24, 2018
  9. Jonathan TanApr 24, 2018
  10. Stefan BellerApr 24, 2018
  11. Jonathan TanApr 24, 2018
  12. 6/7 diff.c: decouple white space treatment from move detection algorithmStefan Beller, Apr 24, 2018
  13. Jonathan TanApr 24, 2018
  14. Stefan BellerApr 24, 2018
  15. Jonathan TanApr 24, 2018
  16. Stefan BellerApr 24, 2018
  17. Stefan BellerApr 24, 2018
  18. Jonathan TanApr 25, 2018

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.