Skip to content

Commit 52c9307

Browse files
committed
Merge tag '10.1.0' into relcorp
2 parents fe20cb9 + 0c18b80 commit 52c9307

File tree

87 files changed

+4775
-5680
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

87 files changed

+4775
-5680
lines changed

CHANGELOG.rst

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,27 @@
1+
Version 10.1.0
2+
--------------
3+
4+
:Date: August 22, 2023
5+
6+
* `@ecormany <https://github.com/ecormany>`__: docs: typo fix on "Custom and built-in redirects" page (`#10651 <https://github.com/readthedocs/readthedocs.org/pull/10651>`__)
7+
* `@humitos <https://github.com/humitos>`__: Celery: use django-celery-beat scheduler (`#10647 <https://github.com/readthedocs/readthedocs.org/pull/10647>`__)
8+
* `@humitos <https://github.com/humitos>`__: Build: drop websupport2 support from conf.py template (`#10646 <https://github.com/readthedocs/readthedocs.org/pull/10646>`__)
9+
* `@ericholscher <https://github.com/ericholscher>`__: Remove the celery email tasks until we can debug them. (`#10641 <https://github.com/readthedocs/readthedocs.org/pull/10641>`__)
10+
* `@humitos <https://github.com/humitos>`__: Development: disable cached Loader on `DEBUG=True` (`#10640 <https://github.com/readthedocs/readthedocs.org/pull/10640>`__)
11+
* `@humitos <https://github.com/humitos>`__: Docs: update tutorial with the latest required changes (`#10639 <https://github.com/readthedocs/readthedocs.org/pull/10639>`__)
12+
* `@humitos <https://github.com/humitos>`__: Build: do not set `sphinx_rtd_theme` theme automatically (`#10638 <https://github.com/readthedocs/readthedocs.org/pull/10638>`__)
13+
* `@humitos <https://github.com/humitos>`__: Build: update links to blog post (`#10636 <https://github.com/readthedocs/readthedocs.org/pull/10636>`__)
14+
* `@stsewd <https://github.com/stsewd>`__: Proxito: allow to generate proxied API URLs with a prefix (`#10634 <https://github.com/readthedocs/readthedocs.org/pull/10634>`__)
15+
* `@ericholscher <https://github.com/ericholscher>`__: Small wording cleanup on Integration howto (`#10632 <https://github.com/readthedocs/readthedocs.org/pull/10632>`__)
16+
* `@github-actions[bot] <https://github.com/github-actions[bot]>`__: Dependencies: all packages updated via pip-tools (`#10628 <https://github.com/readthedocs/readthedocs.org/pull/10628>`__)
17+
* `@humitos <https://github.com/humitos>`__: Black: run black over all the code base (`#10619 <https://github.com/readthedocs/readthedocs.org/pull/10619>`__)
18+
* `@humitos <https://github.com/humitos>`__: Revert "Contact projects with a build in the last 3 years" (`#10618 <https://github.com/readthedocs/readthedocs.org/pull/10618>`__)
19+
* `@humitos <https://github.com/humitos>`__: Settings: remove CSRF_COOKIE_MASKED (`#10608 <https://github.com/readthedocs/readthedocs.org/pull/10608>`__)
20+
* `@stsewd <https://github.com/stsewd>`__: Versions: keep type of version in sync with the project (`#10606 <https://github.com/readthedocs/readthedocs.org/pull/10606>`__)
21+
* `@humitos <https://github.com/humitos>`__: Import: remove extra/advanced step from project import wizard (`#10603 <https://github.com/readthedocs/readthedocs.org/pull/10603>`__)
22+
* `@benjaoming <https://github.com/benjaoming>`__: Docs: Methodology section (`#10417 <https://github.com/readthedocs/readthedocs.org/pull/10417>`__)
23+
* `@humitos <https://github.com/humitos>`__: VCS: remove unused methods and make new Git pattern the default (`#8968 <https://github.com/readthedocs/readthedocs.org/pull/8968>`__)
24+
125
Version 10.0.0
226
--------------
327

docs/conf.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@
7777

