Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

PR: Fix several IPdb problems and add some improvements to it #4202

Merged
merged 65 commits into from
May 30, 2017
Merged
Changes from 1 commit
Commits
Show all changes
65 commits
Select commit Hold shift + click to select a range
e0c2080
Debugger: Get values while debugging
ccordoba12 Feb 25, 2017
95b7bd2
IPython console: Improve how values are obtained during debugging
ccordoba12 Feb 25, 2017
e3c091c
IPython console: Make set_value work while debugging
ccordoba12 Feb 25, 2017
bbbc461
IPython console: Simplify again getting values while debugging
ccordoba12 Feb 25, 2017
1ef152e
IPython console: Use the new definition of refresh_namespacebrowser i…
ccordoba12 Feb 25, 2017
05664d2
IPython console: Make remove_value and copy_value work while debugging
ccordoba12 Feb 25, 2017
f7aa848
IPython console: Make clear_console work while debugging
ccordoba12 Feb 25, 2017
62283b8
IPython console: Add code to run any magic while debugging
ccordoba12 Feb 25, 2017
4c09512
IPython console: Make reset_namespace work will debugging
ccordoba12 Feb 25, 2017
3083159
IPython console: Make setting cwd work while debugging
ccordoba12 Feb 25, 2017
c142c16
IPython console: Make showing images while debugging to work
ccordoba12 Feb 25, 2017
ef71c32
IPython console: Don't block the console trying to run cells or lines…
ccordoba12 Feb 26, 2017
bfe272c
IPython console: Dump Variable Explorer state and Pdb step to a pickl…
ccordoba12 Feb 26, 2017
c279733
IPython console: Add a method to get the kernel id of a client
ccordoba12 Feb 26, 2017
f90d235
IPython console: Add a method to load pdb state saved to disk while d…
ccordoba12 Feb 26, 2017
72173d2
IPython console: Add a method to refresh Variable Explorer and Editor…
ccordoba12 Feb 26, 2017
e85b0df
IPython console: Simplify how we update the Variable Explorer and the…
ccordoba12 Feb 26, 2017
278343f
IPython console: Remove code from debugging widget that's not needed …
ccordoba12 Feb 26, 2017
d8e4ff6
Testing: Remove test that makes no sense anymore
ccordoba12 Feb 26, 2017
269904f
IPython console: Don't manually clean Variable Explorer after a reset…
ccordoba12 Feb 26, 2017
5d024e0
IPython console: Avoid error if pdb state file is not wrriten to disk
ccordoba12 Feb 26, 2017
81bc7c7
IPython console: Make %debug and %pdb magics to update Spyder plugins
ccordoba12 Feb 26, 2017
c86ce59
Testing: Add a test to verify the clear and reset magics work while d…
ccordoba12 Feb 26, 2017
b0f5c06
IPython console: Use publish_data to update the Variable Explorer and…
ccordoba12 Mar 1, 2017
4950715
IPython console: Avoid running help widget methods when on Pdb
ccordoba12 Mar 1, 2017
5549a65
IPython console: Avoid loading and saving data while debugging to not…
ccordoba12 Mar 1, 2017
d0f85d9
IPython console: Allow to copy text while debugging
ccordoba12 Mar 1, 2017
9dc28ed
IPython console: Fix pickling errors on the kernel side
ccordoba12 Mar 1, 2017
a84aa6e
IPython console: Ignore all errors when getting values from the kernel
ccordoba12 Mar 1, 2017
6e1bdb3
IPython console: Add a %plot magic to display plots while debugging
ccordoba12 Mar 1, 2017
d2ad076
Testing: Add a test that verifies that Ctrl+C only prints a message w…
ccordoba12 Mar 1, 2017
3ca04bd
Update with 3.x
ccordoba12 Apr 13, 2017
572bd67
Debugging: Fix test_clear_and_reset_magics_dbg
ccordoba12 Apr 13, 2017
05701fa
IPython console: Fix Ctrl+C while debugging in Python 2
ccordoba12 Apr 14, 2017
5472c96
Testing: Don't use shortcuts to trigger magics in test_clear_and_rese…
ccordoba12 Apr 14, 2017
edc5a88
IPython console: Remove unneeded import
ccordoba12 Apr 14, 2017
d3760ad
Testing: Add a test to verify that our %plot magic is working while d…
ccordoba12 Apr 14, 2017
d625e36
Testing: Add a test for value operations in the IPython console while…
ccordoba12 Apr 14, 2017
26622c6
Debugging: Restore moving to first breakpoint by default
ccordoba12 Apr 15, 2017
d4a5154
Python console: Fix debugging
ccordoba12 Apr 19, 2017
e40612f
IPython history: Add browsing history while debugging
ccordoba12 Apr 19, 2017
dd59943
IPython console: Use a mixin to browse history while debugging
ccordoba12 Apr 26, 2017
86a93c8
Python console: Use BrowseHistoryMixin there too
ccordoba12 Apr 26, 2017
d8de36a
Testing: Fix more tests
ccordoba12 Apr 26, 2017
375a0ca
Update with 3.x
ccordoba12 May 23, 2017
693fb42
Testing: Skip a test for PyQt wheels
ccordoba12 May 23, 2017
c7471ff
Testing: Test that using the Working directory toolbar is working whi…
ccordoba12 May 27, 2017
6f62309
Testing: Test that c and n Pdb commands update the Variable Explorer
ccordoba12 May 27, 2017
986fc45
Testing: Move debugging test for the main window to be the last ones
ccordoba12 May 27, 2017
42a5d00
Testing: Skip more failing tests
ccordoba12 May 28, 2017
ef23f48
Testing: Increase waiting time for test_change_cwd_dbg
ccordoba12 May 28, 2017
4e45e7e
Testing: Test that getting/setting values in the IPython console is w…
ccordoba12 May 28, 2017
6bd3f62
Testing: Add a test for %varexp while debugging
ccordoba12 May 28, 2017
0947438
Testing: Test that we correctly stop a debugging session
ccordoba12 May 28, 2017
f64e5e9
Testing: Reduce the max number of repetitions for flaky tests
ccordoba12 May 29, 2017
7c38b06
Testing: Test that browsing command history is working while debugging
ccordoba12 May 29, 2017
ae77c4c
Testing: Test that variable types can't be changed in the Variable Ex…
ccordoba12 May 29, 2017
df8e1df
Variable Explorer: Avoid a RuntimeError when modifying nested objects…
ccordoba12 May 29, 2017
060ddd6
Testing: Fix test_change_types_in_varexp
ccordoba12 May 29, 2017
4718bf8
Testing: Fix test_change_cwd_dbg
ccordoba12 May 29, 2017
6773066
Testing: Use the Editor introspection machinery when it's really needed
ccordoba12 May 30, 2017
25a8c08
Testing: Shutdown kernels for the IPython console tests
ccordoba12 May 30, 2017
119395f
Testing: Run IPython console tests in Circle again
ccordoba12 May 30, 2017
5f1040d
Testing: Skip test_calltip on Linux because it times out on PyQt4 too
ccordoba12 May 30, 2017
649e24f
Testing: Don't skip IPython console tests on Python 2
ccordoba12 May 30, 2017
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
IPython console: Add a method to refresh Variable Explorer and Editor…
… from a Pdb session
  • Loading branch information
ccordoba12 committed Feb 26, 2017
commit 72173d203852ffa4a0d1d32cd54cdfbb41c2204a
15 changes: 15 additions & 0 deletions spyder/widgets/ipythonconsole/debugging.py
Original file line number Diff line number Diff line change
Expand Up @@ -126,6 +126,21 @@ def _load_pdb_state(self):
with open(filename, 'rb') as f:
self._pdb_state = pickle.load(f)

def _refresh_from_pdb(self):
"""Refresh Variable Explorer and Editor from a Pdb session."""
self._load_pdb_state()

if 'step' in self._pdb_state and 'fname' in self._pdb_state['step']:
fname = self._pdb_state['step']['fname']
lineno = self._pdb_state['step']['lineno']
self.sig_pdb_step.emit(fname, lineno)

if 'namespace_view' in self._pdb_state:
self.sig_namespace_view.emit(self._pdb_state['namespace_view'])

if 'var_properties' in self._pdb_state:
self.sig_var_properties.emit(self._pdb_state['var_properties'])

# ---- Private API (overrode by us) -------------------------------
def _handle_input_request(self, msg):
"""
Expand Down