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

Re: [PATCH 3/3] add: use advise_if_enabled for ADVICE_ADD_EMBEDDED_REPO

From
Rubén Justo <rjusto@gmail.com>
Date
Mar 29, 2024, 19:04 UTC
Message-ID
<de916779-3c0c-4cf0-b78e-d0536c65af0e@gmail.com>
In-Reply-To
<xmqqcyrczzv7.fsf@gitster.g>
On Fri, Mar 29, 2024 at 10:55:56AM -0700, Junio C Hamano wrote:
Show 11 quoted lines
> Rubén Justo <rjusto@gmail.com> writes:
> 
> > Use the newer advise_if_enabled() machinery to show the advice.
> 
> Common to the other two patches, but "Newer" is not a good enough
> excuse if the existing code is working well for us and not being
> maintenance burden.  The previous two patches were helped by use of
> advise_if_enabled() in a concrete way (or perhaps two ways), and
> that should be explained when selling them.
> 
> This one also needs a similar justification, but with a twist.
May I ask what you would find a good justification?
Perhaps "newer" -> "now preferred"?
> > +test_expect_success '"git add" a nested repository' '
> 
> "nested" -> "embedded", as the warning, advice_type and the message
> contents all use "embedded" consistently.
Makes sense.
Show 37 quoted lines
> > +	rm -fr empty &&
> > +	git init empty &&
> > +	(
> > +		cd empty &&
> > +		git init empty &&
> > +		(
> > +			cd empty &&
> > +			git commit --allow-empty -m "foo"
> > +		) &&
> > +		git add empty 2>actual &&
> 
> It is very good to add a test for a feature that we failed to cover
> so far.  But the feature, as we seen above, is twofold.  We see an
> advice, and we it see only once even when we have multiple.
> 
> So we should add two such embedded repositories for the test, no?
> Also, the shell repository is not meant to stay empty as the user
> will make a mistaken attempt to "add" something to it.
> 
> Perhaps the above part would become more like:
> 
> 	rm -rf outer && git init outer &&
> 	(
> 		cd outer &&
> 		for i in 1 2
> 		do
> 			name=inner$i &&
> 			git init $name &&
>                         git -C $name --allow-empty -m $name ||
> 				return 1
> 		done &&
>                 git add . 2>actual &&
> 
> to use a more descriptive name that shows the point of the test (it
> is not interesting that they are empty---they are in "outer contains
> innner repositories" relationship and that is what the test wants to
> make), and ensure "only once" part of the feature we are testing.

Good point about the naming. I'm not so sure about the "only once" part, but I do not have any strong objection.

Thanks.
Previous: Junio C HamanoNext: Junio C Hamano
Message 7 of 17 in “add: use advise_if_enabled”
  1. 0/3 add: use advise_if_enabledRubén Justo, Mar 29, 2024
  2. 1/3 add: use advise_if_enabled for ADVICE_ADD_IGNORED_FILERubén Justo, Mar 29, 2024
  3. Junio C HamanoMar 29, 2024
  4. 2/3 add: use advise_if_enabled for ADVICE_ADD_EMPTY_PATHSPECRubén Justo, Mar 29, 2024
  5. 3/3 add: use advise_if_enabled for ADVICE_ADD_EMBEDDED_REPORubén Justo, Mar 29, 2024
  6. Junio C HamanoMar 29, 2024
  7. Rubén JustoMar 29, 2024
  8. Junio C HamanoMar 29, 2024
  9. Rubén JustoMar 29, 2024
  10. Junio C HamanoMar 29, 2024
  11. Rubén JustoMar 30, 2024
  12. Junio C HamanoMar 29, 2024
  13. Rubén JustoMar 29, 2024
  14. 0/3 add: use advise_if_enabledRubén Justo, Mar 30, 2024
  15. 1/3 add: use advise_if_enabled for ADVICE_ADD_IGNORED_FILERubén Justo, Mar 30, 2024
  16. 2/3 add: use advise_if_enabled for ADVICE_ADD_EMPTY_PATHSPECRubén Justo, Mar 30, 2024
  17. 3/3 add: use advise_if_enabled for ADVICE_ADD_EMBEDDED_REPORubén Justo, Mar 30, 2024

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.