Commit graph zephyr/doc/conf.py
Author SHA1 Message Date
Maureen Helm
c4a8fc21ef doc: releases: Remove 4.2 from the list of supported releases
4.2 has reached EOL.

Signed-off-by: Maureen Helm <maureen.helm@analog.com>
2026-04-14 14:45:49 -05:00
Maureen Helm
09f43af95d doc: releases: Add 4.4 to the list of supported releases
Adds 4.4 to the list of supported releases and updates references to the
next planned release as 4.5. The EOL date is set to one year after
release.

Signed-off-by: Maureen Helm <maureen.helm@analog.com>
2026-04-14 14:45:49 -05:00
Stephanos Ioannidis
a066b866be doc: toolchains: Update for Zephyr SDK 1.0.0
This commit updates the Zephyr SDK documentation to reflect the changes
introduced by the Zephyr SDK 1.0.0 release.

Note that Zephyr SDK now has two different types of distribution bundles:
GNU and LLVM, each suffixed with `_gnu` and `_llvm`, respectively.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2026-03-17 15:43:52 -04:00
Benjamin Cabé
5f87c74157 doc: conf.py: exclude EOL release notes and migration guides from build
This avoids having to touch release notes and migration guides for EOL
releases when e.g. some references to boards or code samples need
updating. Note that release notes and migration guides for actively
maintained releases will still be built after this changes so they still
can be impacted by the aforementioned types of updates.

URLs for EOL release notes and migrations are still valid but they
redirect to the "releases/eol_releases" page.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2026-03-06 10:08:55 +01:00
Henrik Brix Andersen
141e6f1a27 doc: update copyright notice in the documentation
Update copyright notice to reflect current year.

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2026-01-05 17:17:34 +00:00
Benjamin Cabé
4d5b5d6575 doc: conf.py: add glossary link to sidebar
Add a link to the glossary in the "Reference" section of the sidebar.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-11-27 11:32:30 +01:00
Chris Friedt
1d1dace9a2 doc: release: Add v4.3.0 to the list of supported releases
Add v4.3.0 to the list of supported releases.

Since v4.1.0 is becoming EOL, bump TOC ranges to no longer list v4.1.0
and add (draft) v4.4.0.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-11-13 17:35:08 +02:00
Benjamin Cabé
4f8e624404 doc: doxygen: add doxygen sitemap
In order to help search engines pick up _all_ our Doxygen documentation,
ensure that a sitemap.xml file is generated for it.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-11-05 13:30:50 -05:00
Benjamin Cabé
142f6af4c3 doc: conf.py: fix pdf build
An earlier fix (0871c7e) meant to remove warnings due to index and
index-tex defining overlapping table of contents actually broke the PDF
build. Fix it by making sure index-tex is set as root_doc when building
for LaTeX/PDF.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-17 14:52:58 +02:00
Benjamin Cabé
0871c7e147 doc: conf.py: fix warnings about docs appearing in index and index-tex
Implement a workaround to ensure only one of the two top-level indexes
is included in the documentation build, preventing Sphinx from issuing
INFO notices about documents being referenced in both index and
index-tex toctrees.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-09 07:35:46 +02:00
Daniel DeGrasse
dd20c8e210 doc: release: Remove v4.0.0 from the list of supported releases
Only the two most recent mainline releases are supported.

Signed-off-by: Dan Kalowsky <dkalowsky@amperecomputing.com>
Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-07-18 18:17:09 -05:00
Daniel DeGrasse
8178c87c1c doc: release: add v4.2.0 to the list of supported releases
Add 4.2.0 to the supported release, EOL to the tentative 4.4 release
date.

Signed-off-by: Dan Kalowsky <dkalowsky@amperecomputing.com>
Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-07-18 18:17:09 -05:00
Benjamin Cabé
cae12e6d6a doc: twister: inline twister --help output into the docs
In order to make it easier for folks to discover available twister
options when using/searching the documentation, or when making external
search in their favorite search engine, inline the output of
`twister --help` into the docs so as to have an always up-to-date
and searchable snapshot of it.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-07-10 16:01:34 -05:00
Benjamin Cabé
d7ff0e4ba4 doc: develop: gsg: have west init use pinned Zephyr version for releases
When building the docs for a release, the section of the getting started
that lets the user `west init` their workspace now has them check out
the version matchin the release.

Fixes zephyrproject-rtos/zephyr#92163

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-07-07 10:12:41 -05:00
Aksel Skauge Mellbye
3cf4e2f933 doc: Add vendor filter for hw feature generation
The hw feature generation takes a long time. The HW_FEATURES_TURBO_MODE
option completely disables hw feature generation. Add a new option
HW_FEATURES_VENDOR_FILTER to be able to selectively enable hw feature
generation only for a given list of vendors. This option is useful
when working on board documentation pages.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-05-07 21:20:42 +02:00
Fabio Baltieri
1d3f7fbf48 doc: release: add v4.1.0 to the list of supported releases
Add 4.1.0 to the supported release, EOL to the tentative 4.3 release
date.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-03-07 17:34:55 +00:00
Benjamin Cabé
c0f76d9363 doc: Update Graphviz font configuration
Customize Graphviz dot rendering to use same font stack as our Sphinx
theme.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-05 00:15:48 +00:00
Benjamin Cabé
444964e031 doc: extensions: boards: Add hardware features filter to board catalog
Add a new hardware features filter to the board catalog that allows
users to filter boards based on their supported hardware capabilities.
The features are extracted from the devicetree files and organized by
binding type.

