Skip to content

DEBUG READ THE DOCS - #7182

Closed
esc wants to merge 7 commits into
numba:masterfrom
esc:debug_rtd
Closed

esc wants to merge 7 commits into
numba:masterfrom
esc:debug_rtd

Conversation

@esc

@esc esc commented Jul 5, 2021

Copy link
Copy Markdown
Member

As title.

@esc
esc requested review from sklam and stuartarchibald as code owners July 5, 2021 08:20
@esc

esc commented Jul 5, 2021

Copy link
Copy Markdown
Member Author

Strange error on RTD when trying to install the RC:

Warning: you have pip-installed dependencies in your environment file, but you do not list pip itself as one of your conda dependencies.  Conda may not use the correct pip to install your packages, and they may end up in the wrong place.  Please add an explicit pip dependency.  I'm adding one for you, but still nagging you.
Collecting package metadata: ...working... done
Solving environment: ...working... failed

ResolvePackageNotFound: 
  - llvmlite=0.37.0rc1 -> libstdcxx-ng[version='>=9.3.0'] -> __glibc[version='>=2.17']
  - llvmlite=0.37.0rc1 -> libgcc-ng[version='>=9.3.0']

Comment thread docs/environment.yml
@@ -6,7 +6,7 @@ channels:
- numba/label/dev
dependencies:
- python=3.7

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Suggested change
- python=3.7
- python=3.7
- pip

Pip is missing as noted by conda, not sure it's related to the build problem but could well be not helping?

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

I have made the change but it did not alter any of the described symptoms.

@esc

esc commented Jul 5, 2021

Copy link
Copy Markdown
Member Author

I have requested support on this one from the kind people at Read the Docs via a support ticket.

@astrojuanlu

Copy link
Copy Markdown
Contributor

Hello folks, Juan Luis from Read the Docs here (and long user and fan of numba), I'm having a look at this issue. I see you have tried several things already, will focus on the conda error shown in @esc second commit here first. The best way to debug this will be to pull the https://github.com/readthedocs/readthedocs-docker-images corresponding to your build (most likely stable) and continue from there.

@esc

esc commented Jul 6, 2021

Copy link
Copy Markdown
Member Author

@astrojuanlu oh wow, when I called in support from Read The Docs, I was expecting to receive THAT kind of support! 😉

@astrojuanlu

Copy link
Copy Markdown
Contributor

Reproduced the conda error locally:

$ docker run -u root -it --rm --name rtd -v $(pwd):/src -p 8000:8000 readthedocs/build:stable bash
root@b54100be0026:/# cd /src/
root@b54100be0026:/src# cat environment.yml 
# This environment is used by the RTD config for PR builds. RTD uses this as the
# base environment and then adds in the sphinx etc tools on top.
# See: https://docs.readthedocs.io/en/stable/guides/conda.html
name: rtd
channels:
  - numba/label/dev
dependencies:
  - python=3.7
  - llvmlite=0.37.0rc1
  - numpy
  - numpydoc
  - setuptools
  # https://stackoverflow.com/questions/67542699/readthedocs-sphinx-not-rendering-bullet-list-from-rst-fileA
  - docutils==0.16
  # The following is needed to fix RTD.
  - conda
root@b54100be0026:/src# conda env create --quiet --name numba --file environment.yml
Collecting package metadata: ...working... done
Solving environment: ...working... failed

ResolvePackageNotFound: 
  - llvmlite=0.37.0rc1 -> libstdcxx-ng[version='>=9.3.0'] -> __glibc[version='>=2.17']
  - llvmlite=0.37.0rc1 -> libgcc-ng[version='>=9.3.0']

root@b54100be0026:/

I confirm that I am not able to reproduce this on my conda installation outside of Docker. RTD has a version that's 2 years old, I'm upgrading at the moment to see if it fixes the issue.

@astrojuanlu

Copy link
Copy Markdown
Contributor

I confirm that conda 4.10 solves the environment, while conda 4.6 doesn't. That's why switching to the testing image has no effect, because it still uses the same version. Still working on it.

@astrojuanlu

Copy link
Copy Markdown
Contributor

Good news: using mamba solves the environment without problems. @esc Do you want us to enable the CONDA_USES_MAMBA feature flag for https://readthedocs.org/projects/numba/ ? Then you can revert to 8e3ed82 and I think the problem would be solved.

@esc

esc commented Jul 6, 2021

Copy link
Copy Markdown
Member Author

Good news: using mamba solves the environment without problems. @esc Do you want us to enable the CONDA_USES_MAMBA feature flag for https://readthedocs.org/projects/numba/ ? Then you can revert to 8e3ed82 and I think the problem would be solved.

That is very interesting and maybe something for @wolfv -- I'll have to confer with the others about this. @astrojuanlu in any case, thank you very much for your support on this front!

@wolfv

wolfv commented Jul 6, 2021

Copy link
Copy Markdown

this is probably related to virtual packages (https://conda.io/projects/conda/en/latest/user-guide/tasks/manage-virtual.html#managing-virtual-packages)

The old conda doesn't add a virtual glibc package and thus the solve fails.

Not sure if they use a newer conda for the mamba image.

@wolfv

wolfv commented Jul 6, 2021

Copy link
Copy Markdown

If you want to enable the flag, you need to email rtd: patrickfuchs/buildH#68 (comment)

@astrojuanlu

Copy link
Copy Markdown
Contributor

Not sure if they use a newer conda for the mamba image.

No we don't 😓 That's why resorting to mamba is the only solution on RTD.

@jezdez

jezdez commented Jul 6, 2021

Copy link
Copy Markdown

Not sure if they use a newer conda for the mamba image.

No we don't 😓 That's why resorting to mamba is the only solution on RTD.

Do you take patches to upgrade Conda to 4.10.x? I see there is a comment about memory usage in Conda 4.7.12.1 and since then there were a number of performance improvements.

@astrojuanlu

Copy link
Copy Markdown
Contributor

I opened an issue about the conda version on the RTD Docker images here readthedocs/readthedocs-docker-images#173

Unless we fast-track the upgrade, it might take us some time to discuss and arrive at a good decision. The short-term solution is still to enable the CONDA_USES_MAMBA for this project (it can be turned off later).

@esc

esc commented Jul 7, 2021

Copy link
Copy Markdown
Member Author

@astrojuanlu we are happy to set "use mamba" temporarily until the issues with a newer conda version have been sorted out.

@astrojuanlu astrojuanlu mentioned this pull request Jul 7, 2021
@astrojuanlu

Copy link
Copy Markdown
Contributor

I just enabled mamba for the numba project on RTD, and looks like https://readthedocs.org/projects/numba/builds/14188031/ is working (triggered from #7193, feel free to close it).

@esc esc added the abandoned PR is abandoned (no reason required) label Jul 19, 2021
@esc

esc commented Jul 19, 2021

Copy link
Copy Markdown
Member Author

Solved for now, closing!

@esc esc closed this Jul 19, 2021
@astrojuanlu

Copy link
Copy Markdown
Contributor

As a follow-up to this, we are about to deploy new images with Miniconda3 4.9.2, and I confirmed locally that this fixes the problem with the numba builds without having to use mamba. Let us know if you want us to disable mamba for you after our next deploy.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

abandoned PR is abandoned (no reason required)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants