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

Re: [GSoC][PATCH v2 3/3] t3600: use helpers to replace test -d/f/e/s <path>

From
Eric Sunshine <sunshine@sunshineco.com>
Date
Mar 5, 2019, 14:57 UTC
Message-ID
<CAPig+cT_YT-1=ymAYiTpjgRQEe8906Y6yyBU=XuP_wbw+ixxiQ@mail.gmail.com>
In-Reply-To
<20190305142149.13671-1-rohit.ashiwal265@gmail.com>
On Tue, Mar 5, 2019 at 9:22 AM Rohit Ashiwal <rohit.ashiwal265@gmail.com> wrote:
> I was asking if this patch is good enough to be added to the
> existing code? Does this patch look good?

I didn't review the patch with a critical-enough eye to be able to say that every change maintains fidelity with the original code. As mentioned in [1]:

    [...] an important reason for limiting the scope of this change
    [...] is to ease the burden on people who review your submission.
    Large patch series tend to tax reviewers heavily, even (and often)
    when repetitive and simple, like replacing `test -d` with
    `test_path_is_dir()`. The shorter and more concise a patch series
    is, the more likely that it will receive quality reviews.

This patch, due to its length and repetitive nature, falls under the category of being tedious to review, which makes it all the more likely that a reviewer will overlook a problem.

And, it's not always obvious at a glance that a change is correct. For instance, taking a look at the final patch band:

    - ! test -d submod &&
    - ! test -d submod/subsubmod/.git &&
    + test_path_is_missing submod &&
    + test_path_is_missing submod/subsubmod/.git &&

Superficially, the transformation seems straightforward. However, that doesn't mean it maintains fidelity with the original or even means the same thing. To review this change properly requires understanding the original intent of "! test -d".

The meaning of that expression can vary depending upon the context. Is it checking that that path is not a directory (but it is okay if a plain file exists there)? Or does it merely care about existence (neither directory nor any other type of entry)? If the latter, then the transformation is probably correct, however, if the former, then it likely isn't correct. So, understanding the overall context of the test is important for judging if a particular change is correct, and many (volunteer) reviewers simply don't have the time to delve that deeply to make a proper judgment.

[1]: https://public-inbox.org/git/CAPig+cSZZaCT0G3hysmjn_tNvZmYGp=5cXpZHkdphbWXnONSVQ@mail.gmail.com/
Previous: Rohit AshiwalNext: Rohit Ashiwal
Message 32 of 37 in “Use helper functions in test script”
  1. Rohit AshiwalMar 3, 2019
  2. 1/3 test functions: Add new function `test_file_not_empty`Rohit Ashiwal, Mar 3, 2019
  3. Junio C HamanoMar 3, 2019
  4. Rohit Ashiwal, Mar 3, 2019
  5. Junio C HamanoMar 3, 2019
  6. Clearing logicRohit Ashiwal, Mar 3, 2019
  7. Thomas GummererMar 3, 2019
  8. 2/3 t3600: refactor code according to contemporary guidelinesRohit Ashiwal, Mar 3, 2019
  9. Junio C HamanoMar 3, 2019
  10. Rohit AshiwalMar 3, 2019
  11. 3/3 t3600: use helper functions from test-lib-functionsRohit Ashiwal, Mar 3, 2019
  12. Junio C HamanoMar 3, 2019
  13. [GSoC][PATCH v2 0/3] Use helper functions in test scriptRohit Ashiwal, Mar 3, 2019
  14. [GSoC][PATCH v2 1/3] test functions: add function `test_file_not_empty`Rohit Ashiwal, Mar 3, 2019
  15. Junio C HamanoMar 4, 2019
  16. [GSoC][PATCH v2 2/3] t3600: restructure code according to contemporary guidelinesRohit Ashiwal, Mar 3, 2019
  17. Junio C HamanoMar 4, 2019
  18. [GSoC][PATCH v2 3/3] t3600: use helpers to replace test -d/f/e/s <path>Rohit Ashiwal, Mar 3, 2019
  19. [GSoC][PATCH v3 0/3] Use helper functions in test scriptRohit Ashiwal, Mar 4, 2019
  20. [GSoC][PATCH v3 1/3] test functions: add function `test_file_not_empty`Rohit Ashiwal, Mar 4, 2019
  21. Eric SunshineMar 5, 2019
  22. Junio C HamanoMar 5, 2019
  23. Rohit AshiwalMar 5, 2019
  24. [GSoC][PATCH v3 2/3] t3600: modernize styleRohit Ashiwal, Mar 4, 2019
  25. Eric SunshineMar 5, 2019
  26. Junio C HamanoMar 5, 2019
  27. [GSoC][PATCH v3 3/3] t3600: use helpers to replace test -d/f/e/s <path>Rohit Ashiwal, Mar 4, 2019
  28. Eric SunshineMar 5, 2019
  29. Rohit AshiwalMar 5, 2019
  30. Eric SunshineMar 5, 2019
  31. Rohit AshiwalMar 5, 2019
  32. Eric SunshineMar 5, 2019
  33. Rohit AshiwalMar 5, 2019
  34. Junio C HamanoMar 8, 2019
  35. Eric SunshineMar 8, 2019
  36. Junio C HamanoMar 11, 2019
  37. Eric SunshineMar 5, 2019

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.