7878
master_doc = "index"
7979
copyright = "Read the Docs, Inc & contributors"
80-
version = "10.0.0"
80+
version = "10.1.0"
8181
release = version
8282
exclude_patterns = ["_build", "shared", "_includes"]
8383
default_role = "obj"
Loading
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
How to structure your documentation
2+
===================================
3+
4+
A documentation project's ultimate goal is to be read and understood by a reader.
5+
Readers need to be able to :term:`discover <discoverability>` the information that they need.
6+
Without an defined structure,
7+
readers either won't find information that they need or get frustrated on the way.
8+
9+
One of the largest benefits of a good structure is that it removes questions that keep authors from writing documentation.
10+
Starting with a blank page is often the hardest part of documentation,
11+
so anything we can do to remove this problem is a win.
12+
13+
Choosing a structure
14+
--------------------
15+
16+
Good news!
17+
You don't have to invent all of the structure yourself,
18+
since a lot of experience-based work has been done to come up with a universal documentation structure.
19+
20+
In order to avoid starting with a blank page,
21+
we recommend a simple process:
22+
23+
* Choose a structure for your documentation. We recommend `Diátaxis <https://diataxis.fr/>`_ for this.
24+
* Find a :doc:`example project </examples>` or template to start from.
25+
* Start writing by filling in the structure.
26+
27+
This process helps you get started quickly,
28+
and helps keep things consistent for the reader of your documentation.
29+
30+
.. _diataxis:
31+
32+
Diátaxis Methodology
33+
--------------------
34+
35+
The documentation you're reading is written using the Diátaxis framework.
36+
It has four major parts as summarized by this image:
37+
38+
.. image:: https://diataxis.fr/_images/diataxis.png
39+
40+
We recommend that you read more about it in the `official Diátaxis documentation <https://diataxis.fr/>`_.
41+
42+
Explaining the structure to your users
43+
--------------------------------------
44+
45+
One of the benefits of Diátaxis is that it's a well-known structure,
46+
and users might already be familiar with it.
47+
As long as you stick to the structure,
48+
your users should be able to use existing experience to navigate.
49+
50+
Using the names that are defined (eg. Tutorials, Explanation) in a user-facing way also helps here.

docs/user/explanation/methodology.rst

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
Methodology and best practice
2+
=============================
3+
4+
In this section,
5+
we are covering important methods and best practices that will make your documentation better.
6+
7+
.. seealso::
8+
9+
`Write the Docs: Topic Archive <https://www.writethedocs.org/topics/>`__
10+
A collection of conference talks and articles,
11+
indexed by topic (eg. ``Metrics and analytics`` or ``Information architecture``)
12+
13+
You can familiarize yourself with these topics before or after writing documentation.
14+
We encourage that you read this at any time,
15+
as this content is applicable to many stages of the documentation process.
16+
17+
⏩️ :doc:`The Diátaxis Methodology <documentation-structure>`
18+
We introduce the Diátaxis methodology which is also used for the documentation you are now reading.
19+
20+
⏩️ :doc:`Creating reproducible builds </guides/reproducible-builds>`
21+
Every documentation project has dependencies that are required to build it.
22+
Using an unspecified versions of these dependencies means that your project can start breaking.
23+
In this guide,
24+
learn how to protect your project against breaking randomly.
25+
**This is one of our most popular guides!**
26+
27+
⏩️ :doc:`Search engine optimization (SEO) for documentation projects </guides/technical-docs-seo-guide>`
28+
This article explains how documentation can be optimized to appear in search results,
29+
increasing traffic to your docs.
30+
31+
32+
.. toctree::
33+
:maxdepth: 2
34+
:hidden:
35+
36+
documentation-structure
37+
/guides/best-practice/index

docs/user/guides/setup/git-repo-manual.rst

Lines changed: 9 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1-
How to manually configure a Git repository
2-
==========================================
1+
How to manually configure a Git repository integration
2+
======================================================
33

44
In this guide,
5-
you will find the simple steps to manually integrating your Read the Docs project with all Git providers that support our generic API.
6-
This includes most Git providers, for example |git_providers_and|.
5+
you will find the steps to manually integrate your Read the Docs project with any Git provider,
6+
including |git_providers_and|.
77

88
.. seealso::
99

@@ -12,7 +12,6 @@ This includes most Git providers, for example |git_providers_and|.
1212
If your Read the Docs account is :doc:`connected to the Git provider </guides/connecting-git-account>`,
1313
we can setup the integration automatically.
1414

15-
1615
..
1716
The following references were supposed to go inside tabs, which is
1817
supported here:
@@ -29,11 +28,11 @@ This includes most Git providers, for example |git_providers_and|.
2928
.. _webhook-integration-bitbucket:
3029
.. _webhook-integration-gitlab:
3130

32-
Provider-specific instructions
33-
------------------------------
31+
Manual integration setup
32+
------------------------
3433

35-
You need to configure your Git provider to call a webhook on Read the Docs.
36-
This will make Read the Docs build your documentation when a new commit, branch or tag is pushed to your repository.
34+
You need to configure your Git provider integration to call a webhook that alerts Read the Docs of changes.
35+
Read the Docs will sync versions and build your documentation when your Git repository is updated.
3736

