Skip to content

Commit

Permalink
Build tools: update latest versions (#11742)
Browse files Browse the repository at this point in the history
Ref: #11386 and #10808

Not sure if I missed anything. Looking into
`scripts/compile_version_upload.sh`, I don't know if the selected
`virtualenv` version works with 3.13 (in fact I don't know if that
package has officially supported 3.13 yet).

I initially wanted to raise an issue to support Node.js 22, but then I
got curious and thought I could help speed up the process. Feel free to
pick it up from here if there are other areas that need to be updated
e.g. https://github.com/readthedocs/readthedocs-docker-images 🙂

Closes  #11671

<!-- readthedocs-preview docs start -->
---
:books: Documentation previews :books:

- User's documentation (`docs`):
https://docs--11742.org.readthedocs.build/en/11742/

<!-- readthedocs-preview docs end -->

<!-- readthedocs-preview dev start -->
- Developer's documentation (`dev`):
https://dev--11742.org.readthedocs.build/en/11742/

<!-- readthedocs-preview dev end -->

---------

Co-authored-by: Manuel Kaufmann <[email protected]>
  • Loading branch information
laymonage and humitos authored Nov 14, 2024
1 parent 4f7b737 commit 5f318e4
Show file tree
Hide file tree
Showing 5 changed files with 52 additions and 34 deletions.
26 changes: 16 additions & 10 deletions docs/user/config-file/v2.rst
Original file line number Diff line number Diff line change
Expand Up @@ -211,7 +211,7 @@ Configuration for Conda support.
version: 2
build:
os: "ubuntu-22.04"
os: "ubuntu-24.04"
tools:
python: "mambaforge-22.9"
Expand Down Expand Up @@ -244,12 +244,12 @@ Python, Node.js, Rust, and Go.
version: 2
build:
os: ubuntu-22.04
os: ubuntu-24.04
tools:
python: "3.12"
nodejs: "18"
rust: "1.64"
golang: "1.19"
python: "3.13"
nodejs: "22"
rust: "1.82"
golang: "1.23"
build.os
````````
Expand Down Expand Up @@ -316,9 +316,11 @@ You can use several interpreters and versions, from CPython, Miniconda, and Mamb
- ``3.10``
- ``3.11``
- ``3.12``
- ``3.13``
- ``latest`` (alias for the latest version available on Read the Docs)
- ``miniconda3-4.7``
- ``miniconda3-3.12-24.1``
- ``miniconda3-3.12-24.9``
- ``miniconda-latest`` (alias for the latest version available on Read the Docs)
- ``mambaforge-4.10``
- ``mambaforge-22.9``
Expand All @@ -337,6 +339,8 @@ Node.js version to use.
- ``18``
- ``19``
- ``20``
- ``22``
- ``23``
- ``latest`` (alias for the latest version available on Read the Docs)

build.tools.ruby
Expand All @@ -362,6 +366,7 @@ Rust version to use.
- ``1.70``
- ``1.75``
- ``1.78``
- ``1.82``
- ``latest`` (alias for the latest version available on Read the Docs)

build.tools.golang
Expand All @@ -377,6 +382,7 @@ Go version to use.
- ``1.20``
- ``1.21``
- ``1.22``
- ``1.23``
- ``latest`` (alias for the latest version available on Read the Docs)

build.apt_packages
Expand Down Expand Up @@ -423,9 +429,9 @@ See :doc:`/build-customization` for more details.
version: 2
build:
os: ubuntu-22.04
os: ubuntu-24.04
tools:
python: "3.12"
python: "3.13"
jobs:
pre_create_environment:
- echo "Command run at 'pre_create_environment' step"
Expand Down Expand Up @@ -468,9 +474,9 @@ The ``$READTHEDOCS_OUTPUT/html`` directory will be uploaded and hosted by Read t
version: 2
build:
os: ubuntu-22.04
os: ubuntu-24.04
tools:
python: "3.12"
python: "3.13"
commands:
- pip install pelican
- pelican --settings docs/pelicanconf.py --output $READTHEDOCS_OUTPUT/html/ docs/
Expand Down
42 changes: 24 additions & 18 deletions readthedocs/builds/constants_docker.py
Original file line number Diff line number Diff line change
Expand Up @@ -33,26 +33,30 @@
"2.7": "2.7.18",
"3.6": "3.6.15",
"3.7": "3.7.17",
"3.8": "3.8.19",
"3.9": "3.9.19",
"3.10": "3.10.14",
"3.11": "3.11.9",
"3.12": "3.12.3",
"3.8": "3.8.20",
"3.9": "3.9.20",
"3.10": "3.10.15",
"3.11": "3.11.10",
"3.12": "3.12.7",
"3.13": "3.13.0",
"miniconda3-4.7": "miniconda3-4.7.12",
"miniconda3-3.12-24.1": "miniconda3-3.12-24.1.2-0",
"miniconda3-3.12-24.9": "miniconda3-3.12-24.9.2-0",
"mambaforge-4.10": "mambaforge-4.10.3-10",
"mambaforge-22.9": "mambaforge-22.9.0-3",
"mambaforge-23.11": "mambaforge-23.11.0-0",
},
"nodejs": {
"14": "14.20.1",
"16": "16.18.1",
"18": "18.16.1",
"19": "19.0.1",
"20": "20.14.0", # LTS
"14": "14.21.3",
"16": "16.20.2",
"18": "18.20.4",
"19": "19.9.0",
"20": "20.18.0",
"22": "22.11.0", # LTS
"23": "23.1.0",
},
"ruby": {
"3.3": "3.3.2",
"3.3": "3.3.5",
},
"rust": {
"1.55": "1.55.0",
Expand All @@ -61,14 +65,16 @@
"1.70": "1.70.0",
"1.75": "1.75.0",
"1.78": "1.78.0",
"1.82": "1.82.0",
},
"golang": {
"1.17": "1.17.13",
"1.18": "1.18.10",
"1.19": "1.19.13",
"1.20": "1.20.14",
"1.21": "1.21.11",
"1.22": "1.22.4",
"1.21": "1.21.13",
"1.22": "1.22.8",
"1.23": "1.23.2",
},
},
}
Expand All @@ -81,11 +87,11 @@
# in production after some weeks
_OS["ubuntu-lts-latest"] = _OS["ubuntu-22.04"]

