Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
Expand Up @@ -46,4 +46,4 @@ Search open/closed issues before submitting. Someone may have reported the same
* OS & Device: [e.g. macOS, Windows, Linux] on [Mac, PC]
* `ni-measurement-plugin-sdk-service` version [e.g. 2.0.0]
* InstrumentStudio version [e.g. 24.8.0d123]
* Python version [e.g. 3.10]
* Python version [e.g. 3.11]
4 changes: 2 additions & 2 deletions .github/workflows/check_nimg.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,11 +10,11 @@ jobs:
check_nimg:
name: Check NIMG
env:
oldest-python-version: '3.10'
oldest-python-version: 3.11
strategy:
matrix:
os: [windows-latest, ubuntu-latest]
python-version: ['3.10', 3.14]
python-version: [3.11, 3.14]
runs-on: ${{ matrix.os }}
defaults:
run:
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/check_nims.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,11 +10,11 @@ jobs:
check_nims:
name: Check NIMS
env:
oldest-python-version: '3.10'
oldest-python-version: 3.11
strategy:
matrix:
os: [windows-latest, ubuntu-latest]
python-version: ['3.10', 3.14]
python-version: [3.11, 3.14]
runs-on: ${{ matrix.os }}
defaults:
run:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/run_unit_tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ jobs:
matrix:
os: [windows-latest, ubuntu-latest]
# grpcio does not have binary wheels for pypy or free-threading, as of version 1.75.1.
python-version: ['3.10', 3.11, 3.12, 3.13, 3.14]
python-version: [3.11, 3.12, 3.13, 3.14]
# Fail-fast skews the pass/fail ratio and seems to make pytest produce
# incomplete JUnit XML results.
fail-fast: false
Expand Down
2 changes: 1 addition & 1 deletion .readthedocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ build:
python: "3.11"
jobs:
post_create_environment:
- pip install poetry==1.8.2
- pip install poetry==2.4.3
post_install:
- VIRTUAL_ENV=$READTHEDOCS_VIRTUALENV_PATH poetry -C packages/service/ install --with docs

