[PATCH] docs: Fix Sphinx 8 warning caused by paths represented with strings

From: Claudio Cambra
Date: Sun Sep 24 2023 - 14:41:37 EST


Running "make htmldocs" generates several lines of this warning:

Documentation/sphinx/kerneldoc.py:141: RemovedInSphinx80Warning: Sphinx 8 will drop support for representing paths as strings. Use "pathlib.Path" or "os.fspath" instead.
doc = (env.srcdir + "/" + env.docname + ":" + str(self.lineno))

Making "doc" an fspath type and creating a new variable with the
appended colon and lineno fixes this warning.

Signed-off-by: Claudio Cambra <developer@xxxxxxxxxxxxxxxxx>
---
Documentation/sphinx/kerneldoc.py | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/Documentation/sphinx/kerneldoc.py b/Documentation/sphinx/kerneldoc.py
index 9395892c7ba3..e2c835e10dba 100644
--- a/Documentation/sphinx/kerneldoc.py
+++ b/Documentation/sphinx/kerneldoc.py
@@ -138,7 +138,8 @@ class KernelDocDirective(Directive):
lineoffset = int(match.group(1)) - 1
# we must eat our comments since the upset the markup
else:
- doc = env.srcdir + "/" + env.docname + ":" + str(self.lineno)
+ doc = os.path.join(env.srcdir, env.docname)
+ doc_with_line = (doc + ":" + str(self.lineno))
result.append(line, doc + ": " + filename, lineoffset)
lineoffset += 1

--
2.42.0