3837
.. tabs::
3938

@@ -128,8 +127,7 @@ After you have added the integration, you'll see a link to information about the
128127

129128
As an example, the URL pattern looks like this: ``https://readthedocs.org/api/v2/webhook/<project-name>/<id>/*``.
130129

131-
Use this URL when setting up a new integration with your provider ^^ these steps vary depending on the provider.
132-
130+
Use this URL when setting up a new integration with your provider, as explained above.
133131

134132
.. warning::
135133

docs/user/index.rst

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,12 @@ Read the Docs: documentation simplified
2020

2121
/choosing-a-site
2222
/integrations
23+
/downloadable-documentation
24+
/environment-variables
25+
/subprojects
26+
/localization
2327
/explanation/advanced
28+
/explanation/methodology
2429

2530
.. toctree::
2631
:maxdepth: 2

docs/user/tutorial/index.rst

Lines changed: 55 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,10 @@ which will generate a new repository on your personal account
3838
This is the repository you will import on Read the Docs,
3939
and it contains the following files:
4040

41+
``.readthedocs.yaml``
42+
Read the Docs configuration file.
43+
Required to setup the documentation build process.
44+
4145
``README.rst``
4246
Basic description of the repository, you will leave it untouched.
4347

@@ -147,15 +151,9 @@ Name
147151
Repository URL
148152
The URL that contains the sources. Leave the automatically filled value.
149153

150-
Repository type
151-
Version control system used, leave it as "Git".
152-
153154
Default branch
154155
Name of the default branch of the project, leave it as ``main``.
155156

156-
Edit advanced project options
157-
Leave it unchecked, we will make some changes later.
158-
159157
After hitting the :guilabel:`Next` button, you will be redirected to the :term:`project home`.
160158
You just created your first project on Read the Docs! |:tada:|
161159

@@ -287,13 +285,7 @@ When you are satisfied, you can merge the pull request!
287285
Adding a configuration file
288286
---------------------------
289287

290-
As of September 2023,
291-
:doc:`you will need to add a configuration file to build your documentation <rtd-blog:migrate-configuration-v2>`.
292-
Until then,
293-
this example project will build without the configuration file,
294-
but we **strongly recommend** completing this section in order to add a configuration file.
295-
296-
The Settings page of the :term:`project home` allows you
288+
The Admin tab of the :term:`project home` allows you
297289
to change some *global* configuration values of your project.
298290
In addition, you can further customize the building process
299291
using the ``.readthedocs.yaml`` :doc:`configuration file </config-file/v2>`.
@@ -316,23 +308,28 @@ In this section, we will show you some examples of what a configuration file sho
316308
Settings that apply to the entire project are controlled in the web dashboard,
317309
while settings that are version or build specific are better in the YAML file.
318310

319-
Upgrading the Python version
320-
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
311+
Changing the Python version
312+
~~~~~~~~~~~~~~~~~~~~~~~~~~~
321313

322314
For example, to explicitly use Python 3.8 to build your project,
323-
navigate to your GitHub repository, click on the :guilabel:`Add file` button,
324-
and add a ``.readthedocs.yaml`` file with these contents to the root of your project:
315+
navigate to your GitHub repository, click on ``.readthedocs.yaml`` file and then in the pencil icon ✏️ to edit the file
316+
and change the Python version as follows:
325317

326318
.. code-block:: yaml
327319
:caption: .readthedocs.yaml
320+
:emphasize-lines: 6
328321
329322
version: 2
330323
331324
build:
332-
os: "ubuntu-20.04"
325+
os: "ubuntu-22.04"
333326
tools:
334327
python: "3.8"
335328
329+
python:
330+
install:
331+
- requirements: docs/requirements.txt
332+
336333
The purpose of each key is:
337334

338335
``version``
@@ -345,9 +342,12 @@ The purpose of each key is:
345342
``build.tools.python``
346343
Declares the Python version to be used.
347344

345+
``python.install.requirements``
346+
Specifies the Python dependencies to install required to build the documentation.
347+
348348
After you commit these changes, go back to your project home,
349349
navigate to the "Builds" page, and open the new build that just started.
350-
You will notice that one of the lines contains ``python3.8``:
350+
You will notice that one of the lines contains ``python -mvirtualenv``:
351351
if you click on it, you will see the full output of the corresponding command,
352352
stating that it used Python 3.8.6 to create the virtual environment.
353353

@@ -387,15 +387,19 @@ click on the |:pencil2:| icon, and add these contents:
387387

