From 667509ca61081f726acaf499e5e5417ea256f1a8 Mon Sep 17 00:00:00 2001
From: ovari123 <ovari123@zoho.com>
Date: Sat, 25 Jan 2025 06:28:29 -0400
Subject: [PATCH] developer/*: rst to md

Change-Id: I9a27689960f0e4cb42897f262f617d5e176c7626
---
 developer/going-further/index.md             | 14 ++++
 developer/going-further/index.rst            | 16 ----
 developer/index.md                           | 15 ++++
 developer/index.rst                          | 17 -----
 developer/new-developers/debugging-tools.md  | 72 ++++++++++++++++++
 developer/new-developers/debugging-tools.rst | 79 --------------------
 developer/new-developers/index.md            | 17 +++++
 developer/new-developers/index.rst           | 19 -----
 developer/processes/index.md                 | 10 +++
 developer/processes/index.rst                | 12 ---
 10 files changed, 128 insertions(+), 143 deletions(-)
 create mode 100644 developer/going-further/index.md
 delete mode 100644 developer/going-further/index.rst
 create mode 100644 developer/index.md
 delete mode 100644 developer/index.rst
 create mode 100644 developer/new-developers/debugging-tools.md
 delete mode 100644 developer/new-developers/debugging-tools.rst
 create mode 100644 developer/new-developers/index.md
 delete mode 100644 developer/new-developers/index.rst
 create mode 100644 developer/processes/index.md
 delete mode 100644 developer/processes/index.rst

diff --git a/developer/going-further/index.md b/developer/going-further/index.md
new file mode 100644
index 00000000..85aacc37
--- /dev/null
+++ b/developer/going-further/index.md
@@ -0,0 +1,14 @@
+# Going further
+
+This part of the documentation is dedicated to developers who want to dig into some more specific topics about Jami.
+
+```{toctree}
+:maxdepth: 1
+
+choosing-crf-value-for-encoder
+delivery-status
+important-rfcs
+location-sharing
+message-displayed-status
+setting-up-your-own-turn-server
+```
\ No newline at end of file
diff --git a/developer/going-further/index.rst b/developer/going-further/index.rst
deleted file mode 100644
index 984d39aa..00000000
--- a/developer/going-further/index.rst
+++ /dev/null
@@ -1,16 +0,0 @@
-##############
-Going further
-##############
-
-This part of the documentation is dedicated to developers who want to dig
-some more specific topics about Jami.
-
-.. toctree::
-   :maxdepth: 1
-
-   choosing-crf-value-for-encoder
-   delivery-status
-   important-rfcs
-   location-sharing
-   message-displayed-status
-   setting-up-your-own-turn-server
\ No newline at end of file
diff --git a/developer/index.md b/developer/index.md
new file mode 100644
index 00000000..8a018c14
--- /dev/null
+++ b/developer/index.md
@@ -0,0 +1,15 @@
+# Developer manual
+
+The Jami developer manual is a reference for Jami developers and contributors.
+It documents the various aspects of hacking on and developing Jami.
+It includes in-depth explanations of how Jami is designed and how its various parts work together.
+
+```{toctree}
+:maxdepth: 1
+
+feature-requests
+new-developers/index
+jami-concepts/index
+going-further/index
+processes/index
+```
\ No newline at end of file
diff --git a/developer/index.rst b/developer/index.rst
deleted file mode 100644
index 05068de2..00000000
--- a/developer/index.rst
+++ /dev/null
@@ -1,17 +0,0 @@
-################
-Developer manual
-################
-
-The Jami developer manual is a reference for Jami developers and
-contributors, documenting the various aspects of hacking on and
-developing Jami, including in-depth explanations of how Jami is
-designed and how its various parts work together.
-
-.. toctree::
-   :maxdepth: 1
-
-   feature-requests
-   new-developers/index
-   jami-concepts/index
-   going-further/index
-   processes/index
\ No newline at end of file
diff --git a/developer/new-developers/debugging-tools.md b/developer/new-developers/debugging-tools.md
new file mode 100644
index 00000000..45c34286
--- /dev/null
+++ b/developer/new-developers/debugging-tools.md
@@ -0,0 +1,72 @@
+# Debugging tools
+
+There are several ways to debug Jami from a developer perspective, depending on what is required to be debugged.
+
+## Loggers
+
+The first way is to use runtime loggers.
+Starting `jami` with `-d` will enable logging by the daemon (or the Troubleshoot section in the General settings).
+All logs are not enabled by default, as Jami uses several libraries.
+However, passing environment variables enables logs:
+
++ `SIPLOGLEVEL=5` enables logs from PJSIP.
++ `DHTLOGLEVEL=5` enables logs from OpenDHT.
++ `AVLOGLEVEL=50` enables logs from ffmpeg.
+
+## Debuggers
+
+Generally, the IDE has an embedded debugger.
+Otherwise, `gdb` can be used, for example, to be able to add breakpoints, backtraces from crashes, print internal structures, etc.
+To get debug symbols, it is required to compile the project in *DEBUG* mode.
+
+Some useful commands:
+
++ `b file.cpp:line` - add a breakpoint (*file.cpp:line* can be replaced by a symbol)
++ `t a a bt` - (thread apply all backtrace) to get all backtraces
++ `Ctrl + X / A` - pass in graphical view
++ `p` - print an internal value.
+
+```{note}
+Visual Studio Code is fully supported by Jami and can be used to debug the project.
+```
+
+## Profilers
+
+Debuggers are useful, but they do not show real-time memory consumption/network activity/CPU usage.
+For this, an embedded profiler in the (Android Studio, Qt Creator/Visual Studio, etc.) IDE can be used.
+
+## AddressSanitizer
+
+[AddressSanitizer](https://github.com/google/sanitizers/wiki/AddressSanitizer) can be useful to detect leaks, crashes, and potential deadlocks at runtime.
+To enable this, compile the daemon with `CXXFLAGS+="-fsanitize=address"`.
+Other flags like `tsan` may be useful.
+
+## Valgrind/Callgrind
+
+[Valgrind](https://valgrind.org/) is a tool to watch allocations, CPU usage, and more and can be used via:
+`valgrind --tool=callgrind ./jami -d`.
+This will make the application very slow but can provide useful reports about memory allocation/performance usage (**KCacheGrind** can be used to read reports).
+
+## Tests
+
+Daemon has many tests and coverage enabled.
+If the daemon is built in static (else private symbols will not be available), adding new tests can help to reproduce bugs, solve bugs, and avoid any regression.
+(cf. `daemon/tests/unitTests`)
+
+## Agent
+
+Tests are only using one daemon to simulate both peers.
+So it can be difficult to test in various environments.
+Another possibility is to write a scenario and run an agent (documentation is available in the daemon's repository).
+
+## LTTng
+
+Finally, tracepoints can be created and analyzed.
+`daemon/tools/trace` provide the documentation and some examples.
+The advantage of [LTTng](https://lttng.org/) is that it is quicker than logs, can be triggered by system events and can be used with tracepoints already present in the kernel (so that it can be used with tracepoints from network interfaces).
+
+## Tests
+
+Both clients and daemon have tests.
+Daemon's tests are written in C++ and use the `cppunit` framework.
+They are located in the `daemon/tests` directory.
\ No newline at end of file
diff --git a/developer/new-developers/debugging-tools.rst b/developer/new-developers/debugging-tools.rst
deleted file mode 100644
index f3808659..00000000
--- a/developer/new-developers/debugging-tools.rst
+++ /dev/null
@@ -1,79 +0,0 @@
-Debugging Tools
----------------
-
-There are several ways to debug Jami from a developer perspective, depending on what you want to debug.
-
-Loggers
-~~~~~~~
-
-The first way is to use runtime loggers. Starting `jami` with `-d` will enable logging by the daemon
-(or the Troubleshoot section in the General settings). Because Jami uses several libraries, we do not
-enable all logs by default. But you can pass some environment variables to show it:
-
-+ `SIPLOGLEVEL=5` for enabling logs from PJSIP.
-+ `DHTLOGLEVEL=5` for enabling logs from OpenDHT.
-+ `AVLOGLEVEL=50` for enabling logs from ffmpeg.
-
-Debuggers
-~~~~~~~~~
-
-Generally your IDE has an embedded debugger. Else, you can use `gdb` for example to be able to
-add breakpoints, backtraces from crashes, print internal structures, etc. You need to compile the
-project in *DEBUG* mode to get debug symbols.
-
-Some useful commands:
-
-+ `b file.cpp:line` - Add a breakpoint (*file.cpp:line* can be replaced by a symbol)
-+ `t a a bt` - (thread apply all backtrace) to get all backtraces
-+ `Ctrl + X / A` - pass in graphical view
-+ `p` - print an internal value.
-
-Note: VSCode is fully supported by Jami and can be used to debug the project.
-
-Profilers
-~~~~~~~~~
-
-Debuggers are useful, but they do not show real-time memory consumption/network activity/CPU usage.
-For this, you can use the embedded profiler in your IDE (from Android Studio or Qt Creator/Visual Studio
-for example).
-
-Address Sanitizer
-~~~~~~~~~~~~~~~~~
-
-This can be useful to detect leaks, crashes, potential deadlocks at runtime. To enable this, you can
-compile the daemon with `CXXFLAGS+="-fsanitize=address"`. Other flags like `tsan` may be useful.
-
-Valgrind/Callgrind
-~~~~~~~~~~~~~~~~~~
-
-Valgrind is a tool to watch allocations, CPU usage and more and can be used via:
-`valgrind --tool=callgrind ./jami -d`. This will make the application very slow but can provide useful
-reports about memory allocation/performance usage (**KCacheGrind** can be used to read reports).
-
-Tests
-~~~~~
-
-Daemon has many tests and coverage enabled. If the daemon is built in static (else private symbols will
-not be available), adding new tests can help to reproduce bugs, solve bugs and avoid any regression.
-(cf. `daemon/tests/unitTests``)
-
-Agent
-~~~~~
-
-Tests are only using one daemon to simulate both peers. So it can be difficult to test in various
-environments. Another possibility is to write a scenario and run an agent (documentation is available
-in the daemon's repository).
-
-LTTng
-~~~~~
-
-Finally, tracepoints can be created and analyzed. `daemon/tools/trace` provide the documentation
-and some examples. The advantage of LTTng is that it is quicker than logs, can be triggered by system
-events and can be used with tracepoints already present in the kernel (so that it can be used with
-tracepoints from network interfaces).
-
-Tests
-~~~~~
-
-Both clients and daemon have tests. Daemon's tests are written in C++ and use the `cppunit` framework.
-They are located in the `daemon/tests` directory.
\ No newline at end of file
diff --git a/developer/new-developers/index.md b/developer/new-developers/index.md
new file mode 100644
index 00000000..cbcbf23a
--- /dev/null
+++ b/developer/new-developers/index.md
@@ -0,0 +1,17 @@
+# New developers
+
+This part of the documentation is intended for new developers who want to contribute to the project.
+It explains some of the tools and conventions.
+
+```{toctree}
+:maxdepth: 1
+
+apis-of-jami
+coding-style
+debugging-tools
+improving-quality-of-jami
+qt-qml-coding-style
+qt-qml-testing-tools
+submitting-your-first-patch
+working-with-gerrit
+```
\ No newline at end of file
diff --git a/developer/new-developers/index.rst b/developer/new-developers/index.rst
deleted file mode 100644
index 5bd44c6b..00000000
--- a/developer/new-developers/index.rst
+++ /dev/null
@@ -1,19 +0,0 @@
-##############
-New Developers
-##############
-
-This part of the documentation is intended for new developers who want to
-contribute to the project. It explains the tools, some conventions and some
-tools.
-
-.. toctree::
-   :maxdepth: 1
-
-   apis-of-jami
-   coding-style
-   debugging-tools
-   improving-quality-of-jami
-   qt-qml-coding-style
-   qt-qml-testing-tools
-   submitting-your-first-patch
-   working-with-gerrit
\ No newline at end of file
diff --git a/developer/processes/index.md b/developer/processes/index.md
new file mode 100644
index 00000000..57843a53
--- /dev/null
+++ b/developer/processes/index.md
@@ -0,0 +1,10 @@
+# Processes
+
+This section describes the processes that are used to develop and release the software.
+
+```{toctree}
+:maxdepth: 1
+
+design-process
+release-process
+```
\ No newline at end of file
diff --git a/developer/processes/index.rst b/developer/processes/index.rst
deleted file mode 100644
index 998fafc2..00000000
--- a/developer/processes/index.rst
+++ /dev/null
@@ -1,12 +0,0 @@
-#########
-Processes
-#########
-
-This section describes the processes that are used to develop and release the
-software.
-
-.. toctree::
-   :maxdepth: 1
-
-   design-process
-   release-process
\ No newline at end of file
-- 
GitLab