Dave Halter
3d55b2d826
Subprocess error reporting improvements
2018-08-05 12:50:17 +02:00
Dave Halter
1547177128
Fix a recursion issue about compiled objects
2018-08-04 23:20:51 +02:00
Dave Halter
72f2a9e4a5
Prefer Python 3 import over 2
2018-08-04 12:07:41 +02:00
Dave Halter
b91203820c
Now it's actually possible to specify a pytest environment for the same Python version
2018-08-04 02:00:13 +02:00
Hugo
7c9f24a18e
Drop support for EOL Python 3.3 ( #1019 )
2018-08-04 00:40:00 +02:00
Dave Halter
9ca7b30e38
Rewrite the pyc test
2018-08-03 23:59:55 +02:00
Dave Halter
fd8f254ce1
Fix an issue with stderr debugging of subprocesses
2018-08-03 23:51:58 +02:00
Dave Halter
1c76359291
stderr of the child processes should be printed in debug output
...
This fixes #1169 . It might have a bit of a different intention, but at least it's now possible to see output of the subprocess and it's not just a black hole.
2018-08-03 13:35:21 +02:00
Dave Halter
f25310e0b9
BoundMethods now have access to the function that they are using
2018-08-03 00:25:25 +02:00
Dave Halter
9ff5050d01
Use TreeContext in a good way
2018-08-03 00:25:25 +02:00
Dave Halter
1e796fc08d
Environments are now always created on request
...
The issue was that if something changed about the environment (e.g. version
switch) or sys.path change, re-creating the environment was possible, but did
not involve the change. The environments have now a __del__ function that
deletes the subprocess after every time an Environment is garbage collected.
2018-07-15 17:49:17 +02:00
Daniel Hahler
2fc91ceb64
Improve Environment
...
It only takes `executable` and gets all the information from the
subprocess directly.
Fixes https://github.com/davidhalter/jedi/issues/1107 .
2018-07-15 17:49:17 +02:00
Daniel Hahler
87d7c59c6e
subprocess: listen: exit normally with EOFError
...
This is an expected case, since the parent closed normally, and
therefore the subprocess should exit with 0.
2018-07-11 12:56:55 +02:00
Dave Halter
a59e5a016f
Actually use the fast_parser setting again
2018-07-05 21:31:03 +02:00
Dave Halter
508ed7e5b8
Directly load modules if possible, with this it's not necessary anymore to use dotted_from_fs_path, also fixes #1013 .
2018-07-05 10:03:05 +02:00
Dave Halter
f4aad8bbfe
Finally make it possible to use auto_import_modules for packages
...
This means that you can now write 'from gi.repository import Gtk' and Gtk completions work.
It also means that other libraries could be used like that for speed or other reasons.
Fixes #531
2018-07-03 00:58:43 +02:00
micbou
95f835a014
Force unicode when listing module names
...
pkgutil.iter_modules may return the module name as str instead of unicode on
Python 2.
2018-06-24 22:41:14 +02:00
micbou
282c6a2ba1
Use highest possible pickle protocol
2018-06-23 14:45:34 +02:00
Daniel Hahler
ea71dedaa1
Include stderr with "subprocess has crashed" exception ( #1124 )
...
* Include stderr with "subprocess has crashed" exception
This does not add it to the other similar exception raised from `kill`,
since this should be something like "was killed already" anyway.
* fixup! Include stderr with "subprocess has crashed" exception
2018-06-23 11:37:43 +02:00
micbou
106b11f1af
Set stdout and stdin to binary mode on Python 2 and Windows
2018-06-22 00:08:53 +02:00
micbou
f9e90e863b
Use system default buffering on Python 2
2018-06-21 19:50:51 +02:00
Dave Halter
4075c384e6
In some very rare cases it was possible to get an interpreter crash because of this bug. Fixes #1087
2018-04-23 21:26:51 +02:00
Dave Halter
88243d2408
Don't catch IndexError where we don't have to
2018-04-20 01:46:32 +02:00
Dave Halter
83d635cbac
Add a way to generalize Popen
2018-04-13 10:17:30 +02:00
Dave Halter
9b17be9ecf
Cleanup some of the module cache stuff
2018-04-10 19:16:18 +02:00
Dave Halter
567c8b8097
Fix some fstring issues for now
2018-04-05 01:11:04 +02:00
Dave Halter
b5bc25fc0b
Fix another windows issue
2018-03-23 01:21:07 +01:00
Dave Halter
c8bb41662e
Merge the windows fixes
2018-03-23 00:55:23 +01:00
Dave Halter
094affaf84
Remove stdout/stderr from subprocesses (redirected to /dev/null)
...
This means that the subprocess should now not crash anymore because of people
writing to stdout in c modules and stderr should be empty.
Fixes #793 .
2018-03-17 14:14:00 +01:00
Dave Halter
90a226f898
All modules now have a code_lines attribute, see #1062
2018-03-16 10:20:26 +01:00
Dave Halter
5d36114be4
Use inspect.Parameter.kind for better differentiation between param types
...
Refs #292
2018-03-13 22:47:08 +01:00
Dave Halter
378a5846db
Clean up zombie subprocesses, fixes #1048
2018-03-12 20:06:02 +01:00
Dave Halter
5c1d979522
Fix an issue around __dir__ in the interpreter
...
Fixes #1027 .
2018-03-12 01:46:12 +01:00
Dave Halter
9e9c62a5ab
Get rid of the imp library import in Python3 to avoid warnings, fixes #1001
2018-03-05 10:55:21 +01:00
Dave Halter
3820111d1e
Fix some more await things
2018-02-28 23:30:20 +01:00
Dave Halter
2d4636da5b
Fix for all python versions
2018-02-21 01:23:50 +01:00
Dave Halter
c1d06f4638
Getting more edget cases work in 3.6 for async
2018-02-21 01:11:59 +01:00
Dave Halter
f1c2aef963
Fix the merge issues. Now async stuff should at least partially work
2018-02-19 01:35:37 +01:00
T.Rzepka
99130e7664
Fix for Python 2 and 3 on Windows, see #1037 .
2018-02-17 13:49:10 +01:00
Dave Halter
9177c120f4
Merge the implicit namespace improvement (pkgutils.itermodules modification)
...
There are still a few issues that need to be addressed.
2018-02-15 20:08:58 +01:00
Dave Halter
92c76537d6
print_to_stderr needs to be used with one argument
...
See #1010 .
2018-02-05 19:19:05 +01:00
Dave Halter
ac597815d7
Print errors that happen when importing certain objects
...
See also #1010 .
2018-02-04 23:50:28 +01:00
Dave Halter
fe0e41e9d6
Fix some more dict.get/dict.values stuff
2018-02-02 18:24:18 +01:00
Dave Halter
3ae0560f1c
Fix an issue where a default value was wrongly used
2018-01-31 00:11:30 +01:00
Dave Halter
fc458a3c2a
inspect.signature throws weird errors sometimes, just make it a bit simpler
...
Fixes #1031
2018-01-26 01:30:10 +01:00
Dave Halter
4653c30fa4
Use the PathFinder, because the FileFinder doesn't work without suffixes
...
This feels more like importlib was intended to be used anyway.
2018-01-21 23:52:44 +01:00
Dave Halter
7fcbf7b5f0
Create the importer stuff Python2.7 and 3.3
2018-01-21 15:46:40 +01:00
Dave Halter
baacb5ec0d
Trying to use the import machinery to import jedi/parso in python3.4+
...
The problem was that adding stuff to sys.path is simply very risky, because it already caused import issues (because enum was installed in 2.7). It was bound to cause other issues
2018-01-21 15:25:59 +01:00
Dave Halter
fef594373a
Better reporting of internal errors
2018-01-20 22:56:51 +01:00
Dave Halter
41b24ab46b
Better error handling for subprocesses
...
I don't really understand why this wasn't an issue before, but it looks like we have to
catch both IOError and and socket.error in Python2.
2018-01-20 22:56:26 +01:00