SasView 6.2.0 RC1
Pre-release
Pre-release
New in Version 6.2.0
This is a feature release, which comes with a number of new features, improvements, and bug fixes as listed below.
This version of SasView is built with Python 3.13, Sasmodels v1.1.0, Sasdata v0.12.1, and Bumps v1.0.5.
New Features
- Multiple slicers are now supported, including plot stacking and symmetric slicers by @jellybean2004 in #3758, #3806, #3832 and #3837
- The Invariant perspective has been given a major facelift, with a more user-friendly navigation. It now supports the calculation of SLD contrast from volume fraction (reverse calculation) and uncertainties on input parameters by @jellybean2004 in #3789 and #3835
- A new button is now available for any 1D plot to be sent to the Data Explorer for further analysis by @ChristianWoegerbauer in #3763
- Support for SAXS fitting v2 has been added by @klytje in #3786
Improvements
- Improvements in Corfunc slider, UI and documentation by @jellybean2004 and @DrPaulSharp in #3587, #3850, #3851, #3908
- Add Shape2SAS plugin models (not available to users) by @klytje in #3544
- Set wedge slicer fold default to True by @jellybean2004 in #3601
- Show correlation stats as a table by @rozyczko in #3754
- Make data operation window resizable and update docs by @Cristian2299 in #3755
- Implement Close Project functionality by @rozyczko in #3757
- Make Return act as Tab in parameter tables by @rozyczko in #3760
- Refactor and improve the fitting widget by @rozyczko in #3776
- Change Guinier extrapolation to radius squared by @DrPaulSharp in #3841
- Implement horizontal resize by @rozyczko in #3848
- Add Help context menu item by @rozyczko in #3849
- Remove hardcoded background colours and standardise UI by @jellybean2004 in #3862
- Restore fold for sector slicers by @jellybean2004 in #3878
- Add corrected intensities to Corfunc output by @jellybean2004 in #3907
- Improve fitting reports by @krzywon in #3870
- Normalise wedge slicer phi to (-180,180] by @jellybean2004 in #3928
- Close slicer parameter window with 2D plot by @jellybean2004 in #3930
- Redraw Box Sum after parameters are updated by @jellybean2004 in #3946
- Add tooltips to perspective UIs by @jellybean2004 in #3950
- Add documentation for CustomToolbar by @ChristianWoegerbauer in #3999
Infrastructure
- Dependabot: include all action updates in one PR by @krzywon in #3602
- Reduce duplicate CI builds and improve workflows by @llimeht in #3642
- Upgrade Python to 3.12 by @DrPaulSharp in #3649
- Set Python 3.13 for the next release by @llimeht in #3652
- Rework CI variables by @llimeht in #3653
- Update installation documentation by @DrPaulSharp in #3657
- Add Credits/Licences dialog with relevant licence and copyright data by @llimeht in #3680
- Improve PR job handling by @llimeht in #3734
- Remove requirement pins from release branches by @llimeht in #3743
- Update install instructions, README, and add resources by @TLO218 in #3753
- Add UI file for What's New window by @rozyczko in #3759
- Enable building custom branches by @wpotrzebowski in #3769
- Centralise release Python version definition by @llimeht in #3782
- Add CLI argument for data path by @krzywon in #3814
- Add Python 3.14 as a supported interpreter by @llimeht in #3822
- Improve release tooling by @llimeht in #3823
- Fix installer test job name display by @llimeht in #3840
- Fix duplicated CI job runs on pull requests by @backmari in #3866
- Release automation script rework and remove authors by @krzywon in #3872 and #3918
- Remove
DISPLAY: 99value from CI by @krzywon in #3893 - Add builds to CI for pushes to main by @DrPaulSharp in #3917
- Use the new official DigiCert action by @rozyczko in #3937
- Fix invocation of
compile_licenses.pyby @llimeht in #3938 - Remove
.coveragefile by @krzywon in #3942 - Add MPL hooks by @krzywon in #3944
- Temporarily pin and then unpin the pyausaxs version by @DrPaulSharp and @klytje in #3951 and #3953
- MacOS drag and drop installer by @wpotrzebowski in #4030
Code quality
- Make ruff more verbose about what it does not like by @llimeht in #3666
- Generalize Corfunc slider by @jellybean2004 in #3833
- Implement SliderPerspective properly by @jellybean2004 in #3859
- Clean up and reformat Invariant perspective by @jellybean2004 in #3861
- Use
GuiUtil.communicatorwherever possible by @krzywon in #3863 and #3936 - Reactivate GUI tests from the CI by @krzywon in #3867
- Clean up inversion code by @jellybean2004 in #3881
- Improve and add tests for Invariant Perspective UI and calculator by @jellybean2004 in #3888 and #3897
- Fix GSC GUI unit test by @krzywon in #3906
- Add offscreen mode to top-level
conftest.pyby @jellybean2004 in #3911 - Remove print statements from sascalc tests by @krzywon in #3922
- Clean up Size Distribution perspective UI files by @jellybean2004 in #3948
- Adds code to replace plot data for modified slicers by @DrPaulSharp in #4014
- Refactors slicers to remove unnecessary "updatePlot" calls by @DrPaulSharp in #4006
- Makes colormaptest robust against matplotlib changes by @llimeht in #4008
Bug Fixes
- Fix nightly build issues by @DrPaulSharp in #3650 and #3651
- Remove relative import in
main.pyby @DrPaulSharp in #3656 - Fix startup bug by @DrPaulSharp in #3732
- Fix stray references to
run.pyby @DrPaulSharp in #3733 - Fix C++ conversion error in plotting by @jellybean2004 in #3745
- Fix typo in the documentation for adding files via upload by @conanr-create in #3751
- Exclude C&S fitting tabs from
tab_idcalculation by @rozyczko in #3756 - Fix dispersity parameter naming for the multishell model by @dehoni in #3779
- Fix name selection issue in the Data Operations Panel by @krzywon in #3810
- Fix replace fit button handling after project load by @krzywon in #3816
- Fix keypair alias after certificate update by @rozyczko in #3817
- Restrict custom plot button to the Data Explorer by @DrPaulSharp in #3828
- Remove uv lock file by @jellybean2004 in #3852
- Fix handling of None in
kernel_moduleby @rozyczko in #3845 - Fix truthiness logic check by @rozyczko in #3846
- Fix 2D polydispersity bug by @DrPaulSharp in #3855
- Fix model reordering in constrained fitting by @rozyczko in #3857
- Fix invariant graphs by @jellybean2004 in #3869
- Fix optimizer loading after project load by @krzywon in #3871
- Fix unique ID generation for multiple slicers by @jellybean2004 in #3879
- Fix scaling bug in 1D plots by @DrPaulSharp in #3889
- Fix Dmax explorer plot turning into a scatter plot when resetting view by @jellybean2004 in #3894
- Fix error propagation in power law by @jellybean2004 in #3898
- Fix structure factor copy/paste handling by @krzywon in #3940
- Don't include magnetism parameters in pure Python models by @pkienzle in #3961
- Release 6.2.0 polyhedron html by @sara-mokhtari in #3972
- Change docpath handling to accept absolute-looking paths within the d… by @llimeht in #3992
- Fix private names config for sphinx (for 6.2.0) by @llimeht in #3994
- Resized images and changed to a light background for What's new by @jellybean2004
- What's New polyhedron image switched to light background by @sara-mokhtari in #4002
- 3968: PD function shadowing [Release 6.2.0] by @krzywon in #4004
- Handles encoding issues in loading credits.html by @llimeht in #4015
- Adds example data from SasData repository by @dehoni in #4033
- Fixes mask editor bug by @DrPaulSharp in #4024
- Fixes symmetric wedge phi plots by @jellybean2004 in #4029
- Checks slicer children for removal by @jellybean2004 in #4025
- Fixes bugs for cloned slicer plots by @DrPaulSharp in #4021
- Update Licence with number of inst by @jellybean2004 in #4056
- SAXS fitting What's New by @krzywon in #4058
- Amend docs for invariant slider and image by @jellybean2004 in #4063
New Contributors
- @TLO218 made their first contribution in #3753
- @ChristianWoegerbauer made their first contribution in #3763
- @Cristian2299 made their first contribution in #3755
- @sara-mokhtari made their first contribution in #3972
Full Changelog: v6.1.3...v6.2.0rc1