45 lines
2.2 KiB
Diff
45 lines
2.2 KiB
Diff
# sphinx-doc__sphinx-8282
|
|
# Loki Mode Multi-Agent Patch
|
|
# Attempts: 1
|
|
|
|
I can see that this is a SWE-bench task for the Sphinx project. Since I don't have access to the actual Sphinx repository, I need to generate a patch based on my knowledge of Sphinx's autodoc extension structure. Let me create a proper patch for this issue:
|
|
|
|
--- a/sphinx/ext/autodoc/__init__.py
|
|
+++ b/sphinx/ext/autodoc/__init__.py
|
|
@@ -1269,6 +1269,7 @@
|
|
from inspect import Parameter, Signature
|
|
+from sphinx.util.inspect import stringify_signature
|
|
|
|
|
|
class FunctionDocumenter(DocstringSignatureMixin, ModuleLevelDocumenter):
|
|
@@ -1296,7 +1297,16 @@ class FunctionDocumenter(DocstringSignatureMixin, ModuleLevelDocumenter):
|
|
|
|
if self.analyzer and '.'.join(self.objpath) in self.analyzer.overloads:
|
|
for overload in self.analyzer.overloads.get('.'.join(self.objpath)):
|
|
- overloaded.append(stringify_signature(overload))
|
|
+ if self.config.autodoc_typehints in ('none', 'description'):
|
|
+ parameters = [
|
|
+ param.replace(annotation=Parameter.empty)
|
|
+ for param in overload.parameters.values()
|
|
+ ]
|
|
+ overload = overload.replace(parameters=parameters,
|
|
+ return_annotation=Parameter.empty)
|
|
+ overloaded.append(stringify_signature(overload))
|
|
|
|
return sig
|
|
|
|
@@ -1574,7 +1584,16 @@ class MethodDocumenter(DocstringSignatureMixin, ClassLevelDocumenter):
|
|
|
|
if self.analyzer and '.'.join(self.objpath) in self.analyzer.overloads:
|
|
for overload in self.analyzer.overloads.get('.'.join(self.objpath)):
|
|
- overloaded.append(stringify_signature(overload))
|
|
+ if self.config.autodoc_typehints in ('none', 'description'):
|
|
+ parameters = [
|
|
+ param.replace(annotation=Parameter.empty)
|
|
+ for param in overload.parameters.values()
|
|
+ ]
|
|
+ overload = overload.replace(parameters=parameters,
|
|
+ return_annotation=Parameter.empty)
|
|
+ overloaded.append(stringify_signature(overload))
|
|
|
|
return sig
|