[Nexus] Release of NeXpy v2.1.0

Osborn, Raymond rosborn at anl.gov
Wed Oct 7 02:59:24 BST 2026


I am pleased to announce the release of v2.1.0 of the NeXpy and nexusformat packages.


At the recent NIAC meeting, there was concern about the state of NeXus validation tools now that cnxvalidate is no longer supported. Although NeXpy has had validation tools since v2.0.0, there were reports of Python exceptions suggesting it was not sufficiently robust to handle all files. I have now looked into those issues and discovered that they were either due to poor handling of anomalies, such as symbol tables that contained no symbols, or linting errors in the NXDL files themselves. I have now performed a thorough review of the code, with the support of my favorite LLM, and can report that the tools now work, without exception, on all the files that are in the NeXus ‘exampledata’ repository, both regular and auto-generated files. Because some of the issues were with malformed NXDL files, I have now added a linting option.


There are several command-line scripts, which can also be run within the NeXpy GUI Validation Panel.

  *
nxcheck
Checks a group within a NeXus file against the base class definitions, reporting on missing fields or groups, invalid values, etc.
  *
nxvalidate
Validates a NeXus file against an application definition, which is either read from the file’s ‘definition’ field or specified explicitly.
  *
nxinspect
Output the contents of a NXDL base class.
  *
nxlint
Checks NXDL files for structural errors, such as violations of the NXDL schema.

The latest NeXus definitions are stored within the package, but it is possible to specify a different set of definitions as a command-line switch or an environment variable. Further details are available online (https://nexpy.github.io/nexpy/).


If you encounter any bugs or believe any of the warnings/errors are incorrect, please report them to the nexusformat issues page:


https://github.com/nexpy/nexusformat/issues


[Pasted Graphic 27.png]


Installation

NeXpy is available on PyPI and conda-forge.

 $ pip install nexpy

or

 $ conda install -c conda-forge nexpy

If you don’t intend to use the NeXpy GUI, the command-line tools can be installed with

 $ pip install nexusformat

or

 $ conda install -c conda-forge nexusformat


With best regards,

Ray Osborn

--

Ray Osborn, Senior Scientist

Materials Science Division

Argonne National Laboratory

Argonne, IL 60439, USA

Phone: +1 (630) 252-9011

Email: ROsborn at anl.gov<mailto:ROsborn at anl.gov>



-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.nexusformat.org/pipermail/nexus/attachments/20261007/90647c20/attachment-0001.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: img-0ff60d3f-55ca-437b-b396-6764c26975c2
Type: application/octet-stream
Size: 284539 bytes
Desc: img-0ff60d3f-55ca-437b-b396-6764c26975c2
URL: <https://lists.nexusformat.org/pipermail/nexus/attachments/20261007/90647c20/attachment-0001.obj>


More information about the NeXus mailing list