Key changes:
- Extract hardware feature descriptions from devicetree bindings
- Add HW_FEATURES_TURBO_MODE option to skip feature generation for
  faster builds (similar to DT_TURBO_MODE)
- Add tag-based UI for filtering boards by hardware features

The feature can be disabled for faster documentation builds using
-DHW_FEATURES_TURBO_MODE=1 or by using 'make html-fast'.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-02-20 15:08:50 +00:00
Fabio Baltieri
47f880d419 doc: releases: remove 2.7 from the list of supported releases
2.7 went EOL on January 26th, remove it from the list.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-02-12 20:19:11 +01:00
Fabian Blatz
2e7edcb402 doc: Kconfig: Add permalink to kconfig search
Adds a construction of a permalink pointing to the Kconfig symbol.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-02-12 12:23:19 +01:00
Henrik Brix Andersen
f07063db20 doc: update copyright notice in the documentation
Update copyright notice to reflect current year.

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2025-01-10 14:56:01 +01:00
Gerard Marull-Paretas
17806f2054 doc: extensions: api_overview: do not hardcode github URL
Add a new extension config value so that repo URL is not hardcoded in
the extension code.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2025-01-08 11:30:54 +01:00
Gerard Marull-Paretas
9a1c378b67 doc: extensions: doxybridge: add support for multiple projects
Modify the extension so that multiple Doxygen projects can be
referenced. While not required in upstream Zephyr, other users
downstream may require support for this feature.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2025-01-08 11:30:54 +01:00
Gerard Marull-Paretas
4f6b650c35 doc: extensions: doxyrunner: add support for multiple projects
Modify the extension so that multiple Doxygen projects can be added.
While not required in upstream Zephyr, other users downstream may
require support for this feature.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2025-01-08 11:30:54 +01:00
Gerard Marull-Paretas
05c1e56f73 doc: extensions: api_overview: refactor extension
The extension had a some major design flaws, mainly:

- Ignored the `api_overview_doxygen_xml_dir` setting, instead it
  "sniffed" doxyrunner properties, so violating environment boundaries
- Computation of Doxygen HTML path worked because of the hardcoded URL
  in relative form found in doc/conf.py

This patch moves most code to the actual directive, so that context can
be obtained from the document being parsed. Also, the only config
required now is the Doxygen output dir, obtained from doxyrunner at
conf.py level.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2025-01-08 11:30:54 +01:00
Henrik Brix Andersen
ea8bd5a09a doc: releases: remove v3.6.0 from the list of supported releases
remove Zephyr v3.6.0 from the list of supported releases. Zephyr v3.6.0
reached end-of-life on 2024-11-29.

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2024-12-10 11:08:20 +01:00
Benjamin Cabé
e544465cd6 doc: _scripts: conf: apply ruff lint rules
This makes all remaining Python scripts in doc compliant w.r.t current
Ruff rules

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2024-11-26 15:43:52 -05:00
Mahesh Mahadevan
95633cf68c doc: release: Add v4.0.0 to the list of supported releases
Add v4.0.0 to the list of supported releases.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2024-11-15 17:27:32 -06:00
Benjamin Cabé
3c83604b84 doc: extensions: check dead zephyr_file/zephyr_raw links
Add a check to ensure that all zephyr_file/zephyr_raw links are pointing
to valid paths in the current zephyr tree.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2024-10-30 09:43:50 -07:00
Benjamin Cabé
dbf3c8f5cd doc: fix dark mode "flashing" on page load
This hooks up the dark-mode-toggle-stylesheets-loader so that the dark
mode styles are loaded immediately, rather than waiting for the page to
load and then switching to dark mode. This prevents the "flashing" of
light mode styles on page load.

Fixes #79791

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2024-10-16 16:33:24 +01:00
Jordan Yates
fd58374663 doc: get output folder from environment
Pull the output build folder from the environment, instead of hardcoding
the HTML output folder, which is wrong for the latex build.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2024-09-25 13:49:34 -05:00
Benjamin Cabé
145dbf820d doc: Increase navigation depth in side nav bar
Increase navigation depth by 1 to enable "local" toc navigation in the
side bar for those pages that are deeper in the documentation tree.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2024-09-18 15:31:39 +02:00
Benjamin Cabé
bd29c5c410 doc: extensions: Add Doxygen tooltips to main documentation
Add Doxygen tooltips in the main documentation.

The tooltips are triggered when hovering over C symbols in the
documentation and display a preview of the Doxygen documentation for the
symbol.

Some shadow DOM magic is needed to style the tooltips correctly, without
affecting the rest of the page.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2024-08-29 16:13:41 -04:00
Jordan Yates
2e99de8047 doc: conf.py: build directory from environment
Get the output directory from environment variables instead of
attempting to reparse the CLI arguments, as these can actually refer
to a program other than `sphinx-build` (for example `sphinx-autobuild`).