388388
.. code-block:: yaml
389389
:caption: .readthedocs.yaml
390-
:emphasize-lines: 8-9
390+
:emphasize-lines: 12-13
391391
392392
version: 2
393393
394394
build:
395-
os: "ubuntu-20.04"
395+
os: "ubuntu-22.04"
396396
tools:
397397
python: "3.8"
398398
399+
python:
400+
install:
401+
- requirements: docs/requirements.txt
402+
399403
sphinx:
400404
fail_on_warning: true
401405
@@ -414,11 +418,12 @@ go back to editing ``.readthedocs.yaml`` on GitHub and modify it as follows:
414418

415419
.. code-block:: yaml
416420
:caption: .readthedocs.yaml
417-
:emphasize-lines: 2-4
421+
:emphasize-lines: 4-6
418422
419423
python:
420-
# Install our python package before building the docs
421424
install:
425+
- requirements: docs/requirements.txt
426+
# Install our python package before building the docs
422427
- method: pip
423428
path: .
424429
@@ -547,36 +552,40 @@ and a new build will be triggered for it.
547552
You can read more about :ref:`hidden versions <versions:hidden>`
548553
in our documentation.
549554

550-
Show a warning for old versions
551-
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
555+
.. "Show a warning for old versions" feature is not available anymore.
556+
We should re-write this section once we have the notification addons rolled out.
552557
553-
When your project matures, the number of versions might increase.
554-
Sometimes you will want to warn your readers
555-
when they are browsing an old or outdated version of your documentation.
556558
557-
To showcase how to do that, let's create a ``2.0`` version of the code:
558-
navigate to your GitHub repository, click on the branch selector,
559-
type ``2.0.x``, and click on "Create branch: 2.0.x from 'main'".
560-
This will trigger two things:
559+
Show a warning for old versions
560+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
561561
562-
- Since ``2.0.x`` is your newest branch, ``stable`` will switch to tracking it.
563-
- A new ``2.0.x`` version will be created on your Read the Docs project.
564-
- Since you already have an active ``stable`` version, ``2.0.x`` will be activated.
562+
When your project matures, the number of versions might increase.
563+
Sometimes you will want to warn your readers
564+
when they are browsing an old or outdated version of your documentation.
565565
566-
From this point, ``1.0.x`` version is no longer the most up to date one.
567-
To display a warning to your readers, go to the :guilabel:`⚙ Admin` menu of your project home,
568-
click on the :guilabel:`Advanced Settings` link on the left,
569-
enable the "Show version warning" checkbox, and click the :guilabel:`Save` button.
566+
To showcase how to do that, let's create a ``2.0`` version of the code:
567+
navigate to your GitHub repository, click on the branch selector,
568+
type ``2.0.x``, and click on "Create branch: 2.0.x from 'main'".
569+
This will trigger two things:
570570
571-
If you now browse the ``1.0.x`` documentation, you will see a warning on top
572-
encouraging you to browse the latest version instead. Neat!
571+
- Since ``2.0.x`` is your newest branch, ``stable`` will switch to tracking it.
572+
- A new ``2.0.x`` version will be created on your Read the Docs project.
573+
- Since you already have an active ``stable`` version, ``2.0.x`` will be activated.
573574
574-
.. figure:: /_static/images/tutorial/old-version-warning.png
575-
:width: 80%
576-
:align: center
577-
:alt: Warning for old versions
575+
From this point, ``1.0.x`` version is no longer the most up to date one.
576+
To display a warning to your readers, go to the :guilabel:`⚙ Admin` menu of your project home,
577+
click on the :guilabel:`Advanced Settings` link on the left,
578+
enable the "Show version warning" checkbox, and click the :guilabel:`Save` button.
579+
580+
If you now browse the ``1.0.x`` documentation, you will see a warning on top
581+
encouraging you to browse the latest version instead. Neat!
582+
583+
.. figure:: /_static/images/tutorial/old-version-warning.png
584+
:width: 80%
585+
:align: center
586+
:alt: Warning for old versions
578587
579-
Warning for old versions
588+
Warning for old versions
580589
581590
Getting insights from your projects
582591
-----------------------------------

docs/user/user-defined-redirects.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -159,7 +159,7 @@ You would set the following configuration::
159159
From URL: /example.html
160160
To URL: /examples/intro.html
161161

162-
**Page Redirects apply to all versions of you documentation.**
162+
**Page Redirects apply to all versions of your documentation.**
163163
Because of this,
164164
the ``/`` at the start of the ``From URL`` doesn't include the ``/$lang/$version`` prefix (e.g.
165165
``/en/latest``), but just the version-specific part of the URL.

0 commit comments

Comments
 (0)