-
Notifications
You must be signed in to change notification settings - Fork 98
Description
The contributing workflow for this project on Windows requires installing WSL and the Linux packages for GNU Make, Info-ZIP, and Python. For developers using pyenv
, additional configuration is required to hide the Windows pyenv
and Python versions from the Linux guest. These are rather heavyweight dependencies for contributing to a pure-Python package that does not build any C extensions.
The current nimi-python developer workflow involves running Tox, which calls GNU Make as needed. If you replaced the makefiles with Python scripts, this developer workflow would not need to change. Running Tox would call the Python scripts instead of GNU Make.
Other NI open-source Python projects such as https://github.com/ni/nidaqmx-python , https://github.com/ni/measurement-plugin-python , and https://github.com/ni/nisync-python perform codegen using Python scripts, which has worked out well. Because the projects are hosted in Git, it doesn't really matter whether the codegen updates the file timestamps every time you run it, and the codegen is fast enough that it wouldn't really benefit from skipping unchanged files.
If \r\n
vs. \n
line endings are an issue, configure .gitattributes
to automatically convert the appropriate files.
(BTW: I have experienced WSL-specific networking issues on my dev machine, but I also have a bare-metal Linux desktop PC, so I don't have to use WSL.)