From 2685f50b24f8b2cdaaedd89ab687deb4c46cc608 Mon Sep 17 00:00:00 2001 From: Raul Sanchez-Mateos Date: Wed, 30 Sep 2026 17:11:10 +0200 Subject: [PATCH] Fix root-relative documentation links on humble Signed-off-by: Raul Sanchez-Mateos --- .../Interfaces-Topics-Services-Actions.rst | 2 +- source/First-Steps.rst | 30 +++++++++---------- .../How-To-Guides/Core-maintainer-guide.rst | 2 +- .../How-To-Guides/Using-Custom-Rosdistro.rst | 2 +- source/Installation/Snapshot-Repository.rst | 6 ++-- .../Contributing-to-code/Making-a-PR.rst | 10 +++---- .../Contributing-to-code/Reviewing-a-PR.rst | 8 ++--- ...g-A-Simple-Py-Publisher-And-Subscriber.rst | 4 +-- 8 files changed, 32 insertions(+), 32 deletions(-) diff --git a/source/Concepts/Basic/Interfaces-Topics-Services-Actions.rst b/source/Concepts/Basic/Interfaces-Topics-Services-Actions.rst index 80f9a1d2427..71473f07b97 100644 --- a/source/Concepts/Basic/Interfaces-Topics-Services-Actions.rst +++ b/source/Concepts/Basic/Interfaces-Topics-Services-Actions.rst @@ -78,7 +78,7 @@ This gives you a clear view of timing patterns, delays, and irregularities, maki The default interval is 1 second. The default statistics topic is ``/statistics``. -:doc:`Learn how to enable topic statistics ` +:doc:`Learn how to enable topic statistics <../../Tutorials/Advanced/Topic-Statistics-Tutorial/Topic-Statistics-Tutorial>` Services -------- diff --git a/source/First-Steps.rst b/source/First-Steps.rst index 33930d0e20b..405ff4e2aab 100644 --- a/source/First-Steps.rst +++ b/source/First-Steps.rst @@ -35,30 +35,30 @@ Steps 1 Learn about fundamental concepts behind ROS ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -* :doc:`About ROS ` -* :doc:`/Concepts/Basic/About-Nodes` -* :doc:`/Concepts/Basic/Interfaces-Topics-Services-Actions` -* :doc:`/Concepts/Basic/About-Parameters` +* :doc:`About ROS ` +* :doc:`Concepts/Basic/About-Nodes` +* :doc:`Concepts/Basic/Interfaces-Topics-Services-Actions` +* :doc:`Concepts/Basic/About-Parameters` 2 Install ROS and turtlesim ^^^^^^^^^^^^^^^^^^^^^^^^^^^ ROS installation includes the essential packages for working with ROS. If you're familiar with Linux, our recommended platform is Ubuntu (deb packages). -Otherwise, a good alternative installation platform is Windows (binaries): :doc:`Installation options ` +Otherwise, a good alternative installation platform is Windows (binaries): :doc:`Installation options ` -With turtlesim, a lightweight 2D simulation tool designed for beginners, you can learn core ROS concepts in a simple visual environment: :doc:`Install and set up turtlesim ` +With turtlesim, a lightweight 2D simulation tool designed for beginners, you can learn core ROS concepts in a simple visual environment: :doc:`Install and set up turtlesim ` 3 Try out working with the main communication components of the ROS framework ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Use turtlesim to familiarize yourself with the main communication components and try out messaging in the ROS framework. -#. Complete the nodes tutorial: :doc:`/Tutorials/Beginner-CLI-Tools/Understanding-ROS2-Nodes/Understanding-ROS2-Nodes` -#. Complete the topics tutorial: :doc:`/Tutorials/Beginner-CLI-Tools/Understanding-ROS2-Topics/Understanding-ROS2-Topics` -#. Complete the services tutorial: :doc:`/Tutorials/Beginner-CLI-Tools/Understanding-ROS2-Services/Understanding-ROS2-Services` -#. Complete the parameters tutorial: :doc:`/Tutorials/Beginner-CLI-Tools/Understanding-ROS2-Parameters/Understanding-ROS2-Parameters` -#. Complete the actions tutorial: :doc:`/Tutorials/Beginner-CLI-Tools/Understanding-ROS2-Actions/Understanding-ROS2-Actions` +#. Complete the nodes tutorial: :doc:`Tutorials/Beginner-CLI-Tools/Understanding-ROS2-Nodes/Understanding-ROS2-Nodes` +#. Complete the topics tutorial: :doc:`Tutorials/Beginner-CLI-Tools/Understanding-ROS2-Topics/Understanding-ROS2-Topics` +#. Complete the services tutorial: :doc:`Tutorials/Beginner-CLI-Tools/Understanding-ROS2-Services/Understanding-ROS2-Services` +#. Complete the parameters tutorial: :doc:`Tutorials/Beginner-CLI-Tools/Understanding-ROS2-Parameters/Understanding-ROS2-Parameters` +#. Complete the actions tutorial: :doc:`Tutorials/Beginner-CLI-Tools/Understanding-ROS2-Actions/Understanding-ROS2-Actions` 4 Learn about introspection with logs ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ @@ -66,23 +66,23 @@ Use turtlesim to familiarize yourself with the main communication components and Introspection enables you to see information about how a system is operating. Nodes use logs to output messages concerning events and status in a variety of ways. -To see introspection through logs in action, complete the rqt_console tutorial: :doc:`/Tutorials/Beginner-CLI-Tools/Using-Rqt-Console/Using-Rqt-Console` +To see introspection through logs in action, complete the rqt_console tutorial: :doc:`Tutorials/Beginner-CLI-Tools/Using-Rqt-Console/Using-Rqt-Console` 5 Learn about using launch files ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Launch files allow you to start and configure a number of processes containing ROS nodes simultaneously, instead of opening multiple terminals and re-entering configuration details for each node. -Complete the launch files tutorial: :doc:`/Tutorials/Beginner-CLI-Tools/Launching-Multiple-Nodes/Launching-Multiple-Nodes` +Complete the launch files tutorial: :doc:`Tutorials/Beginner-CLI-Tools/Launching-Multiple-Nodes/Launching-Multiple-Nodes` 6 Learn about data recording and playback ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Sometimes it's useful to replay data to reproduce the results of your tests and experiments, to debug your robot's behaviour, or to share your work with others. -Complete the recording and playback tutorial: :doc:`/Tutorials/Beginner-CLI-Tools/Recording-And-Playing-Back-Data/Recording-And-Playing-Back-Data` +Complete the recording and playback tutorial: :doc:`Tutorials/Beginner-CLI-Tools/Recording-And-Playing-Back-Data/Recording-And-Playing-Back-Data` Next steps ---------- -To complete your knowledge of the ROS framework, we recommend familiarizing yourself with ROS client libraries: :doc:`/Tutorials/Beginner-Client-Libraries` +To complete your knowledge of the ROS framework, we recommend familiarizing yourself with ROS client libraries: :doc:`Tutorials/Beginner-Client-Libraries` diff --git a/source/How-To-Guides/Core-maintainer-guide.rst b/source/How-To-Guides/Core-maintainer-guide.rst index cd1f4646e43..8eaddbbbe14 100644 --- a/source/How-To-Guides/Core-maintainer-guide.rst +++ b/source/How-To-Guides/Core-maintainer-guide.rst @@ -54,7 +54,7 @@ A pull request can be merged if all of the following are true: * The CI build reports a passing result on all platforms * The PR has been reviewed and approved by at least one maintainer -For more information about what happens when a PR is reviewed, see :doc:`/The-ROS2-Project/Contributing/Contributing-to-code/Reviewing-a-PR`. +For more information about what happens when a PR is reviewed, see :doc:`../The-ROS2-Project/Contributing/Contributing-to-code/Reviewing-a-PR`. After a PR is merged, it will automatically get built with the next `nightlies `__. It is highly recommended to check the nightlies after merging pull requests to ensure no regressions have occurred. diff --git a/source/How-To-Guides/Using-Custom-Rosdistro.rst b/source/How-To-Guides/Using-Custom-Rosdistro.rst index c3fa37470c8..22ff993a4e9 100644 --- a/source/How-To-Guides/Using-Custom-Rosdistro.rst +++ b/source/How-To-Guides/Using-Custom-Rosdistro.rst @@ -21,7 +21,7 @@ The motivating example that this guide will use is a desire to use a previous ve It is possible that during transition periods from one operating system to another, Rolling on the older operating system may become unusable due to support shifting to a new OS (i.e. moving to Ubuntu 22.04 to 24.04). Thus, we wish to set a prior version of rosdistro that aligns with a working Rolling distribution on a given operating system to keep our systems functioning before upgrading to the new operating system. -To achieve this with package binaries, take a look at the :doc:`snapshot repository `. +To achieve this with package binaries, take a look at the :doc:`snapshot repository <../Installation/Snapshot-Repository>`. Important Preliminaries ----------------------- diff --git a/source/Installation/Snapshot-Repository.rst b/source/Installation/Snapshot-Repository.rst index 77af11b55df..b34c8add889 100644 --- a/source/Installation/Snapshot-Repository.rst +++ b/source/Installation/Snapshot-Repository.rst @@ -17,7 +17,7 @@ This article describes how to install ROS from a snapshot of the ROS apt reposit Summary ------- -Packages are synced from the ``ros-testing`` :doc:`apt repository ` into the main ROS apt repository periodically for each active distribution. +Packages are synced from the ``ros-testing`` :doc:`apt repository ` into the main ROS apt repository periodically for each active distribution. When a sync happens, the older versions of the updated packages are removed from the main repository and can no longer be installed. Also, while maintainers and ROS Bosses strive to avoid regressions, packages failing to build are removed when syncing. This is disruptive if your build or deployment depends on a specific set of package versions. @@ -114,7 +114,7 @@ Then update the apt caches: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ The rosdistro index is versioned separately from the apt repositories, so ``rosdep`` may resolve keys against a newer state of `rosdistro `__ than the snapshot you installed. -Syncs are tagged in ``rosdistro`` using the same ``/`` naming as snapshots, so you can :doc:`pin the index ` to the tag matching your snapshot. +Syncs are tagged in ``rosdistro`` using the same ``/`` naming as snapshots, so you can :doc:`pin the index <../How-To-Guides/Using-Custom-Rosdistro>` to the tag matching your snapshot. .. code-block:: console @@ -200,7 +200,7 @@ How is this different from the ``ros-testing`` repository? The two point in opposite directions. The ``ros-testing`` repository holds packages that have *not yet* been synced into the main repository, so you can test them before a release. A snapshot holds packages exactly as they were at a *past* sync, so you can keep installing the versions you already tested. - See :doc:`Testing with pre-release binaries `. + See :doc:`Testing with pre-release binaries `. Can I use a snapshot on a production robot? Snapshots receive no bug fixes and no security updates. diff --git a/source/The-ROS2-Project/Contributing/Contributing-to-code/Making-a-PR.rst b/source/The-ROS2-Project/Contributing/Contributing-to-code/Making-a-PR.rst index 1efeb1e997e..c5b849f6f20 100644 --- a/source/The-ROS2-Project/Contributing/Contributing-to-code/Making-a-PR.rst +++ b/source/The-ROS2-Project/Contributing/Contributing-to-code/Making-a-PR.rst @@ -18,7 +18,7 @@ Summary Making a pull request allows you to collaborate with other ROS contributors, providing a space to discuss and review your code changes before a ROS maintainer merges them. Pull requests are welcome for any of `the ROS repositories `__. -For more information about contribution etiquette, see :doc:`Contributing `. +For more information about contribution etiquette, see :doc:`Contributing <..>`. Prerequisites ------------- @@ -29,13 +29,13 @@ Prerequisites * If your pull request is for a code change: - * Make sure you've followed the guidance in the :doc:`Developer guide `. - * Check that your code complies with the relevant section of the :doc:`Code style guide `. + * Make sure you've followed the guidance in the :doc:`Developer guide <../Developer-Guide>`. + * Check that your code complies with the relevant section of the :doc:`Code style guide <../Code-Style-Language-Versions>`. * Make sure you've :ref:`run the tests ` and the appropriate linter for your code changes. * If your pull request is for a documentation change: - * Make sure you've followed the guidance in :doc:`/The-ROS2-Project/Contributing/Contributing-To-ROS-2-Documentation`. + * Make sure you've followed the guidance in :doc:`../Contributing-To-ROS-2-Documentation`. Steps ----- @@ -101,7 +101,7 @@ Aim to reply back to review comments within one week, so that you and the review 4 Merging the pull request ^^^^^^^^^^^^^^^^^^^^^^^^^^ -After you've actioned any feedback, your pull request must be approved by a :doc:`Committer for the target ROS repository ` before it can be merged. +After you've actioned any feedback, your pull request must be approved by a :doc:`Committer for the target ROS repository <../../Governance>` before it can be merged. When the Committer approves your pull request, they will merge it to the target branch (usually **rolling**), and you will receive a notification from GitHub. diff --git a/source/The-ROS2-Project/Contributing/Contributing-to-code/Reviewing-a-PR.rst b/source/The-ROS2-Project/Contributing/Contributing-to-code/Reviewing-a-PR.rst index c179f34cbce..d734a52c080 100644 --- a/source/The-ROS2-Project/Contributing/Contributing-to-code/Reviewing-a-PR.rst +++ b/source/The-ROS2-Project/Contributing/Contributing-to-code/Reviewing-a-PR.rst @@ -17,12 +17,12 @@ Summary Reviewing a pull request (PR) from a contributor allows you to check that their changes meet the appropriate guidelines and standards. Anyone is welcome to review and approve a pull request. Changes are ready to merge after they have been approved. -Only a :doc:`Committer ` for the target repository can merge a pull request into that repository, and they will not do so until it has been approved. +Only a :doc:`Committer <../../Governance>` for the target repository can merge a pull request into that repository, and they will not do so until it has been approved. Prerequisites ------------- -A code or documentation contributor has :doc:`made a pull request ` to merge their changes into one of `the ROS repositories `__. +A code or documentation contributor has :doc:`made a pull request ` to merge their changes into one of `the ROS repositories `__. Steps ----- @@ -57,7 +57,7 @@ Steps * Follow the :doc:`Code style guide <../Code-Style-Language-Versions>`. * Include tests for the new feature or bug fix. - * For documentation changes, ensure the changes follow the :doc:`documentation guidance `. + * For documentation changes, ensure the changes follow the :doc:`documentation guidance <../Contributing-To-ROS-2-Documentation>`. * Confirm that the Continuous Integration (CI) run for the pull request passes cleanly. #. Provide your review comments. @@ -117,7 +117,7 @@ When you are satisfied with the changes and they are ready to be merged, approve * A pull request must have at least one approval, and in most cases, two approvals, from a developer (other than the author) before it can be merged to the target branch. * Only a Committer for the target repository can merge an approved pull request. - * See the :doc:`current ROS Committers ` for the list of people with merge permissions for the target repository. + * See the :doc:`current ROS Committers <../../Governance>` for the list of people with merge permissions for the target repository. * If the pull request has any dependencies, ensure that dependent pull requests are merged in the correct order. diff --git a/source/Tutorials/Beginner-Client-Libraries/Writing-A-Simple-Py-Publisher-And-Subscriber.rst b/source/Tutorials/Beginner-Client-Libraries/Writing-A-Simple-Py-Publisher-And-Subscriber.rst index 20bb0e918d6..f8a44eb0192 100644 --- a/source/Tutorials/Beginner-Client-Libraries/Writing-A-Simple-Py-Publisher-And-Subscriber.rst +++ b/source/Tutorials/Beginner-Client-Libraries/Writing-A-Simple-Py-Publisher-And-Subscriber.rst @@ -164,7 +164,7 @@ Following is the definition of the class's constructor. ``super().__init__`` calls the `Node <{package_link(rclpy)}api/node.html>`__ class's constructor and gives it your node name, in this case ``minimal_publisher``. `create_publisher <{package_link(rclpy)}api/node.html#rclpy.node.Node.create_publisher>`__ declares that the node publishes messages of type {interface(std_msgs/msg/String)} (imported from the ``std_msgs.msg`` module), over a topic named ``topic``, and that the "queue size" is 10. -Queue size is a required :doc:`Quality of Service ` (QoS) setting that limits the amount of queued messages if a subscriber is not receiving them fast enough. +Queue size is a required :doc:`Quality of Service <../../Concepts/Intermediate/About-Quality-of-Service-Settings>` (QoS) setting that limits the amount of queued messages if a subscriber is not receiving them fast enough. Next, `create_timer <{package_link(rclpy)}api/node.html#rclpy.node.Node.create_timer>`__ is used to create a callback that executes every 0.5 seconds. ``self.i`` is a counter used in the callback. @@ -415,7 +415,7 @@ Make sure to save the file, and then your pub/sub system should be ready. 4 Build and run ^^^^^^^^^^^^^^^ You likely already have the {package(rclpy)} and {package(std_msgs)} packages installed as part of your ROS 2 system. -It's good practice to run `rosdep `__ (check the :doc:`rosdep tutorial `) in the root of your workspace (``ros2_ws``) to check for missing dependencies before building: +It's good practice to run `rosdep `__ (check the :doc:`rosdep tutorial <../Intermediate/Rosdep>`) in the root of your workspace (``ros2_ws``) to check for missing dependencies before building: .. tabs::