_TOOLS["python"]["3"] = _TOOLS["python"]["3.12"]
_TOOLS["python"]["3"] = _TOOLS["python"]["3.13"]
_TOOLS["python"]["latest"] = _TOOLS["python"]["3"]
_TOOLS["python"]["miniconda-latest"] = _TOOLS["python"]["miniconda3-3.12-24.1"]
_TOOLS["python"]["miniconda-latest"] = _TOOLS["python"]["miniconda3-3.12-24.9"]
_TOOLS["python"]["mambaforge-latest"] = _TOOLS["python"]["mambaforge-23.11"]
_TOOLS["nodejs"]["latest"] = _TOOLS["nodejs"]["20"]
_TOOLS["nodejs"]["latest"] = _TOOLS["nodejs"]["23"]
_TOOLS["ruby"]["latest"] = _TOOLS["ruby"]["3.3"]
_TOOLS["rust"]["latest"] = _TOOLS["rust"]["1.78"]
_TOOLS["golang"]["latest"] = _TOOLS["golang"]["1.22"]
_TOOLS["rust"]["latest"] = _TOOLS["rust"]["1.82"]
_TOOLS["golang"]["latest"] = _TOOLS["golang"]["1.23"]
2 changes: 1 addition & 1 deletion readthedocs/projects/tests/test_build_tasks.py
Original file line number Diff line number Diff line change
Expand Up @@ -569,7 +569,7 @@ def test_successful_build(
},
"tools": {
"python": {
"full_version": "3.12.3",
"full_version": "3.13.0",
"version": "3",
}
},
Expand Down
6 changes: 6 additions & 0 deletions readthedocs/rtd_tests/fixtures/spec/v2/schema.json
Original file line number Diff line number Diff line change
Expand Up @@ -152,9 +152,11 @@
"3.10",
"3.11",
"3.12",
"3.13",
"latest",
"miniconda3-4.7",
"miniconda3-3.12-24.1",
"miniconda3-3.12-24.9",
"miniconda-latest",
"mambaforge-4.10",
"mambaforge-22.9",
Expand All @@ -169,6 +171,8 @@
"18",
"19",
"20",
"22",
"23",
"latest"
]
},
Expand All @@ -186,6 +190,7 @@
"1.70",
"1.75",
"1.78",
"1.82",
"latest"
]
},
Expand All @@ -197,6 +202,7 @@
"1.20",
"1.21",
"1.22",
"1.23",
"latest"
]
}
Expand Down
10 changes: 5 additions & 5 deletions readthedocs/templates/projects/import_config.html
Original file line number Diff line number Diff line change
Expand Up @@ -29,13 +29,13 @@ <h3>{% trans "Add a project configuration file" %}</h3>

# Set the OS, Python version and other tools you might need
build:
os: ubuntu-22.04
os: ubuntu-24.04
tools:
python: "3.12"
python: "3.13"
# You can also specify other tool versions:
# nodejs: "19"
# rust: "1.64"
# golang: "1.19"
# nodejs: "23"
# rust: "1.82"
# golang: "1.23"

# Build documentation in the "docs/" directory with Sphinx
sphinx:
Expand Down

0 comments on commit 5f318e4

Please sign in to comment.