Skip to content

Commit 0dfd55f

Browse files
authored
Introducing spell checking and fixing several typos (#934)
* fix: introduce cspell and fix spelling errors across codebase Add cspell spell-checking configuration: - cspell.json with file/path scoping and Mako template override - cspell-dict.txt for project-specific technical terms - cspell-ignore-words.txt for known abbreviations and API identifiers - cspell-mako-keywords.txt for Mako template keywords Fix spelling errors in variable, function, file names, comments, docstrings, and test names throughout the codebase. * chore: regenerate code after spelling fixes * fix: address styleguide lint issues * chore: remove temporary mypy output file * fix: remove UTF-8 BOM from cspell-ignore-words.txt * chore: move cspell dictionaries to .cspell/ directory * chore: merge cspell-ignore-words.txt into cspell-dict.txt * chore: add DAQmx abbreviations dictionary and deduplicate cspell-dict * chore: improve cspell configuration and dictionaries - Set noSuggest on all dictionaries so project-specific terms don't pollute suggestion lists - Add cspell-dict and cspell-daqmx-abbreviations to the Mako template override so abbreviations are recognized in templates - Merge duplicate entries in cspell-daqmx-abbreviations.txt (e.g. Conn # Connect / Connected / Connecting / Connector) - Add '# Real words' section header to cspell-dict.txt * chore: switch cspell to ignorePaths-only pattern and expand scope to docs - Replace files allowlist with ignorePaths blocklist and useGitignore: true - Add docs/**/*.rst to spell-check scope - Add .cspell/cspell-sphinx-directives.txt dictionary for Sphinx RST directives - Add *.rst override to apply Sphinx directives dictionary * chore: expand cspell scope to .md files and fix spelling errors - Add per-file dictionaries and overrides for CHANGELOG.md and CONTRIBUTING.md - Add .cspell/cspell-changelog-words.txt with historical identifiers and bot names - Add .cspell/cspell-contributing-words.txt with contribution workflow terms - Add package names to cspell-dict.txt (numpy, ctypes, pytest, matplotlib, pyplot) - Add HWCU and NIDAQ to cspell-dict.txt - Add bitfields plural form to cspell-dict.txt - Add backlinks to cspell-sphinx-directives.txt - Add python dictionary to .rst override for code examples - fix: correct domaindirectives typo in CHANGELOG.md * chore: replace blanket extension exclusions with specific file paths in cspell * chore: sort cspell ignorePaths in VS Code Explorer order * chore: spell-check .env.sample and add MBCS, multibyte to dictionary * chore: spell-check .gitignore * chore: remove redundant comments from cspell overrides * chore: use consistent dictionary order in cspell overrides * chore: regenerate utils.py after cspell comment style fix * chore: run cspell in CI * docs: document cspell as a required step in the contribution workflow * chore: consolidate cspell:ignore directives in test_internationalization.py * chore: remove redundant bnptdms from dictionary cspell treats \b as a regex metacharacter, so r"\bnptdms\b" produces the token nptdms, which is already in the dictionary. The bnptdms entry was never needed. * refactor: rename FULLSCALE_RAW_MAX/MIN to FULL_SCALE_RAW_MAX/MIN in test_in_stream * chore: alphabetize cspell dictionary and annotate each entry with its origin * chore: sort and annotate sphinx directives and mako keywords dictionaries * chore: sort and annotate changelog and contributing dictionaries, add python dict to changelog override * chore: migrate changelog and contributing word lists to inline cspell ignores * chore: extend cspell to codegen/generated files; fix typos Add .cspell/cspell-codegen-dict.txt with ~115 entries covering NI-DAQmx initialisms, abbreviations, compound identifiers, typos locked in public API names, and real domain words specific to codegen and generated source files. Update cspell.json: - Add cspell-codegen-dict dictionary definition - Remove broad generated/** and src/codegen/** ignore paths so these files are now spell-checked - Add generated/nidaqmx/_stubs/** back to ignorePaths (protobuf stubs are too noisy to check) - Add override applying cspell-codegen-dict to src/codegen/** and generated/** - Sort dictionaryDefinitions alphabetically - Order ignorePaths to match VSCode Explorer layout - Add ordering comments to both lists Fix typos in metadata source (src/codegen/metadata/attributes.py): - specfied -> specified - thermcouple -> thermocouple - thefilter -> the filter (two occurrences) These propagate into generated files via codegen; also fix them directly in the generated files that are already up to date. Minor code fixes: - src/codegen/generator.py: docstring "Codegenerator" -> "Code generator" - src/codegen/stub_generator.py: rename grpc_codegened_file_paths -> grpc_code_generated_file_paths * chore: clean up and annotate cspell.json -> ignorePaths * chore: extend cspell coverage to pyproject.toml - Remove pyproject.toml from cspell.json ignorePaths - Add cspell override for pyproject.toml with [cspell-dict, cspell-daqmx-abbreviations, python] dictionaries; the python dictionary covers: mypy, pypy, grpcio, tzlocal, doctest, filterwarnings, xfail - Add // cspell:disable-line to the override's filename line in cspell.json to suppress pyproject in that string literal - Suppress maintainer names (Hindes, Maxx, Boehme, Keryan) using # cspell:disable / # cspell:enable around the maintainers block - Add # cspell:ignore addopts above [tool.pytest.ini_options].addopts - Add # cspell:ignore testpaths above [tool.pytest.ini_options].testpaths - Add grpcdevice and styleguide to .cspell/cspell-dict.txt - Remove grpcdevice from .cspell/cspell-changelog-words.txt - Remove styleguide from .cspell/cspell-changelog-words.txt and .cspell/cspell-contributing-words.txt - Remove <!-- cspell:ignore styleguide --> from CONTRIBUTING.md - Remove <!-- cspell:ignore styleguide --> and <!-- cspell:ignore grpcdevice --> from CHANGELOG.md * chore: align ignorePaths comments in cspell.json * fix: wrap long list comprehension in stub_generator.py * revert: undo _dotenv_path rename; add dotenvpath to cspell dict with TODO * refactor: rename cfunc to c_func in _lib.py for consistency with _library_interpreter.py * chore: remove unused words from cspell-daqmx-abbreviations.txt * chore: consolidate NI-DAQmx words into cspell-daqmx-abbreviations.txt * chore: reorganize cspell dictionaries by purpose * chore: move cspell:ignore comments inline in CONTRIBUTING.md * chore: delete cspell-changelog-words and cspell-contributing-words dictionaries * chore: add python to global cspell dictionaries; remove redundant overrides * fixup! chore: Consolidate cspell dictionaries into one project dictionary Improve comments in cspell-daqmx-api-elements.txt for consistency: - Use specific comment taxonomy: abbreviation, unseparated words, unseparated initialisms, initialism, Typo, Deprecated - Move mioDAQ to cspell-real-words.txt - Move forcebridge/pressurebridge/torquebridge to cspell-project-software-terms.txt (typo: filenames should be PascalCase) - Move installdriver to cspell-project-software-terms.txt (CLI command) - Reclassify BBULK, COULDNT, DOESNT, DAQError, notKnown, zidx with accurate comments instead of 'compatibility breaking name' * chore: rename TEDS asset files to PascalCase for consistency forcebridge.ted → ForceBridge.ted pressurebridge.ted → PressureBridge.ted torquebridge.ted → TorqueBridge.ted Update conftest.py fixtures and remove the words from the cspell dictionary. * chore: improve cspell-real-words.txt comments; correct SMIO expansion - Remove redundant "Real word:" and "Initialism:" prefixes from comments - Lowercase entries that are neither initialisms nor proper nouns - Add descriptions to bare entries - Standardize GPS initialism comments - Correct SMIO expansion: Serial Memory I/O -> Simultaneously-sampling Multifunction I/O * chore: use cspell-action instead of npx to run cspell * chore: move cspell config to .config/; simplify dictionary names - Move cspell.json to .config/cspell.json - Move .cspell/ dictionary files to .config/cspell/, dropping the redundant "cspell-" prefix from each filename and dictionary name - Add globRoot: "${cwd}" so paths resolve correctly from the new location - Set noSuggest: false on real-words to enable spelling suggestions * docs: add 1.5.0 changelog section; mention cspell under Major Changes * docs: incorporate 1.4.1 section and fix 1.5.0 PR link in changelog
1 parent 257f46e commit 0dfd55f

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

56 files changed

+2890
-2548
lines changed

.config/cspell.json

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
{
2+
"version": "0.2",
3+
"globRoot": "${cwd}",
4+
// Keep the following list of items in alphabetical order.
5+
"dictionaryDefinitions": [
6+
{ "name": "daqmx-api-elements", "path": "./cspell/daqmx-api-elements.txt", "noSuggest": true },
7+
{ "name": "real-words", "path": "./cspell/real-words.txt", "noSuggest": false },
8+
{ "name": "mako-keywords", "path": "./cspell/mako-keywords.txt", "noSuggest": true },
9+
{ "name": "project-software-terms", "path": "./cspell/project-software-terms.txt", "noSuggest": true },
10+
{ "name": "sphinx-directives", "path": "./cspell/sphinx-directives.txt", "noSuggest": true }
11+
],
12+
"dictionaries": ["real-words", "daqmx-api-elements", "project-software-terms", "python"],
13+
"useGitignore": true,
14+
// Keep the following list of items in the order that they appear in VSCode
15+
// Explorer (directories in alphabetical order, followed by top-level files
16+
// in alphabetical order).
17+
"ignorePaths": [
18+
".config/cspell/**", // dictionary source files; words here are not prose
19+
"docs/img/**", // binary image files
20+
"docs/conf.py", // Sphinx config; extension names and config keys
21+
"docs/make.bat", // Sphinx build script; not prose
22+
"docs/Makefile", // Sphinx build script; not prose
23+
"generated/nidaqmx/_stubs/**", // protobuf-generated stubs; too noisy to check
24+
"tests/max_config/**", // NI MAX config files; NI-specific identifiers
25+
"tests/test_assets/**", // test fixture files; not prose
26+
"third_party/**", // third-party code we don't own or control
27+
".readthedocs.yml", // ReadTheDocs config
28+
"poetry.lock", // auto-generated lock file; hashes and package URLs
29+
"poetry.toml", // Poetry config
30+
"tox.ini" // tox config
31+
],
32+
"overrides": [
33+
{
34+
"filename": "**/*.mako",
35+
"dictionaries": ["real-words", "daqmx-api-elements", "python", "mako-keywords"]
36+
},
37+
{
38+
"filename": "**/*.rst",
39+
"dictionaries": ["real-words", "daqmx-api-elements", "python", "sphinx-directives"]
40+
},
41+
{
42+
"filename": "**/CONTRIBUTING.md",
43+
"dictionaries": ["real-words"]
44+
}
45+
]
46+
}
Lines changed: 115 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,115 @@
1+
acceld # Deprecated; see attribute_helpers.py
2+
ACRMS # unseparated initialisms; AC RMS
3+
AHigh # unseparated words; A high
4+
AIAC # unseparated initialisms; AI AC
5+
AIADC # unseparated initialisms; AI ADC
6+
AIDC # unseparated initialisms; AI DC
7+
AIGnd # unseparated words; AI ground
8+
AILVDT # unseparated initialisms; AI LVDT
9+
AIRTD # unseparated initialisms; AI RTD
10+
AIRTDA # unseparated initialisms; AI RTD A
11+
AIRTDB # unseparated initialisms; AI RTD B
12+
AIRTDC # unseparated initialisms; AI RTD C
13+
AIRTDR0 # unseparated initialisms; AI RTD R0
14+
AIRVDT # unseparated initialisms; AI RVDT
15+
AITEDS # unseparated initialisms; AI TEDS
16+
anlg # abbreviation; analog
17+
AODAC # unseparated initialisms; AO DAC
18+
AOGnd # unseparated words; AO ground
19+
AOHW # unseparated initialisms; AO HW
20+
APFI # initialism; Analog Programmable Function Interface
21+
asyn # abbreviation; asynchronous
22+
atten # abbreviation; attenuation
23+
attentuation # Typo; should be: attenuation
24+
BBULK # Typo; should be USB_BULK instead of US_BBULK
25+
BHigh # unseparated words; B high
26+
calibrationInfo # unseparated words
27+
CAPI # unseparated words; C API
28+
certiticates # Typo; should be: certificates
29+
cfgd # abbreviation; configured
30+
cfgs # abbreviation; configurations
31+
chans # abbreviation; channels
32+
CIGPS # unseparated initialisms; CI GPS
33+
CIHW # unseparated initialisms; CI HW
34+
CITC # unseparated initialisms; CI TC
35+
CIUTC # unseparated initialisms; CI UTC
36+
clks # abbreviation; clocks
37+
cmplt # abbreviation; complete
38+
coeff # abbreviation; coefficient
39+
coeffs # abbreviation; coefficients
40+
COHW # unseparated initialisms; CO HW
41+
COHWTSP # unseparated initialisms; CO HWTSP
42+
compen # abbreviation; compensated / compensation
43+
conv # abbreviation; convert
44+
couldnt # abbreviation; couldn't
45+
ctrs # abbreviation; counters
46+
DAQError # unseparated words
47+
descr # abbreviation; description
48+
difft # abbreviation; different
49+
doesnt # abbreviation; doesn't
50+
DSTAR # for further research; stands for differential star (PXIe trigger), but we also use D_STAR
51+
elec # abbreviation; electrical
52+
excit # abbreviation; excitation
53+
expir # abbreviation; expiration
54+
exportSignal # unseparated words
55+
fltr # abbreviation; filter
56+
forceLb # unseparated words; force in pounds
57+
freqOut # abbreviation; frequency output
58+
frequencyWith # unseparated words
59+
globalVirtualChannels # unseparated words; global virtual channels
60+
hshk # abbreviation; handshake
61+
HWTEDS # unseparated initialisms; HW TEDS
62+
HWTSP # initialism; Hardware-Timed Single Point
63+
hyst # abbreviation; hysteresis
64+
hysts # abbreviation; hysteresis
65+
immed # abbreviation; immediate
66+
invalidc # Typo; should be: INVALID_CDAQ_SYNC_PORT_CONNECTION_FORMAT
67+
IRIGB # initialism; IRIG-B
68+
isoc # abbreviation; isochronous
69+
lvls # abbreviation; levels
70+
MIOAI # unseparated initialisms; MIO AI
71+
mult # abbreviation; multiple
72+
multiDevice # unseparated words
73+
NIDAQ # initialism; NI-DAQ (legacy product name)
74+
nidaqmx # NI-DAQmx package name
75+
nonBuffered # unseparated words
76+
notKnown # unseparated words
77+
NRSE # initialism; Non-Referenced Single-Ended
78+
nums # abbreviation; numbers
79+
onbrd # abbreviation; onboard
80+
outp # abbreviation; output
81+
persistedChannel # unseparated words
82+
persistedScale # unseparated words
83+
persistedTask # unseparated words
84+
physicalChannel # unseparated words
85+
posssible # Typo; should be: possible
86+
pretrig # abbreviation; pre-trigger
87+
prpty # abbreviation; property
88+
rangeWith # unseparated words
89+
regen # abbreviation; regeneration
90+
rngs # abbreviation; ranges
91+
rqst # abbreviation; request
92+
samp # abbreviation; sample
93+
samps # abbreviation; samples
94+
scanList # unseparated words
95+
sensord # Deprecated; see attribute_helpers.py
96+
sensitivit # Typo; should be: sensitivity
97+
SMIO # initialism; Simultaneously-sampling Multifunction I/O
98+
specd # abbreviation; specified
99+
srcs # abbreviation; sources
100+
subsytem # Typo; should be: subsystem
101+
taskToCopy # unseparated words; task to copy
102+
tcpip # initialism; TCP/IP
103+
TEDSAI # unseparated initialisms; TEDS AI
104+
TEDSAIRTD # unseparated initialisms; TEDS AI RTD
105+
TEDSHWTEDS # unseparated initialisms; TEDS HWTEDS
106+
thrmcpl # abbreviation; thermocouple
107+
thrmstr # abbreviation; thermistor
108+
timeTriggers # unseparated words
109+
trigs # abbreviation; triggers
110+
unavail # abbreviation; unavailable
111+
USBDAQ # unseparated initialisms; USB DAQ
112+
verif # abbreviation; verification
113+
voltaged # Deprecated; see attribute_helpers.py
114+
xfer # abbreviation; transfer
115+
ZIdx # abbreviation; Z index

.config/cspell/mako-keywords.txt

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
# Mako template closing keywords for control structures (% endXXX markers).
2+
# Mako closes each % control block with a matching % end<keyword> line.
3+
# All seven closing keywords are included; they are all used in src/codegen/templates/.
4+
endblock
5+
enddef
6+
endfor
7+
endif
8+
endtry
9+
endwhile
10+
endwith
Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
addoption # Dependency: pytest
2+
allclose # Dependency: numpy
3+
argtype # Standard library: ctypes
4+
argtypes # Standard library: ctypes
5+
ascontiguousarray # Dependency: numpy
6+
autoinstall # Linux system tool names (external)
7+
byref # Standard library: ctypes
8+
callspec # Dependency: pytest
9+
caplog # Dependency: pytest
10+
cdecl # C calling convention name (used in codegen)
11+
chkconfig # Linux system tool names (external)
12+
codegen # codegen internals
13+
ctypes # Standard library: ctypes
14+
ctypeslib # Standard library: ctypes
15+
CVICALLBACK # NI CVI calling convention macro (C interop comment)
16+
docstrings # Python terminology
17+
dotenv # Dependency: python-decouple / dotenv
18+
dotenvpath # Typo - TODO - rename the files and make related changes
19+
dpkg # Linux system tool names (external)
20+
dtype # Dependency: numpy
21+
fixturenames # Dependency: pytest
22+
frombuffer # Dependency: numpy
23+
getfixturevalue # Dependency: pytest
24+
grpcdevice # NI package name; ni-grpcdevice
25+
hightime # Dependency: hightime
26+
htmlcov # Python tooling (directory/artifact names, not real words)
27+
iinfo # Dependency: numpy
28+
insserv # Linux system tool names (external)
29+
installdriver # CLI command name and corresponding function
30+
localzone # Dependency: tzlocal
31+
matplotlib # Dependency: matplotlib
32+
metafunc # Dependency: pytest
33+
modifyitems # Dependency: pytest
34+
nbytes # Dependency: numpy
35+
ndarray # Dependency: numpy
36+
ndpointer # Dependency: numpy
37+
NISHAREDDIR # NI Linux install directory environment variable
38+
nicai # NI-DAQmx C library filename (Windows DLL)
39+
nicaiu # NI-DAQmx C library filename (Windows DLL, Unicode)
40+
nidevice # NI package name; ni-device-grpc
41+
nitypes # Dependency: nitypes
42+
nptdms # Dependency: nptdms
43+
numpy # Dependency: numpy
44+
parametrizing # Dependency: pytest
45+
printoptions # Dependency: numpy
46+
protoc # Tool name: protobuf compiler
47+
pycache # Python tooling (directory/artifact names, not real words)
48+
pykka # Dependency: pykka
49+
pyplot # Dependency: matplotlib
50+
pytest # Dependency: pytest
51+
rtol # Dependency: numpy
52+
scrapigen # codegen internals
53+
styleguide # ni-python-styleguide linting tool
54+
sint # Protobuf type; signed integer
55+
tobytes # Dependency: numpy
56+
tolist # Dependency: numpy
57+
typeshed # Python type stubs repository (mypy/pyright tooling)
58+
unraisable # Dependency: pytest
59+
unraisablehook # Dependency: pytest
60+
ulonglong # C type: unsigned long long
61+
varargs # Standard library: ctypes
62+
venv # Python tooling (directory/artifact names, not real words)
63+
xlabel # Dependency: matplotlib
64+
ylabel # Dependency: matplotlib

.config/cspell/real-words.txt

Lines changed: 76 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,76 @@
1+
autozero # Electronic instrumentation term
2+
backplane # Digital electronics and computer engineering term
3+
bandpass # Filter term
4+
bitfield # Computing term; contiguous range of bits in a value
5+
bitfields # Computing term; contiguous range of bits in a value
6+
bitstream # Computing term; sequence of bits transmitted serially
7+
brickwall # Filter term
8+
Butterworth # Scientist name; Butterworth filter
9+
cDAQ # CompactDAQ (NI hardware platform)
10+
Callendar # Physicist name; Callendar-Van Dusen equation
11+
CPLD # Complex Programmable Logic Device
12+
DAQmx # Data Acquisition Measurement Extensions
13+
deassert # Digital electronics and computer engineering term
14+
deasserting # Digital electronics and computer engineering term
15+
deasserts # Digital electronics and computer engineering term
16+
deleters # Software term
17+
DKMS # Dynamic Kernel Module Support
18+
Dusen # Physicist name; Van Dusen of Callendar-Van Dusen equation
19+
EEPROM # Electrically Erasable Programmable Read-Only Memory
20+
HDOP # Horizontal Dilution of Precision (GPS)
21+
highpass # Filter term
22+
HWCU # Hardware Configuration Utility
23+
IEPE # Integrated Electronics Piezo-Electric
24+
IRIG # Inter-Range Instrumentation Group
25+
jumpered # Electronics term
26+
lowpass # Filter term
27+
LVDT # Linear Variable Differential Transformer
28+
LVTTL # Low Voltage Transistor-Transistor Logic
29+
MBCS # Multi-Byte Character Set
30+
MDNS # Multicast DNS
31+
MeasurementLink # NI product name
32+
micropascals # Unit of pressure
33+
mioDAQ # NI product category
34+
milli # SI prefix
35+
multibyte # Computing term; character encoding using multiple bytes
36+
NIELVIS # NI product name; NI ELVIS
37+
nonprintable # Computing term
38+
overcurrent # Electrical engineering term
39+
overrange # Measurement term; signal exceeding the measurable range
40+
overread # Data acquisition term
41+
overtemperature # Electrical/safety term; exceeding a temperature limit
42+
overvoltage # Electrical engineering term
43+
PDOP # Position Dilution of Precision (GPS)
44+
pico # SI prefix
45+
powerline # Electrical engineering term
46+
powerup # Electronics term
47+
pseudodifferential # Electronics measurement term
48+
PXIe # PCI eXtensions for Instrumentation, Express variant
49+
ratiometric # Electronics measurement term
50+
RDMA # Remote Direct Memory Access
51+
readall # Software term; read all available data
52+
reglitch # Electronics DAC term
53+
reglitching # Electronics DAC term (gerund)
54+
replug # Hardware term
55+
retriggerable # Electronics term; able to be triggered again before previous cycle ends
56+
RTSI # Real-Time System Integration
57+
RVDT # Rotary Variable Differential Transformer
58+
SCXI # Signal Conditioning eXtensions for Instrumentation
59+
Steinhart # Physicist name; Steinhart-Hart thermistor equation
60+
stopband # Filter term
61+
subsecond # Time measurement term; less than one second
62+
subseconds # Time measurement term; less than one second
63+
TDMS # Technical Data Management Streaming
64+
timebase # Electronics term; reference clock signal
65+
timebases # Electronics term
66+
tristated # Electronics term
67+
tristates # Electronics term (verb/noun)
68+
unflatten # Software term; deserialize/reconstruct nested data
69+
unloadable # Computing term
70+
unreserve # Software term; release a reserved resource
71+
unreserves # Software term; release a reserved resource
72+
VCXO # Voltage-Controlled Crystal Oscillator
73+
VDOP # Vertical Dilution of Precision (GPS)
74+
yoctosecond # Unit of time; SI prefix
75+
yoctoseconds # Unit of time; SI prefix
76+
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
# Sphinx directive names and option values flagged by cspell in this project's .rst files.
2+
# This is not an exhaustive list of Sphinx directives — only words that cspell does not
3+
# recognize from its built-in dictionaries and that appear in docs/ are included here.
4+
automodule
5+
backlinks
6+
bysource
7+
currentmodule
8+
genindex
9+
modindex
10+
toctree
11+
undoc

.github/workflows/build.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,11 @@ jobs:
3232
install-args: "--all-extras --with examples"
3333
- name: Run Bandit security checks
3434
run: poetry run bandit -c pyproject.toml -r generated/nidaqmx
35+
- name: Run cspell
36+
uses: streetsidesoftware/cspell-action@v8
37+
with:
38+
incremental_files_only: false
39+
check_dot_files: explicit
3540
- name: Generate ni-daqmx files
3641
if: ${{ runner.os == 'Linux' && matrix.python-version == env.codegen-python-version }}
3742
run: |

0 commit comments

Comments
 (0)