Skip to content

Conversation

@shahar1
Copy link
Contributor

@shahar1 shahar1 commented Jan 10, 2025

closes: #31963
related: #39449

This PR update the following dependencies:

  • sphinx to v7+ (there's already v8, but it is supported only for Python 3.10)
  • docutils to v0.21+ (haven't encountered any <section> tags as mentioned in the deleted inline comment)
  • sphinx-autoapi to v3+ and astroid to v3+ (possible now that sphinx is v7+)
  • sphinxcontrib-serializinghtml to v1.1.5+ (pinning it causes dependency conflicts)

^ Add meaningful description above
Read the Pull Request Guidelines for more information.
In case of fundamental code changes, an Airflow Improvement Proposal (AIP) is needed.
In case of a new dependency, check compliance with the ASF 3rd Party License Policy.
In case of backwards incompatible changes please leave a note in a newsfragment file, named {pr_number}.significant.rst or {issue_number}.significant.rst, in newsfragments.

@shahar1 shahar1 added area:dependencies Issues related to dependencies problems backport-to-v2-10-test labels Jan 10, 2025
@shahar1 shahar1 marked this pull request as draft January 10, 2025 18:57
@shahar1
Copy link
Contributor Author

shahar1 commented Jan 10, 2025

Drafting, weirdly on v2-10-test it worked fine but here there are errors

@potiuk
Copy link
Member

potiuk commented Jan 10, 2025

one more thing - last time when we tried to upgrade sphinx and docutils, the documentation looked ....weird .... lots of extra whitespace

@shahar1
Copy link
Contributor Author

shahar1 commented Jan 11, 2025

Apparently it is a quite a tough task, here are some insights:

  • A requirement for upgrading Sphinx to v7 is to merge [BREAKING CHANGE] Update link tag for compatibility with Sphinx v7 airflow-site#1103 and create a new version for sphinx_airflow_theme (0.1.0). I struggled with mounting the changes locally, so for now, I made a workaround by injecting the contents of the file that was modified via Dockerfile.ci (created an issue for anyone who wants to tackle it in the future).

  • When running only the build docs workflow, locally and on GitHub Actions, using breeze build-docs apache-airflow docker-stack --docs-only --clean-build, the build succeeds without any errors (see GitHub Action workflow). When running the docs server locally, the extra spaces issue indeed persists - we need to find out how to modify the related CSS (no success with it so far).
    image

  • When running only the spellchecks workflow, locally and on GitHub Actions, using breeze build-docs apache-airflow docker-stack --spellchecks-only --clean-build (see raw logs - BIG FILE warning) - we get a lot of weird errors. If you take a look at the logs, it often fails when parsing from /opt/airflow/providers/src/airflow/providers/amazon/aws/hooks/ssm.py::SsmHook:: get_parameter_value. Edit: it happened due to missing words in the spellcheck wordlist (see Update spelling wordlist #45579) - now it should be fine.

  • When running the workflow for building docs and spelling altogether (breeze build-docs apache-airflow docker-stack --clean-build), the build fails due to a large number of implicit errors (which might be related to the failure of the spelling checks?).

  • The MyPy workflow fails, but it doesn't seem too bad - in the worst case we just ignore it.

I'll be happy for some help in solving some of the riddles above, it will gets us closer to upgrading to Sphinx 7 :)

@potiuk
Copy link
Member

potiuk commented Jan 11, 2025

#protm

@shahar1 shahar1 marked this pull request as ready for review January 11, 2025 21:57
@shahar1 shahar1 requested a review from ashb as a code owner January 11, 2025 21:57
@potiuk
Copy link
Member

potiuk commented Jan 12, 2025

It needs conflict resolution though :)

Copy link
Contributor

@jscheffl jscheffl left a comment

Choose a reason for hiding this comment

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

For me "good enough" to go.

@kaxil
Copy link
Member

kaxil commented Jan 12, 2025

Merge conflicts on hatch_build.py @shahar1 and then hopefully we are good 🤞

@shahar1
Copy link
Contributor Author

shahar1 commented Jan 12, 2025

Merge conflicts on hatch_build.py @shahar1 and then hopefully we are good 🤞

Resolved conclicts, I'd be happy if @potiuk could review before merging :)

Copy link
Contributor

@jscheffl jscheffl left a comment

Choose a reason for hiding this comment

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

Good to merge in my view.

@potiuk
Copy link
Member

potiuk commented Jan 12, 2025

LGTM ! 🎉 🎉 🎉 🎉 🎉 🎉 🎉 🎉 🎉

@shahar1 shahar1 added kind:documentation area:CI Airflow's tests and continious integration labels Jan 12, 2025
@shahar1 shahar1 merged commit a51ebe4 into apache:main Jan 12, 2025
158 checks passed
@github-actions
Copy link

Backport failed to create: v2-10-test. View the failure log Run details

Status Branch Result
v2-10-test Commit Link

You can attempt to backport this manually by running:

cherry_picker a51ebe4 v2-10-test

This should apply the commit to the v2-10-test branch and leave the commit in conflict state marking
the files that need manual conflict resolution.

After you have resolved the conflicts, you can continue the backport process by running:

cherry_picker --continue

shahar1 added a commit to shahar1/airflow that referenced this pull request Jan 12, 2025
* Upgrade sphinx and related dependencies

* TEST COMMIT - DO NOT MERGE: modify airflow-site layout.html via Dockerfile.ci

* fixup! TEST COMMIT - DO NOT MERGE: modify airflow-site layout.html via Dockerfile.ci

* fixup! fixup! TEST COMMIT - DO NOT MERGE: modify airflow-site layout.html via Dockerfile.ci

* Apply changes to css

* Revert changes to Dockerfile.ci

* Pull new Theme

* Further CSS Patches to get closer

* Remove duplicates

---------

Co-authored-by: Jarek Potiuk <jarek@potiuk.com>
Co-authored-by: Jens Scheffler <95105677+jscheffl@users.noreply.github.com>
Co-authored-by: Epstein, Shahar <shahar.epstein@ncrvoyix.com>

(cherry picked from commit a51ebe4)
potiuk pushed a commit to shahar1/airflow that referenced this pull request Jan 12, 2025
* Upgrade sphinx and related dependencies

* TEST COMMIT - DO NOT MERGE: modify airflow-site layout.html via Dockerfile.ci

* fixup! TEST COMMIT - DO NOT MERGE: modify airflow-site layout.html via Dockerfile.ci

* fixup! fixup! TEST COMMIT - DO NOT MERGE: modify airflow-site layout.html via Dockerfile.ci

* Apply changes to css

* Revert changes to Dockerfile.ci

* Pull new Theme

* Further CSS Patches to get closer

* Remove duplicates

---------

Co-authored-by: Jarek Potiuk <jarek@potiuk.com>
Co-authored-by: Jens Scheffler <95105677+jscheffl@users.noreply.github.com>
Co-authored-by: Epstein, Shahar <shahar.epstein@ncrvoyix.com>

(cherry picked from commit a51ebe4)
potiuk added a commit to shahar1/airflow that referenced this pull request Jan 12, 2025
potiuk added a commit that referenced this pull request Jan 12, 2025
* Upgrade sphinx and related dependencies (#45563)

* Upgrade sphinx and related dependencies

* TEST COMMIT - DO NOT MERGE: modify airflow-site layout.html via Dockerfile.ci

* fixup! TEST COMMIT - DO NOT MERGE: modify airflow-site layout.html via Dockerfile.ci

* fixup! fixup! TEST COMMIT - DO NOT MERGE: modify airflow-site layout.html via Dockerfile.ci

* Apply changes to css

* Revert changes to Dockerfile.ci

* Pull new Theme

* Further CSS Patches to get closer

* Remove duplicates

---------

Co-authored-by: Jarek Potiuk <jarek@potiuk.com>
Co-authored-by: Jens Scheffler <95105677+jscheffl@users.noreply.github.com>
Co-authored-by: Epstein, Shahar <shahar.epstein@ncrvoyix.com>

(cherry picked from commit a51ebe4)

* fixup! Upgrade sphinx and related dependencies (#45563)

---------

Co-authored-by: Jarek Potiuk <jarek@potiuk.com>
potiuk added a commit to potiuk/airflow that referenced this pull request Jan 12, 2025
…pache#45596)

* Upgrade sphinx and related dependencies (apache#45563)

* Upgrade sphinx and related dependencies

* TEST COMMIT - DO NOT MERGE: modify airflow-site layout.html via Dockerfile.ci

* fixup! TEST COMMIT - DO NOT MERGE: modify airflow-site layout.html via Dockerfile.ci

* fixup! fixup! TEST COMMIT - DO NOT MERGE: modify airflow-site layout.html via Dockerfile.ci

* Apply changes to css

* Revert changes to Dockerfile.ci

* Pull new Theme

* Further CSS Patches to get closer

* Remove duplicates

---------

Co-authored-by: Jarek Potiuk <jarek@potiuk.com>
Co-authored-by: Jens Scheffler <95105677+jscheffl@users.noreply.github.com>
Co-authored-by: Epstein, Shahar <shahar.epstein@ncrvoyix.com>

(cherry picked from commit a51ebe4)

* fixup! Upgrade sphinx and related dependencies (apache#45563)

---------

Co-authored-by: Jarek Potiuk <jarek@potiuk.com>
potiuk added a commit to potiuk/airflow that referenced this pull request Jan 12, 2025
…pache#45596)

* Upgrade sphinx and related dependencies (apache#45563)

* Upgrade sphinx and related dependencies

* TEST COMMIT - DO NOT MERGE: modify airflow-site layout.html via Dockerfile.ci

* fixup! TEST COMMIT - DO NOT MERGE: modify airflow-site layout.html via Dockerfile.ci

* fixup! fixup! TEST COMMIT - DO NOT MERGE: modify airflow-site layout.html via Dockerfile.ci

* Apply changes to css

* Revert changes to Dockerfile.ci

* Pull new Theme

* Further CSS Patches to get closer

* Remove duplicates

---------

Co-authored-by: Jarek Potiuk <jarek@potiuk.com>
Co-authored-by: Jens Scheffler <95105677+jscheffl@users.noreply.github.com>
Co-authored-by: Epstein, Shahar <shahar.epstein@ncrvoyix.com>

(cherry picked from commit a51ebe4)

* fixup! Upgrade sphinx and related dependencies (apache#45563)

---------

Co-authored-by: Jarek Potiuk <jarek@potiuk.com>
@potiuk potiuk linked an issue Jan 13, 2025 that may be closed by this pull request
karenbraganz pushed a commit to karenbraganz/airflow that referenced this pull request Jan 13, 2025
* Upgrade sphinx and related dependencies

* TEST COMMIT - DO NOT MERGE: modify airflow-site layout.html via Dockerfile.ci

* fixup! TEST COMMIT - DO NOT MERGE: modify airflow-site layout.html via Dockerfile.ci

* fixup! fixup! TEST COMMIT - DO NOT MERGE: modify airflow-site layout.html via Dockerfile.ci

* Apply changes to css

* Revert changes to Dockerfile.ci

* Pull new Theme

* Further CSS Patches to get closer

* Remove duplicates

---------

Co-authored-by: Jarek Potiuk <jarek@potiuk.com>
Co-authored-by: Jens Scheffler <95105677+jscheffl@users.noreply.github.com>
Co-authored-by: Epstein, Shahar <shahar.epstein@ncrvoyix.com>
HariGS-DB pushed a commit to HariGS-DB/airflow that referenced this pull request Jan 16, 2025
* Upgrade sphinx and related dependencies

* TEST COMMIT - DO NOT MERGE: modify airflow-site layout.html via Dockerfile.ci

* fixup! TEST COMMIT - DO NOT MERGE: modify airflow-site layout.html via Dockerfile.ci

* fixup! fixup! TEST COMMIT - DO NOT MERGE: modify airflow-site layout.html via Dockerfile.ci

* Apply changes to css

* Revert changes to Dockerfile.ci

* Pull new Theme

* Further CSS Patches to get closer

* Remove duplicates

---------

Co-authored-by: Jarek Potiuk <jarek@potiuk.com>
Co-authored-by: Jens Scheffler <95105677+jscheffl@users.noreply.github.com>
Co-authored-by: Epstein, Shahar <shahar.epstein@ncrvoyix.com>
dauinh pushed a commit to dauinh/airflow that referenced this pull request Jan 24, 2025
* Upgrade sphinx and related dependencies

* TEST COMMIT - DO NOT MERGE: modify airflow-site layout.html via Dockerfile.ci

* fixup! TEST COMMIT - DO NOT MERGE: modify airflow-site layout.html via Dockerfile.ci

* fixup! fixup! TEST COMMIT - DO NOT MERGE: modify airflow-site layout.html via Dockerfile.ci

* Apply changes to css

* Revert changes to Dockerfile.ci

* Pull new Theme

* Further CSS Patches to get closer

* Remove duplicates

---------

Co-authored-by: Jarek Potiuk <jarek@potiuk.com>
Co-authored-by: Jens Scheffler <95105677+jscheffl@users.noreply.github.com>
Co-authored-by: Epstein, Shahar <shahar.epstein@ncrvoyix.com>
got686-yandex pushed a commit to got686-yandex/airflow that referenced this pull request Jan 30, 2025
* Upgrade sphinx and related dependencies

* TEST COMMIT - DO NOT MERGE: modify airflow-site layout.html via Dockerfile.ci

* fixup! TEST COMMIT - DO NOT MERGE: modify airflow-site layout.html via Dockerfile.ci

* fixup! fixup! TEST COMMIT - DO NOT MERGE: modify airflow-site layout.html via Dockerfile.ci

* Apply changes to css

* Revert changes to Dockerfile.ci

* Pull new Theme

* Further CSS Patches to get closer

* Remove duplicates

---------

Co-authored-by: Jarek Potiuk <jarek@potiuk.com>
Co-authored-by: Jens Scheffler <95105677+jscheffl@users.noreply.github.com>
Co-authored-by: Epstein, Shahar <shahar.epstein@ncrvoyix.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area:CI Airflow's tests and continious integration area:dependencies Issues related to dependencies problems kind:documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Modernize Docs Building workflows Upgrade Sphinx to version 7 to improve documentation errors

5 participants