Add basic Pixi config in pyproject.toml and developer instructions#3842
Add basic Pixi config in pyproject.toml and developer instructions#3842
pyproject.toml and developer instructions#3842Conversation
llimeht
left a comment
There was a problem hiding this comment.
There are a few conceptual things that need to be figured out collectively - particularly around pinning of dependencies. cf. https://github.com/orgs/SasView/discussions/3831
|
As a reminder from our meeting, the developer environment setup is available at https://github.com/SasView/sasview/wiki/DevNotes_DevEnvironmentInstall |
| installers/credits.html | ||
| # pixi environments | ||
| .pixi/* | ||
| !.pixi/config.toml |
There was a problem hiding this comment.
Was the .pixi/config.toml file meant to be added to the repo?
| ```shell | ||
| # Clone the repository | ||
| git clone https://github.com/sasview/sasdata/ | ||
| git clone https://github.com/sasview/sasmodels/ | ||
| git clone https://github.com/sasview/sasview/ | ||
|
|
||
| # Enter the developer environment | ||
| # (This will create (or reuse) a local Pixi environment with all required dependencies.) | ||
| cd sasview |
There was a problem hiding this comment.
Nitpick: This is in both the venv and Pixi instructions. This shouldn't hold up this PR, but might make sense to add a section called Obtaining the source code. This section could also have instructions on cloning the bumps and periodictable repos.
| [tool.pixi.pypi-dependencies] | ||
| sasview = { path = ".", editable = true } | ||
| sasdata = { path = "../sasdata", editable = true } | ||
| sasmodels = { path = "../sasmodels", editable = true } |
There was a problem hiding this comment.
It might be worthwhile to include commented out bumps and periodictable to the dependency list.
Description
Adds a basic Pixi configuration to the
pyproject.tomland instructions for setting up your developer environment using Pixi. The reason for adding Pixi as an option is that many institutions are moving from conda to Pixi due to conda licensing changes.This is related to #3690, but does not resolve the issue. There is more work to do to e.g. move the CI to use Pixi, but that may require some discussion.
TODO (in a separate PR?): Figure out how to build the docs using a Pixi task and have the docs changes reflected in the GUI.
How Has This Been Tested?
I tested that I can create the developer environment, run the GUI, and run the unit tests:
I have only tested on Linux.
Review Checklist:
[if using the editor, use
[x]in place of[ ]to check a box]Documentation (check at least one)
Installers
Licensing (untick if necessary)