Skip to content

Make it easier to contribute to this project by replacing WSL and GNU Make with Python #2096

@bkeryan

Description

@bkeryan

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.)

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions