Commit Graph

108 Commits

Author SHA1 Message Date
Elizaveta Shashkova
c8864c4f08 Fix saving variables after "Run with Python Console" 2018-08-30 12:31:12 +03:00
Elizaveta Shashkova
04fafbb47d PY-31405 Save main module and update variables after exception in file run in Console 2018-08-30 12:31:12 +03:00
Alexander Koshevoy
ea01237229 PY-18029 Fix broken encapsulation for rpc_client field of InterpreterInterface in _rpc_server method
Also fix possible race condition for setting and accessing `InterpreterInterface.rpc_client` field.
2018-08-22 23:16:40 +03:00
Alexander Koshevoy
4f0f3f5b31 PY-18029 _jetbrains_ply and _jetbrains_thrift renamed to _shaded_ply and _shaded_thrift respectively 2018-08-22 23:16:40 +03:00
Alexander Koshevoy
82457d6510 PY-18029 Rename thrift_communication to protocol and explicitly name protocol entities there 2018-08-22 23:16:40 +03:00
Alexander Koshevoy
c375d018cf PY-18029 Move communication scripts from pydev_console to _pydev_comm package 2018-08-22 23:16:40 +03:00
Alexander Koshevoy
7609ab5459 PY-18029 Update logger category after thrift package renaming 2018-08-22 23:16:40 +03:00
Alexander Koshevoy
b65b8f1798 PY-18029 Add explanation for enable_thrift_logging() method 2018-08-22 23:16:40 +03:00
Alexander Koshevoy
b59159d78e PY-18029 Fix IPython console 2018-08-22 23:16:40 +03:00
Alexander Koshevoy
9dc2f17d6e PY-18029 Rename Python Console Thrift services
* Rename `PythonConsole` to `PythonConsoleBackendService`.
* Rename `IDE` to `PythonConsoleFrontendService`.
2018-08-22 23:16:40 +03:00
Alexander Koshevoy
338b9fc572 PY-18029 Remove pydev_run_in_console.py
This script is no longer used in PyCharm but it requires changes after switching to new transport.
2018-08-22 23:16:40 +03:00
Alexander Koshevoy
a8f83044a2 PY-18029 Fix Python console for Docker and Docker Compose
* Use `server` mode for Python console.
* Support `port` parameter for `server` mode.
* Wait for `server` to be started and then try to connect.
2018-08-22 23:16:40 +03:00
Alexander Koshevoy
ad8e9d0436 PY-18029 Finish Python Console improvements 2018-08-22 23:16:40 +03:00
Alexander Koshevoy
51f617151a PY-18029 Synchronous process of client requests from different threads 2018-08-22 23:16:40 +03:00
Alexander Koshevoy
010e0e8d51 PY-18029 Python console Thrift communication implemented on Python side
A fix-up required for Python console tests!
2018-08-22 23:16:40 +03:00
Alexander Koshevoy
0231afbf64 PY-18029 Thrift on PyCharm helpers side under construction 2018-08-22 23:16:40 +03:00
likaiguo
84cc39af85 Ignore unicode error in Python Console 2018-08-08 15:42:51 +03:00
Elizaveta Shashkova
c25e0b5778 Disable IPython completion for speed (PY-30222) and correct types showing (PY-30611)
IPython completion works very slow in some cases and becomes useless. It's better to make completion less detailed, but
2018-07-17 12:51:13 +03:00
Elizaveta Shashkova
23d832154c Attribute error while loading matplotlib with qt5 (PY-26652)
Detect PyQt backend for Qt api
2017-12-12 17:10:27 +03:00
Elizaveta Shashkova
d7e088bbe8 Handle connection errors properly (PY-21426) 2017-12-07 16:06:39 +03:00
Elizaveta Shashkova
41305bba5c "Show command line afterwards" doesn't work with Remote Interpreter (PY-21426)
Wait for handshake event before sending a notification about console start
2017-12-06 17:32:19 +03:00
Elizaveta Shashkova
bfbbb8a750 No interactive output from IPython console (PY-26479)
Do not patch sys.stdout to postpone banner showing, just call an appropriate function before execution of greeting message.
2017-12-04 14:50:26 +03:00
Elizaveta Shashkova
11482b4ba8 Updates from PyDev: Fix for case when python-future is installed and provides a dummy 'builtins' module even on Python 2. #PyDev-845 2017-10-19 20:22:58 +03:00
Elizaveta Shashkova
015ac5f195 Updates from PyDev: No longer putting True, False and object in builtins and fixing some places where setattr was being used when an assign could be used instead. 2017-10-19 20:22:34 +03:00
Elizaveta Shashkova
a3dffc58ac Add ability to load variables in the Variables Pane asynchronously (PY-12987)
If in the frame there is at least one very long or slow variable, the frame's variable aren't shown. In order to avoid such situations we add an option to load variables asynchronously. At first debugger loads only names of the variables, and after that it sends additional commands and evaluates values of the variables in a separate threads.
2017-10-09 21:20:18 +03:00
Elizaveta Shashkova
94de8b61f8 Update console after IPython detection and fix Console folding (PY-25468) 2017-08-02 20:06:00 +03:00
Elizaveta Shashkova
546664d99f Detect IPython correctly for Remote Python Console (PY-21384, PY-25468)
Do not send greeting message via error output, because sometimes it's lost. Also we need to handle IPython banner correctly, because it's printed to output when the new instance of interpreter is created. Now we don't print it, but execute it as a first command.
2017-08-02 20:05:55 +03:00
Alexander Koshevoy
a26fb9c2b7 PY-18748 Python console connection issue for Docker (Compose) fixed
Python console supported for major Docker Engine setups:
 - Docker for Mac with available for Docker 17.06 onwards;
 - Docker for Linux with host address of docker0 network interface;
 - Docker for Windows (Linux containers only) running in legacy client mode;
 - Docker Machine with VirtualBox provider.
