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

Re: [PATCH] t7500: fix tests with absolute path following ":(optional)" on Windows

From
Ben Knoble <ben.knoble@gmail.com>
Date
Oct 20, 2025, 13:43 UTC
Message-ID
<A563E028-19E7-48A0-B538-82ACE821DB67@gmail.com>
In-Reply-To
<6a83c7d1-7cd4-432e-a0ab-7b18ce3af08d@kdbg.org>
Show 24 quoted lines
> Le 20 oct. 2025 à 05:40, Johannes Sixt <j6t@kdbg.org> a écrit :
> 
> On Windows, the MSYS layer translates absolute path names generated by
> a shell script from the POSIX style /c/dir/file to the Windows style
> C:/dir/file form that is understood by git.exe. This happens only when
> the absolute path stands on its own as a program argument or a value of
> an environment variable.
> 
> The earlier commits 749d6d166d (config: values of pathname type can be
> prefixed with :(optional), 2025-09-28) and ccfcaf399f (parseopt: values
> of pathname type can be prefixed with :(optional), 2025-09-28) added
> test cases where ":(optional)" is inserted before an absolute path.
> $PWD is used to construct the absolute paths, which gives the POSIX
> form, and the result is ":(optional)/c/dir/template". Such command line
> arguments are no longer recognized as absolute paths and do not undergo
> translation.
> 
> Existing test cases that expect that the specified file does not exist
> are not incorrect (after all, git.exe will not find /c/dir/template).
> Yet, they are conceptually incorrect. That the use of $PWD is erroneous
> is revealed by a test case that expects that the optional file exists.
> Since no such test case is present, add one. Use "$(pwd)" to generate
> the absolute paths, so that the command line arguments become
> ":(optional)C:/dir/template".
Thanks! I probably assumed there was no meaningful difference between the value of PWD and what pwd computes, so (prematurely) optimized for a lookup over executing a command.
Going forward I will probably stick with using pwd, given the difference in platform behavior.
Is there a doc or test lint for that? If not, might be useful.
Previous: Johannes SixtNext: Johannes Sixt
Message 38 of 47 in “blame: Skip missing ignore-revs file”
  1. 0/1 blame: Skip missing ignore-revs fileNoah Pendleton, Aug 7, 2021
  2. Junio C HamanoAug 7, 2021
  3. Noah PendletonAug 7, 2021
  4. Junio C HamanoAug 8, 2021
  5. Junio C HamanoAug 8, 2021
  6. Noah PendletonAug 8, 2021
  7. Junio C HamanoAug 9, 2021
  8. 0/3 specifying a file that can optionally existJunio C Hamano, Oct 14, 2024
  9. 1/3 t7500: make each piece more independentJunio C Hamano, Oct 14, 2024
  10. 2/3 config: values of pathname type can be prefixed with :(optional)Junio C Hamano, Oct 14, 2024
  11. 3/3 parseopt: values of pathname type can be prefixed with :(optional)Junio C Hamano, Oct 14, 2024
  12. 0/3 specifying a file that can optionally existJunio C Hamano, May 1, 2025
  13. 1/3 t7500: make each piece more independentJunio C Hamano, May 1, 2025
  14. 2/3 config: values of pathname type can be prefixed with :(optional)Junio C Hamano, May 1, 2025
  15. Patrick SteinhardtMay 2, 2025
  16. Phillip WoodMay 2, 2025
  17. Junio C HamanoMay 2, 2025
  18. 3/3 parseopt: values of pathname type can be prefixed with :(optional)Junio C Hamano, May 1, 2025
  19. 0/3 Support :(optional) filepathsD. Ben Knoble, Sep 28, 2025
  20. 1/3 t7500: make each piece more independentD. Ben Knoble, Sep 28, 2025
  21. 2/3 config: values of pathname type can be prefixed with :(optional)D. Ben Knoble, Sep 28, 2025
  22. Phillip WoodSep 30, 2025
  23. Junio C HamanoOct 6, 2025
  24. Junio C HamanoOct 6, 2025
  25. Junio C HamanoOct 6, 2025
  26. Junio C HamanoOct 6, 2025
  27. Kristoffer HaugsbakkOct 7, 2025
  28. Junio C HamanoOct 7, 2025
  29. D. Ben KnobleNov 2, 2025
  30. 3/3 parseopt: values of pathname type can be prefixed with :(optional)D. Ben Knoble, Sep 28, 2025
  31. Phillip WoodSep 30, 2025
  32. D. Ben KnobleNov 2, 2025
  33. Eric SunshineNov 3, 2025
  34. D. Ben KnobleNov 4, 2025
  35. Junio C HamanoSep 28, 2025
  36. Ben KnobleSep 29, 2025
  37. t7500: fix tests with absolute path following ":(optional)" on WindowsJohannes Sixt, Oct 20, 2025
  38. Ben KnobleOct 20, 2025
  39. Johannes SixtOct 20, 2025
  40. Junio C HamanoOct 20, 2025
  41. D. Ben KnobleOct 20, 2025
  42. D. Ben KnobleOct 20, 2025
  43. Eric SunshineOct 20, 2025
  44. Junio C HamanoOct 20, 2025
  45. Johannes SixtOct 20, 2025
  46. Thranur AndulMar 4, 2022
  47. blame: add config `blame.ignoreRevsFileIsOptional`Noah Pendleton, Aug 8, 2021

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.