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

Difference in env between pip install -e .[develop] and pip install .[test] #1697

Closed
valeriupredoi opened this issue Aug 16, 2022 · 3 comments
Assignees
Labels
installation Installation problem testing

Comments

@valeriupredoi
Copy link
Contributor

valeriupredoi commented Aug 16, 2022

There are quite a few differences between the two installation methods:

< name: esmvalcore-test
---
> name: esmvalcore
196a197
>     - alabaster==0.7.12
197a199
>     - astroid==2.11.7
198a201,203
>     - autodocsumm==0.2.9
>     - babel==2.10.3
>     - build==0.8.0
200a206
>     - cfgv==3.3.1
201a208
>     - codespell==2.1.0
204a212,216
>     - dill==0.3.5.1
>     - distlib==0.3.5
>     - docformatter==1.4
>     - docutils==0.17.1
>     - dodgy==0.2.1
212c224,225
<     - flake8==5.0.4
---
>     - flake8==4.0.1
>     - flake8-polyfill==1.0.2
213a227
>     - identify==2.5.3
214a229
>     - imagesize==1.4.1
216a232
>     - isort==5.10.1
217a234
>     - lazy-object-proxy==1.7.1
219c236
<     - mccabe==0.7.0
---
>     - mccabe==0.6.1
224a242,246
>     - nodeenv==1.7.0
>     - pathspec==0.9.0
>     - pep517==0.13.0
>     - pep8-naming==0.10.0
>     - platformdirs==2.5.2
225a248,249
>     - pre-commit==2.20.0
>     - prospector==1.7.7
230c254
<     - pycodestyle==2.9.1
---
>     - pycodestyle==2.8.0
232c256,263
<     - pyflakes==2.5.0
---
>     - pydocstyle==6.1.1
>     - pyflakes==2.4.0
>     - pygments==2.13.0
>     - pylint==2.14.5
>     - pylint-celery==0.3
>     - pylint-django==2.5.3
>     - pylint-flask==0.6
>     - pylint-plugin-utils==0.7
233a265
>     - pyroma==4.0
246a279,289
>     - requirements-detector==0.7
>     - setoptconf-tmp==0.3.1
>     - snowballstemmer==2.2.0
>     - sphinx==5.1.1
>     - sphinx-rtd-theme==1.0.0
>     - sphinxcontrib-applehelp==1.0.2
>     - sphinxcontrib-devhelp==1.0.2
>     - sphinxcontrib-htmlhelp==2.0.0
>     - sphinxcontrib-jsmath==1.0.1
>     - sphinxcontrib-qthelp==1.0.3
>     - sphinxcontrib-serializinghtml==1.1.5
247a291
>     - toml==0.10.2
248a293
>     - tomlkit==0.11.4
253a299
>     - untokenize==0.1.1
255a302,303
>     - virtualenv==20.16.3
>     - vprof==0.38
256a305
>     - wrapt==1.14.1
258c307,309
< prefix: /home/valeriu/miniconda3/envs/esmvalcore-test
---
>     - yamllint==1.27.1
>     - yapf==0.32.0
> prefix: /home/valeriu/miniconda3/envs/esmvalcore

We don't use the [test] installation in the Github Actions, and frankly I don't see the point of it, since a user will never install Core that way. Circle tests workflow use it though, and we just hit a dependency issue reported by Manu in #1696 - picked up only in Circle CI testing, and not in GA tests. @bouweandela can we drop it and use the regular pip install editable in dev mode? I think this also relates to your --no-deps pip install issue we discussed earlier.

@bouweandela
Copy link
Member

The test extra just installs the extra dependencies needed for running the unit tests. The develop extra will install several extra tools, such as linters, spellcheckers, formatters and tools for building the documentation.

can we drop it and use the regular pip install editable in dev mode?

There is already a test on CircleCI that does that: test_installation_from_source_develop_mode

Why do you want to drop the test that installation from source works? It is actually a useful test because it tests that the dependencies of the ESMValCore are sufficient to use it (i.e. you do not need to install all our development tools to just use the ESMValCore).

@valeriupredoi
Copy link
Contributor Author

Cheers, Bouwe! OK - I'll have to dig deeper and understand why the envs are different, this shouldn't be the case - well, in an ideal world, that is 🍺

@valeriupredoi
Copy link
Contributor Author

OK not sure what was I on about when I opened this issue, but it all seems a bit silly now (from past me, that is, @bouweandela is very reasonable), closing it

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
installation Installation problem testing
Projects
None yet
Development

No branches or pull requests

3 participants