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

GH-35403: [Docs] Support sphinx 6 for building the docs #36296

Merged
merged 9 commits into from
Jul 6, 2023

Conversation

AlenkaF
Copy link
Member

@AlenkaF AlenkaF commented Jun 26, 2023

What changes are included in this PR?

Enable the docs to be built with sphinx 6.x.

  • Update the pin in the requirements.txt
  • Add sphinxcontrib.jquery to include jQuery which is used in the dropdown.

Are these changes tested?

The Sphinx version update and the dropdown are tested locally.

Are there any user-facing changes?

No.

@AlenkaF AlenkaF marked this pull request as ready for review June 29, 2023 09:47
@AlenkaF
Copy link
Member Author

AlenkaF commented Jun 29, 2023

I am not sure why is the installed Sphinx version on the CI still 5.3.0 (ci/conda_env_sphinx.txt is updated)
https://github.com/apache/arrow/actions/runs/5387119645/jobs/9778004280?pr=36296#step:6:1351

So this change is currently not tested on the CI.

@jorisvandenbossche
Copy link
Member

Not sure why it doesn't automatically use sphinx 6, but we could also just force sphinx=6 in the conda env file, I think that would be fine (from testing locally there doesn't seem to be a conflict when doing that).

@AlenkaF
Copy link
Member Author

AlenkaF commented Jun 29, 2023

Not sure why it doesn't automatically use sphinx 6, but we could also just force sphinx=6 in the conda env file, I think that would be fine (from testing locally there doesn't seem to be a conflict when doing that).

Just on the CI or in general requirements also?

@jorisvandenbossche
Copy link
Member

The docs/requirements.txt file has a comment that it should be kept in sync with conda_env_sphinx.txt, so in both places

@AlenkaF
Copy link
Member Author

AlenkaF commented Jun 29, 2023

Oh forgot about that, sry. Will change 👍

@AlenkaF
Copy link
Member Author

AlenkaF commented Jul 3, 2023

The issue on the failing build is


Running Sphinx v6.2.0

Exception occurred:
  File "/opt/conda/envs/arrow/lib/python3.9/site-packages/breathe/renderer/sphinxrenderer.py", line 104, in DomainDirectiveFactory
    'function': (python.PyModulelevel, 'function'),
AttributeError: module 'sphinx.domains.python' has no attribute 'PyModulelevel'

but Sphinx deprecated sphinx.domains.python.PyModulelevel in 4.0, so this should have come up before already?
https://www.sphinx-doc.org/en/master/extdev/deprecated.html

@jorisvandenbossche
Copy link
Member

jorisvandenbossche commented Jul 3, 2023

Hmm, that should already have been removed in breathe a long time ago: breathe-doc/breathe#512 (released in breathe 4.17.0)
What version of breathe do we have installed?

@jorisvandenbossche
Copy link
Member

jorisvandenbossche commented Jul 3, 2023

OK, so we have an old version of breathe (4.15), this might be because more recent versions on conda-forge have an upper pin to sphinx: https://github.com/conda-forge/breathe-feedstock/blob/e22b71d442aa41ed3e7614eddb4d129c893bacab/recipe/meta.yaml#L28

@jorisvandenbossche
Copy link
Member

@AlenkaF you can maybe open a PR on the conda feedstock to update the upper pin (eg to <7), since it seems breathe itself is now testing with sphinx 6 (breathe-doc/breathe@ef4e245), so that should be expected to work

@AlenkaF
Copy link
Member Author

AlenkaF commented Jul 3, 2023

Sure will do! 👍

@AlenkaF
Copy link
Member Author

AlenkaF commented Jul 3, 2023

Here it is: conda-forge/breathe-feedstock#59

@AlenkaF AlenkaF force-pushed the gh-35403-support-sphinx-6 branch from 0f4e6a3 to c41cbce Compare July 4, 2023 11:16
@AlenkaF
Copy link
Member Author

AlenkaF commented Jul 4, 2023

There is no issue with the docs build on the CI after the PR on conda-forge/breathe-feedstock got merged 👍 The version of Sphinx used on the CI is 6.2.0 and the version of Breathe is 4.35.0.

Note: in the last commit I have added a make option for MacOS related issues with editable libs. I am not sure if the approach is correct though.

docs/source/developers/java/building.rst Outdated Show resolved Hide resolved
docs/Makefile Outdated Show resolved Hide resolved
@github-actions github-actions bot added awaiting changes Awaiting changes and removed awaiting review Awaiting review labels Jul 5, 2023
@github-actions github-actions bot removed the awaiting changes Awaiting changes label Jul 5, 2023
@github-actions github-actions bot added the awaiting change review Awaiting change review label Jul 5, 2023
@github-actions github-actions bot added awaiting changes Awaiting changes and removed awaiting change review Awaiting change review labels Jul 5, 2023
@github-actions github-actions bot added awaiting change review Awaiting change review and removed awaiting changes Awaiting changes labels Jul 6, 2023
@github-actions github-actions bot added awaiting changes Awaiting changes awaiting change review Awaiting change review awaiting merge Awaiting merge and removed awaiting change review Awaiting change review awaiting changes Awaiting changes labels Jul 6, 2023
@jorisvandenbossche jorisvandenbossche merged commit 82bf1e2 into apache:main Jul 6, 2023
@jorisvandenbossche jorisvandenbossche removed the awaiting merge Awaiting merge label Jul 6, 2023
@AlenkaF AlenkaF deleted the gh-35403-support-sphinx-6 branch July 6, 2023 07:09
@conbench-apache-arrow
Copy link

Conbench analyzed the 6 benchmark runs on commit 82bf1e28.

There were no benchmark performance regressions. 🎉

The full Conbench report has more details.

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.

[Docs] Support sphinx 6 for building the docs
3 participants