Signed-off-by: Jordan Yates <jordan@embeint.com>
2024-08-26 17:05:39 +02:00
Gerard Marull-Paretas
e28232d515 doc: extensions: drop warnings_filter
This extension was created to overcome C domain/Breathe limitations.
This is no longer needed as we link directly to Doxygen pages.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-08-19 09:57:05 -04:00
Gerard Marull-Paretas
ea14a07952 doc: enable doxybridge
Enable the doxybridge extension.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2024-08-13 09:49:21 +01:00
Gerard Marull-Paretas
259db8c090 doc: deactivate breathe extension
Deactivate breathe extension from docs.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2024-08-13 09:49:21 +01:00
Alberto Escolar Piedras
25b051cf56 doc: release: Remove v3.5.0 from the list of supported releases
3.5.0 went out of support end of August.

Note the end date was stated as either 2024/07/31 or 2024/07/26
in different places.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2024-07-31 12:55:29 +02:00
Alberto Escolar Piedras
0483685642 doc: release: Add v3.7.0 to the list of supported releases
Adds v3.7.0 to the list of supported releases.
The EOL data is currently set as 2.5 years after release
which is the minimum support period we claim.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2024-07-26 13:17:55 +02:00
Théo Battrel
f2b6490dee Docs: Bluetooth: Update qualification page
With the new Bluetooth Qualification process the QDID and link to
launchstudio are outdated, remove them.

Also remove the ICS listing as it hasn't been updated for a while.
Instead add a download link to the Zephyr Bluetooth Host ICS file.

Update the documentation configuration script to include the ICS file
(`*.pts`) in the external contents.

Signed-off-by: Théo Battrel <theo.battrel@nordicsemi.no>
2024-07-22 03:29:29 -04:00
Benjamin Cabé
9ee3bf221d doc: pdf: add ImageMagick converter extension
Our documentation uses image formats such as WebP that are not supported
by LaTeX. This commit enables Sphinx's sphinx.ext.imageconverter
extension, and updates the documentation to indicate ImageMagick is
required to build docs.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2024-06-10 14:58:16 +03:00
Benjamin Cabé
8f17c830ed doc: generate sitemap.xml
Generate a sitemap.xml for the documentation.
This aims at helping search engines react faster to the addition/removal
of new pages.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2024-04-03 12:34:04 +03:00
Ederson de Souza
9ab243d671 doc: Generate develop/api/overview.rst API table from doxygen
A new extension, api_overview.py, is used to, leveraging doxygen's
Python module doxmlparser, parse the doxygen generated XML files.
All groups ('defgroup' and 'addtogroup' tags) are collected, alongside
their 'version' and 'since' info.

From there, a new Sphinx directive `api-overview-table` is populated,
including the name of the group, and if available, their 'since' and
'version' information.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2024-03-19 13:13:45 +01:00
Christopher Friedt
b14f7d00ca doc: lts: update conf.py to point at 2.7.6 (LTS)
Point the configuration at 2.7.6 (LTS).

Signed-off-by: Christopher Friedt <cfriedt@meta.com>
2024-03-02 06:21:25 -05:00
Maureen Helm
ce38e4ba6f doc: release: Remove v3.4.0 from the list of supported releases
Only the two most recent mainline releases are supported.

Signed-off-by: Maureen Helm <maureen.helm@analog.com>
2024-02-23 18:30:32 -06:00
Maureen Helm
7c7b5fbf8b doc: release: Add v3.6.0 to the list of supported releases
Adds v3.6.0 to the list of supported releases. The EOL date corresponds
to the expected release date for v4.0.0.

Signed-off-by: Maureen Helm <maureen.helm@analog.com>
2024-02-23 18:30:32 -06:00
Fabio Baltieri
24cf2f6548 doc: use substitutions to replace all current harcoded SDK versions
This creates a set of substitution rules to replace all current usages
of SDK versions in the documentation, apart from a few that were not
meant to be copy-pastable anyway and the version has just been swapped
with a <version> placeholder.

Since code-block does not parse the content, these have all been
replaced with parsed-literal. That one though parses URLs, which cannot
be broken, so a series of URL substitutions are provided too.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2024-01-18 10:54:20 +01:00
Gerard Marull-Paretas
9e5e8e8c40 doc: extensions: zephyr-domain: make Breathe inserts optional
So that external users of the domain only interested in e.g. referencing
roles, can skip tweaks made to Breathe's directives.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-01-11 10:04:44 +01:00
Henrik Brix Andersen
e2788525e0 doc: Update copyright notice in the documentation
Update copyright notice to reflect current year.

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2024-01-05 14:43:47 -05:00
Benjamin Cabé
7e253ff937 doc: Make search engine configurable
Add UI to select preferred search engine when Google Programmable Search is
enabled. The user's preference is saved using local storage.

This also makes the search input field of type "search" for better UX (in
particular on mobile).

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2023-12-15 04:34:48 -05:00