This repository has been archived by the owner on Nov 7, 2024. It is now read-only.
Releases: ess-dmsc/nexus-constructor
Releases · ess-dmsc/nexus-constructor
v2.2.1
This is the final release to support NXgeometry. Instead, templates should use the field depends_on and NXtransformations to position components, and use NXoff_geometry to describe volume shapes. NXcylindrical_geometry can be used for exactly cylindrical components.
There are various bug fixes included in this release compared to v2.2.0.
v.2.2.0
v2.1.0
What's Changed
- ECDC-3189: Adding se00 writer module by @kmurica in #1010
- fixing units bug by @kmurica in #1011
- Unit magnitude consideration for slits and box geometries by @kmurica in #1012
- ECDC-3262: Enable NeXus skeleton file creation by @kmurica in #1013
- ECDC-3280: Adding f144 stream module by @kmurica in #1015
- ECDC-3265 fixing se00 type by @hurvan in #1014
- ECDC-3282: Adding repetition of box shape geometry for NXdetector components by @kmurica in #1016
Full Changelog: v2.0.0...v2.1.0
NeXus Constructor v2.0.0
News
A major overhaul of the NeXus constructor has been done in 2021 and 2022.
The most impactful changes that the user will directly notice are following:
- Changes to NeXus tree structure and tree view. It is now possible to build any arbitrary NeXus structure by adding and editing groups, components, transformations and file writer modules.
- Upgrade from PySide2 to PySide6.
- Overall improvements to the graphical user interface such as component highlights in 3D view, colors, camera settings and many more.
- Countless bug fixes.
What's Changed
- Fixing windows-specific transformation view UI issue by @rerpha in #694
- 662 - fixing array attributes not being set correctly by @rerpha in #691
- Adding general information about purpose of nexus constructor by @rerpha in #698
- #699: Adding "getting started" page by @rerpha in #700
- Make start guide link more prominent in readme by @matthew-d-jones in #704
- Encourage virtual environment usage by @mattclarke in #705
- Fix test file locations by @mattclarke in #706
- Update README.md by @mattclarke in #707
- Removed explicit instructions for interviews by @mattclarke in #713
- Attempting to make nexus-constructor.py work from any directory by @rerpha in #708
- Use streaming-data-types module from pypi by @matthew-d-jones in #725
- Model change part 1: Add component window by @rerpha in #695
- Disabling nexus actions + silx treeview by @rerpha in #696
- 726 shape model change by @rerpha in #735
- 730: transformations model change by @DolicaAkelloEgwel in #738
- 728 Fixing edit component window by @rerpha in #737
- Model change cleanup by @rerpha in #743
- 730: Preserving distance information by @DolicaAkelloEgwel in #742
- 730: Distance change updates Instrument View by @DolicaAkelloEgwel in #746
- Make default translation along z by @matthew-d-jones in #747
- Add flake8 to precommit hook by @matthew-d-jones in #748
- Add more mypy configuratino by @matthew-d-jones in #750
- 730: Transformation magnitudes in UI value spinbox by @DolicaAkelloEgwel in #753
- 754: Restore transformation view tests by @DolicaAkelloEgwel in #755
- 736 pixel data by @DolicaAkelloEgwel in #756
- Get field value fix by @DolicaAkelloEgwel in #759
- 741 use numpy dtypes by @DolicaAkelloEgwel in #761
- 731: Fix attributes by @DolicaAkelloEgwel in #762
- Refactor extract dataset and attribute value types by @matthew-d-jones in #765
- Try using 7zip for archiving on windows by @matthew-d-jones in #766
- Refactor top level of model by @matthew-d-jones in #767
- Add as_dict methods to some model classes by @matthew-d-jones in #770
- 763 chopper shapes by @DolicaAkelloEgwel in #764
- 772: Fix add row by @DolicaAkelloEgwel in #775
- 771: Edited component loses transformations by @DolicaAkelloEgwel in #776
- Reduce dependency on external code by @matthew-d-jones in #777
- #745: Fixing external transformations by @rerpha in #752
- 773: Remove no shape cube when component is edited by @DolicaAkelloEgwel in #780
- 714: Fix zoom to component by @DolicaAkelloEgwel in #781
- Fixing typos in ev42 advanced options by @rerpha in #784
- #769: Storing attribute type information + adding asdict method for attrs by @rerpha in #785
- 782: Load from JSON prototype by @DolicaAkelloEgwel in #788
- Fix freezing app on windows by @matthew-d-jones in #794
- updating to 5.15.0 by @rerpha in #795
- 757: Some work on reading Transformations by @DolicaAkelloEgwel in #792
- 799: JSON component depends on by @DolicaAkelloEgwel in #801
- 800: Read OFF Geometry from JSON by @DolicaAkelloEgwel in #802
- 800: Load cylinder information from JSON by @DolicaAkelloEgwel in #804
- Fix coverage reporting by @rerpha in #812
- Close edit or attrs window when the parent dialog is closed by @rerpha in #806
- Fix for JSON loading warning dialog immediately closing after being shown by @rerpha in #810
- 786 missing as dicts by @rerpha in #793
- 805: Loading JSON pixel data by @DolicaAkelloEgwel in #807
- 814 Fix set_field_value by removing optional dtype and making dtype required by @rerpha in #815
- Use official flake8 precommit hook by @matthew-d-jones in #818
- Extract strings into constants wherever possible, use ValueTypes class by @rerpha in #817
- 813: Pixel mapping loading by @rerpha in #819
- Output forwarder config flatbuffer file by @matthew-d-jones in #822
- Model change cleanup by @rerpha in #820
- 824 json loading fields by @rerpha in #826
- ECDC-2007 Fix linter and macOS build issues by @amues in #828
- Use virtualenv for OSX CI builds by @matthew-d-jones in #831
- Correct transformations by @matthew-d-jones in #830
- 799 json depends on loading by @rerpha in #825
- Update to latest pyside to avoid Mac-based crash by @mattclarke in #838
- Implement saving and loading depends_on chains of transformations by @matthew-d-jones in #834
- changing datatype check to check for integers and not floats by @kmurica in #842
- Correct link to jenkins build badge by @ebadkamil in #845
- Add isort as a pre-commit hook by @ebadkamil in #849
- 843 fix json warning bug by @kmurica in #850
- 722 Show Button labels in ToolBar by @ebadkamil in #847
- Update Getting started README by @ebadkamil in #846
- 717 component edit add confirm window by @kmurica in #848
- 719 Raise buttons which are currently selectable by @ebadkamil in #851
- ECDC-2397: Change toolbar button background color if enabled by @ebadkamil in #853
- ECDC-2448: Add About Window by @ebadkamil in #854
- Ecdc 2395 fix mypy errors by @kmurica in #855
- Updated json structure by @SkyToGround in #856
- Fix minor UI issues by @SkyToGround in #857
- Various minor bug and ui fixes. by @SkyToGround in #858
- ECDC-2406: Remove file writer control functionality. by @ebadkamil in #860
- ECDC-2700_fixing_hdf5_links by @kmurica in #859
- Rearrange json utilities module by...
V1.3.0
New Features
- Live File-writer control window - #635
- Adding persistent settings for filewriter control window - #656
- Maximising main window by default - #638
- Mantid IDF support - #655
- Non-scalar magnitudes now show UI values which update the 3d view, as well as on file load - #647
- Mesh generation optimisations - #682
- Default type in stream objects is now
double
- #667
Bug Fixes
- Units not being displayed properly for transforms - #646
- Recursive, relative transforms now working - #651
- Units not validated against correctly - #675
- Byte-string values not displayed correctly in field widget - #677
- 3d view not updating when link is deleted - #684
- edit component button not greyed out when transformation is selected - #680
- end-of-chain depends on transformation error - #674
- transformations not being deleted when component is deleted (high priority as it renders the program unusable) - #672
V1.2.0
New features
- Pixel data is now filled in when editing a component - #522
- Fields are now filled in when editing a component
- Attributes can now be set on fields - #436
- Transformations are now loaded into the UI when a file is loaded - #512
value_units
can now be set on f142 fields - #588- Higher precision for scalar vector values - #555
- User can now zoom into components - #582
senv
stream support added - #556- Default broker can be used for f142 json output - #592
- Streams, arrays, groups, links etc can now be used for transformation magnitude - #609
- Transformation view UI improvements - #511
Bug fixes
- Scaling/DPI issues - #545
- Type conversion - #515, #519
- Preventing dependee_of field from being added to the filewriter JSON - #521
- Shapes not clearing after a new file is loaded - #528
- (Windows) - chopper drawing issues - #529
- Some values not changing when updating components - #533
- Exceptions when cylinder geometry based component is edited - #539
- UI issues when editing component, ok button greyed out - #541
- Edit component window no longer has "add component" as the title - #547
- (Windows) component selection highlight not working, UI improvements in general - #549
- Stream groups, loading and writing incorrectly - #558
attrs
validity not reevaluating when dtype changes - #581- Loading bytestrings from nxs file - #586
- Blank options no longer being added to filewriter JSON - #589
- Misleading placeholder for topic in stream options - #591
- Stopping NC-specific
NX_class
es from being added to JSON, causing potentially incorrectNX_class
values - #605 - Axis direction when editing a cylinder with zero height - #610
V1.1.0
V1.0.1
V1.0.0
First release for the NeXus-constructor.
Binaries available for Linux and Windows.
Known bugs:
- Adding a transform in the "add component" or "edit component" window does not work. Workaround: add the transform after adding the component in the left pane. (#112)
- Several QML warnings (see current issues #136, #179, #149)
- Program segfaults after selecting a file twice (#169)
Features added:
- Unit validation
- Dummy object for no geometry component
- Various UI changes such as scrollbars and removing bounce animations
- Selectable text fields
- File validation
- Executables on every PR build
- Updated to Qt 5.12.2
- Axis are now displayed in 3d view
Developer notes:
- Removed
vector
class and replaced with Qvector3D - Unit tests added and some code refactored in the data model to make more readable and testable
- General OOP changes
- Added black formatting
- More documentation
- Wiki addition