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

added optimal install instructions for install from conda #1675

Closed

Conversation

valeriupredoi
Copy link
Contributor

@valeriupredoi valeriupredoi commented Jun 9, 2020

Before you start, read CONTRIBUTING.md and the guide for diagnostic developers.

Please discuss your idea with the development team before getting started, to avoid disappointment later. The way to do this is to open a new issue on GitHub. If you are planning to modify an existing functionality, please discuss it with the original author(s) by tagging them in the issue.


Tasks

  • Create an issue to discuss what you are going to do, if you haven't done so already (and add the link at the bottom)
  • Give this pull request a descriptive title that can be used as a one line summary in a changelog
  • Make sure your code is composed of functions of no more than 50 lines and uses meaningful names for variables
  • Circle/CI tests pass. Status can be seen below your pull request. If the tests are failing, click the link to find out why.
  • Preferably Codacy code quality checks pass, however a few remaining hard to solve Codacy issues are still acceptable. Status can be seen below your pull request. If there is an error, click the link to find out why. If you suspect Codacy may be wrong, please ask by commenting.
  • Please use yamllint to check that your YAML files do not contain mistakes
  • (Only if really necessary) Add any additional dependencies needed for the diagnostic script to setup.py, esmvaltool/install/R/r_requirements.txt or esmvaltool/install/Julia/julia_requirements.txt (depending on the language of your script) and also to package/meta.yaml for conda dependencies (includes Python and others, but not R/Julia)
  • If new dependencies are introduced, check that the license is compatible with Apache2.0

New recipe/diagnostic

  • Add documentation for the recipe to the doc/sphinx/source/recipes folder and add a new entry to index.rst
  • Add provenance information

Modified recipe/diagnostic

  • Update documentation for the recipe to the doc/sphinx/source/recipes folder
  • Update provenance information if needed
  • Assign the author(s) of the affected recipe(s) as reviewer(s)

New data reformatting script

  • Test the CMORized data using recipes/example/recipe_check_obs.yml, to make sure the CMOR checks pass without errors
  • Add the new dataset to the table in the documentation
  • Tag @mattiarighi in this pull request, so that the new dataset can be added to the OBS data pool at DKRZ and synchronized with CEDA-Jasmin

Modified data reformatting script

  • Test the CMORized data using recipes/example/recipe_check_obs.yml, to make sure the CMOR checks pass without errors
  • Tag @mattiarighi in this pull request, so that the updated dataset can be added to the OBS data pool at DKRZ and synchronized with CEDA-Jasmin

If you need help with any of the tasks above, please do not hesitate to ask by commenting in the issue or pull request.


A lot of the discussion that led to this PR is here ESMValGroup/ESMValCore#660

@mattiarighi @bouweandela @jvegasbsc @schlunma need you guys to test the installation from conda (not from source) following these steps pls, can you pls use \time when running conda install, it'd be great to get a feel of how it performs on various platforms 🍺


.. code-block:: bash

ln -s $(pwd)/julia-*/bin/julia $(home)/miniconda3/bin/julia
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This holds for the base environment, shouldn't this be: miniconda3/envs/esmvaltool/bin/ or another env?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

no, you don't need to create an environment when installing directly from conda, it's just like installing any other software package by typing just one command (well, three commands in our case) 🍺

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There is no need to try to link julia to the conda environment: so long as the julia executable can be found in one of the directories listed in PATH things should work fine

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think it would be better to just point users to the site with the julia installation instructions: https://julialang.org/downloads/platform/ or https://julialang.org/downloads/platform/#linux_and_freebsd if we want to be specific. If these instructions change, ours will become outdated.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

no, if those change we change the documentation too; man, a lot of the users prefer copy-paste instructions and going to see another set of instructions is already tedious for them 🍺

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There is no need to try to link julia to the conda environment: so long as the julia executable can be found in one of the directories listed in PATH things should work fine

correct! change that line if you think it's better to append to $PATH, man, up to you

Comment on lines +45 to +46
by ESMValTool and its installation in advance of ``esmvaltool`` helps ``conda`` solve the
environment much faster):
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

While this works at the moment (see ESMValGroup/ESMValCore#660) this is usually not the most reliable way to install the package. There have been several occasions where conda failed to install esmvaltool into existing environments, because it was incompatible with the packages already installed and didn't know how to resolve that.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

that is not cool at all on conda's part because it should supersede those dependencies that are already installed from installing esmvalcore gah

@bouweandela
Copy link
Member

@valeriupredoi I think this can be closed, because I added very similar instructions for installing julia in #1971 on your request. What do you think?

@valeriupredoi
Copy link
Contributor Author

yep we can bin it 🗑️

@valeriupredoi valeriupredoi deleted the instructions_optimal_installation_from_conda branch February 9, 2021 17:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants