ni / ni/nimi-python

print_diagnostic_information() misleading if runtime not installed

Open
#1,205 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement priority-medium
Dominant language
Python
Stars
128
Forks
110
Avg merge
5d 14h
Merged PRs (30d)
10

Description

Description of issue

If I run python3 -c "import niscope; niscope.print_diagnostic_information()" on a Windows system that does not have NI-DCPower runtime installed, the output I get is:

Z:\>python3 -c "import nidcpower; nidcpower.print_diagnostic_information()"
OS:
    Name:      Windows
    Version:   10.0.18362
    Bits:      64
Driver:
    Name:      NI-DCPower
    Version:   Unknown
Module:
    Name:      nidcpower
    Version:   1.0.0
Python:
    Version:   3.6.8rc1 (v3.6.8rc1:cc3e73212a, Dec 12 2018, 00:15:46) [MSC v.1900 64 bit (AMD64)]
    Bits:      64
    Is_Venv:   False
    Installed Packages:
        zipp==1.0.0
        virtualenv==16.7.9
        tox==3.14.3
        toml==0.10.0
        six==1.11.0
        setuptools==40.6.2
        pytest==3.0.7
        pyparsing==2.4.6
        py==1.4.33
        pluggy==0.13.1
        pip==19.3.1
        packaging==20.0
        numpy==1.13.3
        nitclk==0.3.1
        niswitch==0.2.0.dev1
        niscope==1.1.5
        nimodinst==0.4.0.dev0
        nifgen==0.6.0.dev0
        nidmm==0.3.0.dev0
        nidcpower==1.0.0
        more-itertools==8.1.0
        markupsafe==1.0
        mako==1.0.7
        importlib-metadata==1.4.0
        filelock==3.0.12
        enum34==1.1.6
        colorama==0.4.3
        bs4==0.0.1
        beautifulsoup4==4.6.0

Specifically, the following is problematic:

Driver:
    Name:      NI-DCPower
    Version:   Unknown
  1. I think "Driver" should be replaced with the more specific "Driver runtime".
  2. Version should report "not installed" rather than "Unknown".

I think this is important because not having the runtime installed is probably going to be a common thing for a new nimi-python customer that's getting up and running. We should give them more concrete help.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by locating the nidcpower implementation of print_diagnostic_information() and reproduce the command on Windows without the NI-DCPower runtime installed. Update the diagnostic labels and missing-runtime version output as described, then verify that the output identifies the runtime as not installed rather than unknown.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
tooling
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.