ray-project / ray

Ray is an AI compute engine. Ray consists of a core distributed runtime and a set of AI Libraries for accelerating ML workloads.
https://ray.io
Apache License 2.0
34.12k stars 5.79k forks source link

[Doc] Remove `setuptools` dependency; find upgrade path for `sphinxcontrib-redoc` #46374

Open peytondmurray opened 4 months ago

peytondmurray commented 4 months ago

Description

Currently we (once #46375 is merged) depend on setuptools>=70 to allow the docs to build on Python>=3.12, because pkg_resources is now deprecated in favor of importlib.resources (but sphinxcontrib-redoc hasn't updated yet).

This issue is to track the work to find an upgrade path here. IMO there are a few options:

  1. Make an upstream contribution to sphinxcontrib-redoc to avoid importing pkg_resources
  2. Replace sphinxcontrib-redoc with sphinxcontrib-openapi, which has a style that matches the style of our current docs. However, we will need to make an upstream contribution to that project as well because the default HttpdomainOldRenderer doesn't seem to show request parameters, and doesn't seem to handle response types either. Additionally, the newer HttpdomainRenderer doesn't render endpoint summaries with newlines correctly, and doesn't handle response types either.
  3. Remove all dependencies, and typeset everything ourselves
  4. Some other path; need to consider more options
anyscalesam commented 1 month ago

@angelinalg @can-anyscale how important is this still? feels like docs-infra work.

jcotant1 commented 3 weeks ago

Hey @angelinalg @can-anyscale doing some cleanup, any updates on this one? Thx

angelinalg commented 3 weeks ago

@can-anyscale can you assign a priority?