2017-07-31 12:01:03 +03:00
Elizaveta Shashkova
d723e75350 "Execute Line in Console" doesn't work when debugging script (PY-21815 )
Select correct tool window and enable multiline commands in debug console
2017-03-13 19:31:00 +03:00
Elizaveta Shashkova
7e6e720d29 Disable matplotlib support if display isn't available (PY-16100) 2017-02-13 20:58:02 +03:00
Elizaveta Shashkova
575801c275 Add IPython variables to Special variables in IPython console and console with "show command line afterwards" option (PY-21641) 2016-11-28 16:08:43 +03:00
Elizaveta Shashkova
052340705d Can't saw script output with Remote Interpreter and "Show command line afterwards" option (PY-21426) 2016-11-24 21:02:11 +03:00
Elizaveta Shashkova
096ecf1532 Fix errors and fully support matplotlib interactive mode in run and debug with the option "Show command line afterwards" enabled (PY-21330) 2016-11-09 20:42:31 +03:00
Elizaveta Shashkova
445f59ed23 Fixes after Fabio's review in pull request 2016-11-03 20:37:31 +03:00
Elizaveta Shashkova
7e70c470ac Error 'Inappropriate ioctl for device' in debugger with Django (PY-21096)
Do not override original sys.stdin.isatty(), because it can't be set to any constant value. It should be False for local interpreters and True for remote interpreters.
2016-11-02 19:26:03 +03:00
Elizaveta Shashkova
6b47714558 Support filtering variables for old versions of IPython (PY-21250) 2016-10-27 13:40:05 +03:00
Elizaveta Shashkova
85e769a6ae Do not change the original dict with ipython variables (PY-21054) 2016-10-13 14:27:44 +03:00
Elizaveta Shashkova
f728deeb14 Variables Pane: Simplified Variables View (PY-21054) 2016-10-13 14:27:43 +03:00
Elizaveta Shashkova
eaa102c750 IPython debug console: distinguish between user variables and ipython ones (PY-5171)
Information about IPython hidden variables is taken from the special IPython dict. After that we move these variables to a separate group "IPython Variables".
2016-10-13 14:27:42 +03:00
Elizaveta Shashkova
35b9571c15 Set isatty=True fir IPython console only (PY-20732) 2016-09-27 15:48:21 +03:00
Elizaveta Shashkova
ad94b142ac The prompt in debug console with IPython (PY-20685)
We need to add message to output in order to notify ide side about using IPython
2016-09-09 15:36:47 +03:00
Elizaveta Shashkova
7662a87aed Missed attributes in sys.stdin after patching (PY-20154, PY-20165)
We can't override all the attributes of BaseStdIn, so there is need to call the attributes from the original sys.stdin if they weren't found.
2016-07-24 13:15:40 +02:00
Elizaveta Shashkova
a8f13c9f69 Fix input() and help() functions in IPython debug console (PY-19853) 2016-07-07 15:41:02 +03:00
Dmitry Trofimov
e34f964c45 Better message formatiing 2016-07-01 18:02:57 +02:00
Dmitry Trofimov
c5195de2e9 Add flush to stderr write 2016-07-01 18:02:57 +02:00
fitermay
3f6d36fe2a --fix issue with locals not being set in debugger console 2016-04-30 19:50:26 -04:00
Elizaveta Shashkova
9cec506ec7 Support gevent in debugger (PY-14992) 2016-03-10 02:44:48 +03:00
Elizaveta Shashkova
3af189142f Changes from PyDev debugger 2016-02-04 18:51:54 +03:00
Elizaveta Shashkova
a73e5d60d8 Fix exception in console with python 3 (PY-18189) 2016-01-14 20:47:21 +03:00
Elizaveta Shashkova
c3b333e727 refactoring in matplotlib support 2015-02-10 15:55:10 +03:00