Skip to content
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

Installation instructions #139

Closed
bwohlberg opened this issue Dec 17, 2021 · 14 comments
Closed

Installation instructions #139

bwohlberg opened this issue Dec 17, 2021 · 14 comments
Assignees
Labels
documentation Improvements or additions to documentation
Milestone

Comments

@bwohlberg
Copy link
Collaborator

bwohlberg commented Dec 17, 2021

The installation instructions need to be updated to reflect the new recommended way of installing jaxlib. Updating of the astra-toolbox installation instructions should also be considered since the conda version (2.0.0) is now substantially more recent than the pip version (1.8b5).

Also note https://scico.readthedocs.io/en/latest/contributing.html#scico-dev-contributing does not mention dev_requirements.txt and it probably should.

@bwohlberg bwohlberg added the documentation Improvements or additions to documentation label Dec 17, 2021
@smajee
Copy link
Contributor

smajee commented Dec 17, 2021

I would also add cached_property in example_requirements since the PyPi version of xdesign doesn't seem to include this and I always get a missing cached_property error whenever I do a fresh installation.
Has anyone else faced this as well?

@bwohlberg
Copy link
Collaborator Author

It would be best to also report a bug at the xdesign repo. I see that cached-property is listed in their requirements.txt file, so the problem may be due to the absence of any install_requires section in their setup.py.

@smajee
Copy link
Contributor

smajee commented Dec 18, 2021

Good idea. Added an issue (AdvancedPhotonSource/xdesign#77) in the xdesign repo.

@Michael-T-McCann
Copy link
Contributor

Michael-T-McCann commented Dec 20, 2021

Specifically what kind of install has incorrect instructions? From pip or from github? GPU or CPU? Developer or user?

@bwohlberg
Copy link
Collaborator Author

For jaxlib, we currently recommend something like

pip install --upgrade "jaxlib==0.1.70+cuda110" -f https://storage.googleapis.com/jax-releases/jax_releases.html

but it seems that

pip install --upgrade "jax[cuda]" -f https://storage.googleapis.com/jax-releases/jax_releases.html

is now a cleaner way of installing, no? Or does this only upgrade jax, and not the jaxlib dependency?

For astra-toolbox, we currently recommend

conda install -c astra-toolbox/label/dev astra-toolbox

but the version available via pip is now a lot more recent.

@Michael-T-McCann
Copy link
Contributor

The cleaner way of installing jax will (I believe) give you the latest version of jax and jaxlib, not the pinned one needed by SCICO.

For astra, we currently recommend the conda version and conda version is more recent. This is fine, right?

@bwohlberg
Copy link
Collaborator Author

You're right. I had just assumed that we were recommending pip installation since that's the default for everything else.

OK, then I guess nothing to do here other than to add a note on xdesign requirements as pointed out by @smajee.

@smajee
Copy link
Contributor

smajee commented Dec 20, 2021

Wouldn't we would also have to modify the GPU install command to reflect the newer version of jax in scico : pip install --upgrade "jaxlib==0.1.75+cuda110" -f https://storage.googleapis.com/jax-releases/jax_releases.html (0.1.75 from 0.1.70)?

@bwohlberg bwohlberg added this to the Release 0.0.2 milestone Dec 21, 2021
@smajee
Copy link
Contributor

smajee commented Dec 29, 2021

It seems that we do recommend installation of the example_requirements via pip in docs/source/contributing.rst. This includes the astra-toolbox which should be installed via conda.

The instructions in https://scico.readthedocs.io/en/latest/install.html#additional-dependencies seem to be correct.

Should I add a note in docs/source/contributing.rst that astra should be installed via the conda command and the rest via pip using example_requirements.txt?

Another way to handle this would be to 1) split example_requirements.txt into example_requirements_pip.txt and example_requirements_conda.txt or 2) put it in a conda environment.yml file and specify the different channels.

@bwohlberg
Copy link
Collaborator Author

For now, let's just add the note to docs/source/contributing.rst.

When possible, though, we should discuss

  • trying to avoid the partial duplication of installation instructions between the main docs and contributing docs, and
  • whether it's worth implementing the splitting of the pip requirements files or using a conda environment.yml file.

@smajee
Copy link
Contributor

smajee commented Dec 30, 2021

Added a note in docs/source/contributing.rst for now.

There seem to be more duplications regarding building of docs. We should discuss how to consolidate these and avoid duplications. My inclination is to:

  1. Move docs build instructions to the contributing/developer section since it is unlikely that normal users will do this
  2. Move the example specific dependency installation to the separate example section and a link in the installation section that points to this

@bwohlberg
Copy link
Collaborator Author

Agreed.

@smajee
Copy link
Contributor

smajee commented Jan 4, 2022

Made the changes in pull request #154

@smajee
Copy link
Contributor

smajee commented Jan 16, 2022

Fixed in pull request #154

@smajee smajee closed this as completed Jan 16, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation
Projects
None yet
Development

No branches or pull requests

3 participants