Expand Down
2 changes: 1 addition & 1 deletion CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ See [GitHub's official documentation](https://help.github.com/articles/using-pul

- (Optional) Install [Visual Studio Code](https://code.visualstudio.com/download).
- Install Git.
- Install Python and add it to the `PATH`. For the recommended Python version,
- Install Python 3.11 or later and add it to the `PATH`. For the recommended Python version,
see [Dependencies](README.md#dependencies).
- Install [Poetry](https://python-poetry.org/docs/#installation). Version >= 1.8.2

Expand Down
14 changes: 7 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ InstrumentStudio and automated testing in TestStand.

## Dependencies

- [Python >= 3.10](https://www.python.org/downloads/release/python-3100/)
- [Python >= 3.11](https://www.python.org/downloads/release/python-3110/)
- [grpcio >= 1.67.0, < 2.x](https://pypi.org/project/grpcio/1.67.0/)
- [protobuf >= 4.21](https://pypi.org/project/protobuf/4.21.0/)
- [pywin32 >= 303 (Only for Windows)](https://pypi.org/project/pywin32/303/)
Expand Down Expand Up @@ -246,7 +246,7 @@ The generated client includes four APIs: `measure`, `stream_measure`, `register_

``` python
from sample_measurement_client import SampleMeasurementClient

client = SampleMeasurementClient()
outputs = client.measure()
print(outputs)
Expand All @@ -256,7 +256,7 @@ The generated client includes four APIs: `measure`, `stream_measure`, `register_

``` python
from sample_measurement_client import SampleMeasurementClient

client = SampleMeasurementClient()
outputs_itr = client.stream_measure()
for index, outputs in enumerate(outputs_itr):
Expand All @@ -267,7 +267,7 @@ The generated client includes four APIs: `measure`, `stream_measure`, `register_

``` python
from sample_measurement_client import SampleMeasurementClient

client = SampleMeasurementClient()
client.register_pin_map(pin_map_path)
outputs = client.measure()
Expand All @@ -277,7 +277,7 @@ The generated client includes four APIs: `measure`, `stream_measure`, `register_

``` python
from sample_measurement_client import SampleMeasurementClient

client = SampleMeasurementClient()
client.pin_map_context = available_pin_map_context
client.sites = [0, 1]
Expand All @@ -290,12 +290,12 @@ The generated client includes four APIs: `measure`, `stream_measure`, `register_
``` python
from concurrent.futures import ThreadPoolExecutor
from sample_measurement_client import SampleMeasurementClient

client = SampleMeasurementClient()
with ThreadPoolExecutor() as executor:
future = executor.submit(client.measure)
client.cancel()
outputs = future.result() # Raises grpc.RpcException with status code "CANCELLED"
outputs = future.result() # Raises grpc.RpcException with status code "CANCELLED"
```

---
Expand Down
4 changes: 4 additions & 0 deletions examples/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
## Example Measurements

These are example measurements for use with InstrumentStudio 2026 Q1 or later.
The examples require [Python 3.11 or later](https://www.python.org/downloads/release/python-3110/).

For best results, use the example measurements corresponding to the version of InstrumentStudio
that you are using. Newer examples may demonstrate features that are not available in older
Expand All @@ -20,6 +21,9 @@ versions of InstrumentStudio.
| Older versions | | See [releases](https://github.com/ni/measurement-plugin-python/releases) page |

The TestStand sequence files associated with each example are saved in TestStand 2021 SP1.
Their Python steps select Python 3.11 and use the example's `.venv` virtual environment.
To run these steps, use a TestStand version that supports Python 3.11 and run
`poetry env use 3.11` in the example's directory before `poetry install`.

### Available Example Measurements

Expand Down
2 changes: 1 addition & 1 deletion examples/game_of_life/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ description = "Measurement plug-in example that displays Conway's Game of Life i
authors = ["National Instruments"]

[tool.poetry.dependencies]
python = "^3.10"
python = "^3.11"
ni-measurement-plugin-sdk-service = {version = ">=2.3.1,<4.0"}
click = ">=7.1.2, !=8.1.4" # mypy fails with click 8.1.4: https://github.com/pallets/click/issues/2558
ni-protobuf-types = { version = ">=0.1.0dev2", allow-prereleases = true }
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3141,7 +3141,7 @@
<value>2</value>
</InterpreterSessionScope>
<PythonVersion classname='Str'>
<value>3.10</value>
<value>3.11</value>
Comment thread
dixonjoel marked this conversation as resolved.
Resolved
</PythonVersion>
<PythonVirtualEnvironmentPath classname='Str'>
<value>.venv</value>
Expand Down Expand Up @@ -3590,7 +3590,7 @@
<value>2</value>
</InterpreterSessionScope>
<PythonVersion classname='Str'>
<value>3.10</value>
<value>3.11</value>
</PythonVersion>
<PythonVirtualEnvironmentPath classname='Str'>
<value>.venv</value>
Expand Down
2 changes: 1 addition & 1 deletion examples/nidaqmx_analog_input/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ description = "Measurement plug-in example that performs a finite analog input m
authors = ["National Instruments"]

[tool.poetry.dependencies]
python = "^3.10"
python = "^3.11"
nidaqmx = { version = ">=0.8.0", extras = ["grpc"] }
ni-measurement-plugin-sdk-service = {version = ">=2.3.1,<4.0"}
click = ">=7.1.2, !=8.1.4" # mypy fails with click 8.1.4: https://github.com/pallets/click/issues/2558
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3393,7 +3393,7 @@
<value>2</value>
</InterpreterSessionScope>
<PythonVersion classname='Str'>
<value>3.10</value>
<value>3.11</value>
</PythonVersion>
<PythonVirtualEnvironmentPath classname='Str'>
<value>.venv</value>
Expand Down Expand Up @@ -3842,7 +3842,7 @@
<value>2</value>
</InterpreterSessionScope>
<PythonVersion classname='Str'>
<value>3.10</value>
<value>3.11</value>
</PythonVersion>
<PythonVirtualEnvironmentPath classname='Str'>
<value>.venv</value>
Expand Down
2 changes: 1 addition & 1 deletion examples/nidcpower_source_dc_voltage/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ description = "Measurement plug-in example that sources and measures a DC voltag
authors = ["National Instruments"]

[tool.poetry.dependencies]
python = "^3.10"
python = "^3.11"
nidcpower = { version = ">=1.4.4", extras = ["grpc"] }
ni-measurement-plugin-sdk-service = {version = ">=2.3.1,<4.0"}
click = ">=7.1.2, !=8.1.4" # mypy fails with click 8.1.4: https://github.com/pallets/click/issues/2558
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3285,7 +3285,7 @@
<value>2</value>
</InterpreterSessionScope>
<PythonVersion classname='Str'>
<value>3.10</value>
<value>3.11</value>
</PythonVersion>
<PythonVirtualEnvironmentPath classname='Str'>
<value>.venv</value>
Expand Down Expand Up @@ -3730,7 +3730,7 @@
<value>2</value>
</InterpreterSessionScope>
<PythonVersion classname='Str'>
<value>3.10</value>
<value>3.11</value>
</PythonVersion>
<PythonVirtualEnvironmentPath classname='Str'>
<value>.venv</value>
Expand Down Expand Up @@ -4179,7 +4179,7 @@
<value>2</value>
</InterpreterSessionScope>
<PythonVersion classname='Str'>
<value>3.10</value>
<value>3.11</value>
</PythonVersion>
<PythonVirtualEnvironmentPath classname='Str'>
<value>.venv</value>
Expand Down Expand Up @@ -4576,7 +4576,7 @@
<value>2</value>
</InterpreterSessionScope>
<PythonVersion classname='Str'>
<value>3.10</value>
<value>3.11</value>
</PythonVersion>
<PythonVirtualEnvironmentPath classname='Str'>
<value>.venv</value>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ description = "Measurement plug-in example that sources and measures a DC voltag
authors = ["National Instruments"]

[tool.poetry.dependencies]
python = "^3.10"
python = "^3.11"
nidcpower = { version = ">=1.4.4", extras = ["grpc"] }
niswitch = { version = ">=1.4.4", extras = ["grpc"] }
ni-measurement-plugin-sdk-service = {version = ">=2.3.1,<4.0"}
Expand Down
10 changes: 5 additions & 5 deletions examples/nidigital_spi/NIDigitalSPI_example.seq
Original file line number Diff line number Diff line change
Expand Up @@ -3282,7 +3282,7 @@
<value>2</value>
</InterpreterSessionScope>
<PythonVersion classname='Str'>
<value>3.10</value>
<value>3.11</value>
</PythonVersion>
<PythonVirtualEnvironmentPath classname='Str'>
<value>.venv</value>
Expand Down Expand Up @@ -3727,7 +3727,7 @@
<value>2</value>
</InterpreterSessionScope>
<PythonVersion classname='Str'>
<value>3.10</value>
<value>3.11</value>
</PythonVersion>
<PythonVirtualEnvironmentPath classname='Str'>
<value>.venv</value>
Expand Down Expand Up @@ -4220,7 +4220,7 @@
<value>2</value>
</InterpreterSessionScope>
<PythonVersion classname='Str'>
<value>3.10</value>
<value>3.11</value>
</PythonVersion>
<PythonVirtualEnvironmentPath classname='Str'>
<value>.venv</value>
Expand Down Expand Up @@ -4809,7 +4809,7 @@
<value>2</value>
</InterpreterSessionScope>
<PythonVersion classname='Str'>
<value>3.10</value>
<value>3.11</value>
</PythonVersion>
<PythonVirtualEnvironmentPath classname='Str'>
<value>.venv</value>
Expand Down Expand Up @@ -5306,7 +5306,7 @@
<value>2</value>
</InterpreterSessionScope>
<PythonVersion classname='Str'>
<value>3.10</value>
<value>3.11</value>
</PythonVersion>
<PythonVirtualEnvironmentPath classname='Str'>
<value>.venv</value>
Expand Down
2 changes: 1 addition & 1 deletion examples/nidigital_spi/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ description = "Measurement plug-in example that tests a SPI device using an NI D
authors = ["National Instruments"]

[tool.poetry.dependencies]
python = "^3.10"
python = "^3.11"
nidigital = { version = ">=1.4.4", extras = ["grpc"] }
ni-measurement-plugin-sdk-service = {version = ">=2.3.1,<4.0"}
click = ">=7.1.2, !=8.1.4" # mypy fails with click 8.1.4: https://github.com/pallets/click/issues/2558
Expand Down
4 changes: 2 additions & 2 deletions examples/nidmm_measurement/NIDmmMeasurement_example.seq
Original file line number Diff line number Diff line change
Expand Up @@ -3327,7 +3327,7 @@
<value>2</value>
</InterpreterSessionScope>
<PythonVersion classname='Str'>
<value>3.10</value>
<value>3.11</value>
</PythonVersion>
<PythonVirtualEnvironmentPath classname='Str'>
<value>.venv</value>
Expand Down Expand Up @@ -3776,7 +3776,7 @@
<value>2</value>
</InterpreterSessionScope>
<PythonVersion classname='Str'>
<value>3.10</value>
<value>3.11</value>
</PythonVersion>
<PythonVirtualEnvironmentPath classname='Str'>
<value>.venv</value>
Expand Down
2 changes: 1 addition & 1 deletion examples/nidmm_measurement/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ description = "Measurement plug-in example that performs a measurement using an
authors = ["National Instruments"]

[tool.poetry.dependencies]
python = "^3.10"
python = "^3.11"
nidmm = { version = ">=1.4.4", extras = ["grpc"] }
ni-measurement-plugin-sdk-service = {version = ">=2.3.1,<4.0"}
click = ">=7.1.2, !=8.1.4" # mypy fails with click 8.1.4: https://github.com/pallets/click/issues/2558
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3220,7 +3220,7 @@
<value>2</value>
</InterpreterSessionScope>
<PythonVersion classname='Str'>
<value>3.10</value>
<value>3.11</value>
</PythonVersion>
<PythonVirtualEnvironmentPath classname='Str'>
<value>.venv</value>
Expand Down Expand Up @@ -3669,7 +3669,7 @@
<value>2</value>
</InterpreterSessionScope>
<PythonVersion classname='Str'>
<value>3.10</value>
<value>3.11</value>
</PythonVersion>
<PythonVirtualEnvironmentPath classname='Str'>
<value>.venv</value>
Expand Down
2 changes: 1 addition & 1 deletion examples/nifgen_standard_function/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ description = "Measurement plug-in example that generates a standard function wa
authors = ["National Instruments"]

[tool.poetry.dependencies]
python = "^3.10"
python = "^3.11"
nifgen = { version = ">=1.4.4", extras = ["grpc"] }
ni-measurement-plugin-sdk-service = {version = ">=2.3.1,<4.0"}
click = ">=7.1.2, !=8.1.4" # mypy fails with click 8.1.4: https://github.com/pallets/click/issues/2558
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3628,7 +3628,7 @@
<value>2</value>
</InterpreterSessionScope>
<PythonVersion classname='Str'>
<value>3.10</value>
<value>3.11</value>
</PythonVersion>
<PythonVirtualEnvironmentPath classname='Str'>
<value>.venv</value>
Expand Down Expand Up @@ -4077,7 +4077,7 @@
<value>2</value>
</InterpreterSessionScope>
<PythonVersion classname='Str'>
<value>3.10</value>
<value>3.11</value>
</PythonVersion>
<PythonVirtualEnvironmentPath classname='Str'>
<value>.venv</value>
Expand Down
2 changes: 1 addition & 1 deletion examples/niscope_acquire_waveform/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ description = "Measurement plug-in example that acquires a waveform using an NI
authors = ["National Instruments"]

[tool.poetry.dependencies]
python = "^3.10"
python = "^3.11"
niscope = { version = ">=1.4.4", extras = ["grpc"] }
ni-measurement-plugin-sdk-service = {version = ">=2.3.1,<4.0"}
click = ">=7.1.2, !=8.1.4" # mypy fails with click 8.1.4: https://github.com/pallets/click/issues/2558
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6813,7 +6813,7 @@
<value>3</value>
</InterpreterSessionScope>
<PythonVersion classname='Str'>
<value>3.10</value>
<value>3.11</value>
</PythonVersion>
<PythonVirtualEnvironmentPath classname='Str'>
<value>.venv</value>
Expand Down Expand Up @@ -7262,7 +7262,7 @@
<value>3</value>
</InterpreterSessionScope>
<PythonVersion classname='Str'>
<value>3.10</value>
<value>3.11</value>
</PythonVersion>
<PythonVirtualEnvironmentPath classname='Str'>
<value>.venv</value>
Expand Down
Loading
Loading