-
Notifications
You must be signed in to change notification settings - Fork 170
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
Update requirements.txt to Ubuntu 22.04 #465
Update requirements.txt to Ubuntu 22.04 #465
Conversation
Also, it is highly wanted if someone to verify these changes won't break CircleCI builds |
#466 to get CI to run. The last time we made updates to this, alot of the website broke. I'd just go through the website for a few minutes and make sure you don't run into any weird issues. The only one I see from CI right now is below on the build and install page (there used to be little paragraph signs). I don't care about the symbol; remove it if you like. I just don't want a missing unicode icon.
CI runs focal, so should that be updated in the circleci config?
I just noticed this issue as well when building another tutorial. This looks related to the Collision Detector node PR where we split up the pages |
I think you also need to update the install instructions in circleci and the instructions in the readme |
I've made side-by-side comparison of 2 Docker containers: vanilla There are the following changes I've noted: Change 1 Actually, in
However, for some reasons inside vanilla Sphinx 3.5.0, we did not see the support of newer claimed Therefore, it seems that bug in render/fonts over the bug Sphinx 3.5.0 gives us a correct way to build html. Change 2 Change 3 Moreover, if I click to the found with some keyword page, the results are not being highlighted on it, as it made on vanilla configuration: I could add "...?highligh=navigation" post-fix in the address-string and the results will be highlighted for updated version too, but this is not made by-default.
I've tried to align it with currently officially supported by ROS2-Rolling Jammy, but this might be somehow not straightforward, as I thought.
Fixed by #464 From the above, it seems like we are opening a can of worms, when trying to update the Sphinx, which will take a lot of analysis and resources spent. So, for now, I'd like to think about to postpone the task for better times, or when we will have a need to update this: now despite of installation errors, the configuration works on CI, so it is really questionable in the reasonableness to do this. |
Proposed solution
This is attempt to fix the #364 , which
requirements.txt
is out of date for Ubuntu 22.04.The following pip3 requirements were updated (empty fields in columns 2 and 3 mean that package version is unspecified):
4.28.0
is incompatible with Sphinx abovev3.6
, so updating the version and fix it to the currently working4.35.0
0.15<=docutils<0.20
. The docutils version can not be relaxed, assphinx 5.3.0
,myst-parser 1.0.0
andsphinx-rtd-theme
have restrictions from above on the upper version of it, so switching it to the next sub-version.v4.2.0
. However, myst-parser 1.0.0 requires5<=sphinx<7
and latest breathe (4.35.0) is not compatible withSphinx==5.0.0
, so choosing latest Sphinx of version 5 line, which is5.3.0
Verification results
Tested on local Ubuntu 22.04 machine and
ubuntu:focal
Docker container locally repeating CircleCI steps and configuration.Pip3 install and make html logs on Docker container with vanilla
requirements.txt
are attached below:pip3_install_vanilla.log
make_html_vanilla.log
There is the following issue appear on Ubuntu 20.04:
The same error messages are also observed on CircleCI ("Install Doc Dependencies" phase):
https://app.circleci.com/pipelines/github/ros-planning/navigation.ros.org/1899/workflows/f70556c1-22e1-4320-8912-6e6fc427e52b/jobs/2208
Logs after applying the changes from above requirements table, are listed here:
pip3_install_new.log
make_html_new.log
All error messages on
pip3 install
phase were disappeared.On
make html
stage one new warning message appear:This message was introduced in Sphinx 4.0 (https://www.sphinx-doc.org/en/master/changes.html#release-4-0-0-released-may-09-2021) and thus will be appeared in any Sphinx update configuration. This is not critical issue for now and requires an attention on next Sphinx 6++ version update, I suppose.
The documentation build passes and generates HTML well for the new configuration.