summaryrefslogtreecommitdiff
path: root/dev-python/python-language-server/files/pyls-jedi-18.patch
blob: 1410f3a81dd74902df46e6a69140efc413df519d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
From 40afab312a6bf0dcd620c82e59555ea2967aacdf Mon Sep 17 00:00:00 2001
From: bnavigator <code@bnavigator.de>
Date: Tue, 5 Jan 2021 01:17:33 +0100
Subject: [PATCH 1/2] bump jedi compatibility: compare to Path-like object

---
 pyls/plugins/symbols.py | 2 +-
 setup.py                | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/pyls/plugins/symbols.py b/pyls/plugins/symbols.py
index 6468dd83..69a09fe9 100644
--- a/pyls/plugins/symbols.py
+++ b/pyls/plugins/symbols.py
@@ -37,7 +37,7 @@ def pyls_document_symbols(config, document):
                         not sym_full_name.startswith('__main__')):
                     continue
 
-        if _include_def(d) and document.path == d.module_path:
+        if _include_def(d) and os.path.samefile(document.path, d.module_path):
             tuple_range = _tuple_range(d)
             if tuple_range in exclude:
                 continue
diff --git a/setup.py b/setup.py
index 12782990..99d2b312 100755
--- a/setup.py
+++ b/setup.py
@@ -10,7 +10,7 @@
         'configparser; python_version<"3.0"',
         'future>=0.14.0; python_version<"3"',
         'backports.functools_lru_cache; python_version<"3.2"',
-        'jedi>=0.17.2,<0.18.0',
+        'jedi>=0.17.2,<0.19.0',
         'python-jsonrpc-server>=0.4.0',
         'pluggy',
         'ujson<=2.0.3 ; platform_system!="Windows" and python_version<"3.0"',

From e442467312fe967bff5f893b7e3f92da133182c8 Mon Sep 17 00:00:00 2001
From: bnavigator <code@bnavigator.de>
Date: Tue, 5 Jan 2021 01:37:25 +0100
Subject: [PATCH 2/2] Curse you Python 2 on Windows: os.path.samefile not
 implemented

---
 pyls/plugins/symbols.py | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/pyls/plugins/symbols.py b/pyls/plugins/symbols.py
index 69a09fe9..ef8e7fb8 100644
--- a/pyls/plugins/symbols.py
+++ b/pyls/plugins/symbols.py
@@ -36,8 +36,14 @@ def pyls_document_symbols(config, document):
                 if (not sym_full_name.startswith(module_name) and
                         not sym_full_name.startswith('__main__')):
                     continue
-
-        if _include_def(d) and os.path.samefile(document.path, d.module_path):
+        try:
+            docismodule = os.path.samefile(document.path, d.module_path)
+        except AttributeError:
+            # Python 2 on Windows has no .samefile, but then these are
+            # strings for sure
+            docismodule = document.path == d.module_path
+
+        if _include_def(d) and docismodule:
             tuple_range = _tuple_range(d)
             if tuple_range in exclude:
                 continue