-
Notifications
You must be signed in to change notification settings - Fork 128
Use Mslice as conda package instead of an external interface #38299
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
@@ -0,0 +1 @@ | |||
- MSlice is now installed via Conda as part of Mantid workbench and not compiled as an external project anymore. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Will a user experience any different behaviour after this change? i.e do we need a release note detailing the change.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The user should not see any difference in behaviour to before.
For developers, there are two differences: when using the mantid-developer package, they will see a warning when clicking on MSlice
in the menu instead of the interface. Since MSlice is not developed through the mantid repo, but has its own repo, most developers will not even notice this. The other change is that MSlice is not downloaded from the repo after SHA changes (there won't be SHA changes anymore).
9623964
to
cf3a54d
Compare
Co-authored-by: Jonathan Haigh <35813666+jhaigh0@users.noreply.github.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good, one small change request where the mantid channel has been added where it's not needed.
Co-authored-by: thomashampson <thomas.hampson@stfc.ac.uk>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Tested installing the packages from conda and works as expected. Only thing was that when installing the packages we uploaded to @thomashampson 's conda channel, we also had to include -c mantid
so mslice
could be installed.
I also wondered if including mslice with mantidworkbench will be the intended behaviour forever? I think the idea would be to install workbench then install the interface packages that you wanted ontop.
For now, it is better to automatically install MSlice with Mantid as users will expect it. If there is a general change in Mantid so that users are only installing interfaces they are interested in, it will be easy to change this behaviour for MSlice. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This simplifies the way we install mslice and will make it easier to move it to an optional component if required. It does mean that the mantid
channel is always required when installing mantidworkbench
, but this will only affect anyone who is e.g. using a personal channel for testing purposes.
I'm squashing the commits because they're a bit messy and I find that a clean history is especially important in the conda recipes and build scripts.
This is a squashed versino of mantidproject#38299 Moved mslice from mantid to mantidworkbench recipe Add mantid channel to conda build command Only pass channel to mantid-developer and mantidworkbench Removed quotation marks from channel option Added space after debug option back Use classic solver with mamba Corrected solver argument Install classic solver Add mantid channel via conda config Add conda-forge after mantid for higher priority Use Mslice with seperate_mslice_test label Updated copyright year Only install mslice for workbench Added release note Use mantid/label/main instead of mantid Updated installers and pinned mslice to 2.10 Check for correct MSlice version before building release of Mantid Updated mslice interface Update dev-docs/source/ReleaseChecklist.rst Co-authored-by: Jonathan Haigh <35813666+jhaigh0@users.noreply.github.com> Update installers/conda/win/create_package.sh Co-authored-by: thomashampson <thomas.hampson@stfc.ac.uk>
…roject#38299) Install MSlice as a runtime dependency of mantidworkbench MSlice will no longer be installed via cmake as an external interface. Instead it is now a runtime dependency of the mantidworkbench conda package. Co-authored-by: Jonathan Haigh <35813666+jhaigh0@users.noreply.github.com> Co-authored-by: thomashampson <thomas.hampson@stfc.ac.uk>
Description of work
Summary of work
MSlice is now installed via conda and not as an external interface anymore.
Fixes #38215.
To test:
Verify that in Mantid workbench, the MSlice interface can still be opened. De-install the
mslice
package from a conda environment with the workbench package installed. When you now try to open the MSlice interface, there should be a warning 'Mslice is not available', but no crash. In a mantid-developer environment,mslice
should not be available without being manually installed by the user. Again, there should be a warning 'Mslice is not available', but no crash.The packages can be found here: https://builds.mantidproject.org/job/build_packages_from_branch/944/
This does not require release notes because this is not a change that is visible to the user.
Reviewer
Please comment on the points listed below (full description).
Your comments will be used as part of the gatekeeper process, so please comment clearly on what you have checked during your review. If changes are made to the PR during the review process then your final comment will be the most important for gatekeepers. In this comment you should make it clear why any earlier review is still valid, or confirm that all requested changes have been addressed.
Code Review
Functional Tests
Does everything look good? Mark the review as Approve. A member of
@mantidproject/gatekeepers
will take care of it.Gatekeeper
If you need to request changes to a PR then please add a comment and set the review status to "Request changes". This will stop the PR from showing up in the list for other gatekeepers.