Skip to content

Commit d469b6d

Browse files
committed
Simplify hook usage, do not use default args
as these are not supported by pluggy
1 parent 0fe6cf6 commit d469b6d

File tree

4 files changed

+16
-15
lines changed

4 files changed

+16
-15
lines changed

pylsp/_utils.py

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -209,6 +209,10 @@ def choose_markup_kind(client_supported_markup_kinds: List[str]):
209209
return "markdown"
210210

211211

212+
def convert_signatures_to_markdown(signatures: List[str]) -> str:
213+
return wrap_signature("\n".join(signatures))
214+
215+
212216
def format_docstring(
213217
contents: str,
214218
markup_kind: str,
@@ -235,11 +239,11 @@ def format_docstring(
235239
value = escape_markdown(contents)
236240

237241
if signatures:
238-
if signatures_to_markdown is None:
239-
wrapped_signatures = wrap_signature("\n".join(signatures))
240-
else:
241-
wrapped_signatures = signatures_to_markdown(signatures)
242-
242+
wrapped_signatures = (
243+
signatures_to_markdown(signatures)
244+
if signatures_to_markdown
245+
else convert_signatures_to_markdown(signatures)
246+
)
243247
value = wrapped_signatures + "\n\n" + value
244248

245249
return {"kind": "markdown", "value": value}

pylsp/plugins/hover.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99

1010

1111
@hookimpl
12-
def pylsp_hover(config, document, position, signatures_to_markdown=None):
12+
def pylsp_hover(config, document, position, signatures_to_markdown):
1313
code_position = _utils.position_to_jedi_linecolumn(document, position)
1414
definitions = document.jedi_script(use_document_path=True).infer(**code_position)
1515
word = document.word_at_position(position)

pylsp/plugins/jedi_completion.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@
3737

3838

3939
@hookimpl
40-
def pylsp_completions(config, document, position, signatures_to_markdown=None):
40+
def pylsp_completions(config, document, position, signatures_to_markdown):
4141
"""Get formatted completions for current code position"""
4242
settings = config.plugin_settings("jedi_completion", document_path=document.path)
4343
resolve_eagerly = settings.get("eager", False)
@@ -142,7 +142,7 @@ def pylsp_completions(config, document, position, signatures_to_markdown=None):
142142

143143
@hookimpl
144144
def pylsp_completion_item_resolve(
145-
config, completion_item, document, signatures_to_markdown=None
145+
config, completion_item, document, signatures_to_markdown
146146
):
147147
"""Resolve formatted completion for given non-resolved completion"""
148148
shared_data = document.shared_data["LAST_JEDI_COMPLETIONS"].get(

pylsp/python_lsp.py

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -900,13 +900,10 @@ def m_workspace__did_change_watched_files(self, changes=None, **_kwargs):
900900
def m_workspace__execute_command(self, command=None, arguments=None):
901901
return self.execute_command(command, arguments)
902902

903-
@property
904-
def _signatures_to_markdown(self):
905-
if not hasattr(self, "_signatures_to_markdown_hook"):
906-
self._signatures_to_markdown_hook = self._hook(
907-
"pylsp_signatures_to_markdown"
908-
)
909-
return self._signatures_to_markdown_hook
903+
def _signatures_to_markdown(self, signatures):
904+
return self._hook(
905+
"pylsp_signatures_to_markdown", signatures=signatures
906+
) or _utils.convert_signatures_to_markdown(signatures=signatures)
910907

911908

912909
def flatten(list_of_lists):

0 commit comments

Comments
 (0)