Skip to content

update doxygen version #8151

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

Closed
burlen opened this issue May 1, 2021 · 17 comments · Fixed by #7421
Closed

update doxygen version #8151

burlen opened this issue May 1, 2021 · 17 comments · Fixed by #7421
Labels
Accepted Accepted issue on our roadmap Support Support question

Comments

@burlen
Copy link

burlen commented May 1, 2021

Details

Expected Result

With the versions of Doxygen that ship with Ubuntu 20.04 and other recent OS's Doxygen parses our code correctly.

Actual Result

On readthedocs.org (and other Ubuntu 18.04 hosts) Doxygen crashes on our code with the following error:

Preinput buffer overflow, can't enlarge buffer because scanner uses REJECT

See: https://readthedocs.org/api/v2/build/13651770.txt

We desperately need to have the version of doxygen updated in our readthedocs.org environment or to be running on a newer OS image such as 20.04. Can you please help us accomplish one of these?

@burlen
Copy link
Author

burlen commented May 1, 2021

I see that Ubuntu 20.04 is available here: https://github.com/readthedocs/readthedocs-docker-images

I think that will solve my problem but I don't know how to configure our readthedocs.org project to use that version of Ubuntu. Is it possible?

@astrojuanlu
Copy link
Contributor

Hi @burlen, thanks for using Read the Docs!

You should be able to use that image by putting

build:
  image: testing

in your .readthedocs.yaml, see https://docs.readthedocs.io/en/stable/config-file/v2.html#build-image

@stsewd stsewd added the Support Support question label May 3, 2021
@burlen
Copy link
Author

burlen commented May 3, 2021

@astrojuanlu Thanks for the quick reply. That's great news!

I tried adding the build section as suggested, Unfortunately no change. I'm pasting my yml below. Also, I've added lines to my conf.py to cat /etc/issue and doxygen --version to verify which OS and Doxygen we are getting. After adding the build section, we are still on Ubuntu 18.04.5 LTS and Doxygen 1.8.13.

Let me know if you have any idea why id didn't work?

version: 2

build:
  image: testing

sphinx:
  configuration: doc/rtd/conf.py

python:
  version: 3.8
  install:
    - requirements: doc/rtd/requirements.txt

@stsewd
Copy link
Member

stsewd commented May 3, 2021

Looks like our settings are one version behind

'readthedocs/build:stable': DOCKER_IMAGE_SETTINGS.get('readthedocs/build:5.0'),
'readthedocs/build:latest': DOCKER_IMAGE_SETTINGS.get('readthedocs/build:6.0'),
'readthedocs/build:testing': DOCKER_IMAGE_SETTINGS.get('readthedocs/build:7.0'),

/cc @humitos

@humitos
Copy link
Member

humitos commented May 4, 2021

@stsewd Hrm, I also thought we were using 8.0 (running Ubuntu 20.04) for testing at this point. I think we prepared everything to do the upgrade (that's why README says that) but then we realized that it could break builds, we started talking about the new docker image structure to avoid these breaks but we haven't implemented that structure yet.

@drewcassidy
Copy link

Is there any ETA on a 20.04 docker image being available?

@burlen
Copy link
Author

burlen commented May 26, 2021

Yes, an ETA would be very helpful for planning purposes. It would be extremely helpful if this issue (or is there another one I should watch?) were updated when 20.04 is available.

@stale
Copy link

stale bot commented Jul 21, 2021

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@stale stale bot added the Status: stale Issue will be considered inactive soon label Jul 21, 2021
@astrojuanlu astrojuanlu added the Accepted Accepted issue on our roadmap label Jul 21, 2021
@stale stale bot removed the Status: stale Issue will be considered inactive soon label Jul 21, 2021
@burlen
Copy link
Author

burlen commented Jul 26, 2021

This issue still needs to be resolved, because of the old doxygen/Ubuntu version we are running it manually and uploading a tarball. Very much less than ideal. I had hoped for a quick resolution to this since it had seemed like a newer ubuntu version was in the works. any progress? eta?

@stsewd
Copy link
Member

stsewd commented Jul 26, 2021

We are planning on releasing a new docker image in the following weeks, but not sure if it includes a new testing image as well, /cc @humitos

@burlen
Copy link
Author

burlen commented Jul 26, 2021

@stsewd thanks for the update. The newer doxygen package versions in 20.04 will resolve my issue. I don't expect any breakages re other packages/versions. I am happy to switch as soon as it is available.

@humitos
Copy link
Member

humitos commented Jul 27, 2021

We are planning on releasing a new docker image in the following weeks, but not sure if it includes a new testing image as well, /cc @humitos

We are still discussing how to do the rollout with a newer Ubuntu version. I don't think we will upgrade testing to Ubuntu 20.04 LTS, tho. We should implement https://docs.readthedocs.io/en/stable/development/design/build-images.html directly, instead.

@vhirtham
Copy link

vhirtham commented Jul 31, 2021

@burlen No need to wait for a new image with Ubuntu 20.04 if you only need it for a higher Doxygen version. I also had issues with my documentation that builds fine on my local machine with version 1.8.17 but isn't compatible with Doxygen 1.8.13. However, I found a simple solution:
Since Doxygen is now available on conda-forge and readthedocs has conda support, you can use all newer doxygen versions (1.8.13 up to 1.9.1) in your RTD build. Just add the following line to your RTD config file:

conda:
  environment: <DIRECTORY>/environment.yml

Now create the file <DIRECTORY>/environment.yml in your repo with the following content:

name: RTD
channels:
  - conda-forge
  - defaults
dependencies:
  - python=3.8
  - doxygen=<VERSION>

RTD should now build your Doxygen documentation using the version you specified. 😉

@njzjz
Copy link

njzjz commented Sep 13, 2021

Since Doxygen is now available on conda-forge and readthedocs has conda support...

Got a memory error, though...

Command killed due to excessive memory consumption

@astrojuanlu
Copy link
Contributor

@njzjz Please send us a support request to enable mamba for your project :)

amcadmus pushed a commit to deepmodeling/deepmd-kit that referenced this issue Sep 14, 2021
* bump doxygen and sphinx version on RTD

This fixes #847.

The idea comes fom readthedocs/readthedocs.org#8151 (comment).

* use version 2

* add other dependencies

* fix error

* fix path

* got a memory error...

* 3.9 is not supported

* Revert "3.9 is not supported"

This reverts commit 3732e62.

* Revert "got a memory error..."

This reverts commit cb596f1.
@astrojuanlu
Copy link
Contributor

astrojuanlu commented Oct 13, 2021

For subscribers of this issue, we have now shipped a new build image based on Ubuntu 20.04. You can opt in by writing this on your .readthedocs.yaml:

build:
  os: "ubuntu-20.04"
  tools:
    python: "3"

With that, you will get the latest Doxygen version on this Ubuntu version, which is doxygen 1.8.17. Please let us know if you have any trouble with it.

Read more on our docs.

@burlen
Copy link
Author

burlen commented Oct 14, 2021

@astrojuanlu @humitos This worked for me! Thank you so much!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Accepted Accepted issue on our roadmap Support Support question
Projects
None yet
Development

Successfully merging a pull request may close this issue.

7 participants