MSYSTEM is not passed by default on Windows #429
Closed
Comments
Merged
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Summary
I discovered this when people started reporting breakage when they run
check-manifest
fromtox
, from a Git for Windowsbash.exe
shell: mgedmin/check-manifest#64When you run
git.exe
on Windows, the way it prints filenames depends on the environment. IfMSYSTEM
is set toMINGW64
, the filenames are printed in the standard Windows fashion (e.g.C:\Users\...
). WhenMSYSTEM
is not set, filenames are printed in the Unix fashion (/c/Users/...
).check-manifest
runsgit
in a subprocess to enumerate submodules and versioned files. This works fine, except whentox
clears the environment, things break.I think MSYSTEM should be included in tox's default
passenv
list, since it describes system configuration (sort of like TERM, or LC_CTYPE) and a wrong value breaks things.Steps to reproduce
git clone https://github.com/mgedmin/check-manifest
cd check-manifest
git checkout 0.34
# master has a workaround for thistox --develop -e py27 -- tests:TestGit.test_get_versioned_files_with_git_submodules
Expected output
Actual output
subprocess.Popen(..., cwd=...)
says the directory name is invalid.The text was updated successfully, but these errors were encountered: