byebug 3.2.0 → 3.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.rubocop.yml +3 -0
- data/CHANGELOG.md +125 -99
- data/CONTRIBUTING.md +4 -6
- data/GUIDE.md +42 -20
- data/Gemfile +5 -3
- data/README.md +2 -3
- data/Rakefile +11 -7
- data/bin/byebug +2 -252
- data/byebug.gemspec +7 -4
- data/ext/byebug/byebug.c +17 -18
- data/ext/byebug/byebug.h +4 -5
- data/ext/byebug/context.c +37 -39
- data/ext/byebug/threads.c +39 -18
- data/lib/byebug.rb +2 -110
- data/lib/byebug/attacher.rb +23 -0
- data/lib/byebug/breakpoint.rb +60 -0
- data/lib/byebug/command.rb +62 -70
- data/lib/byebug/commands/break.rb +24 -24
- data/lib/byebug/commands/catchpoint.rb +18 -10
- data/lib/byebug/commands/condition.rb +18 -17
- data/lib/byebug/commands/continue.rb +17 -9
- data/lib/byebug/commands/delete.rb +19 -13
- data/lib/byebug/commands/display.rb +19 -53
- data/lib/byebug/commands/edit.rb +7 -4
- data/lib/byebug/commands/enable_disable.rb +130 -0
- data/lib/byebug/commands/eval.rb +40 -22
- data/lib/byebug/commands/finish.rb +13 -4
- data/lib/byebug/commands/frame.rb +65 -45
- data/lib/byebug/commands/help.rb +17 -18
- data/lib/byebug/commands/history.rb +14 -8
- data/lib/byebug/commands/info.rb +160 -182
- data/lib/byebug/commands/interrupt.rb +4 -1
- data/lib/byebug/commands/irb.rb +30 -0
- data/lib/byebug/commands/kill.rb +7 -8
- data/lib/byebug/commands/list.rb +71 -66
- data/lib/byebug/commands/method.rb +14 -6
- data/lib/byebug/commands/pry.rb +35 -0
- data/lib/byebug/commands/quit.rb +9 -6
- data/lib/byebug/commands/reload.rb +5 -2
- data/lib/byebug/commands/restart.rb +13 -9
- data/lib/byebug/commands/save.rb +17 -17
- data/lib/byebug/commands/set.rb +16 -15
- data/lib/byebug/commands/show.rb +10 -11
- data/lib/byebug/commands/source.rb +11 -5
- data/lib/byebug/commands/stepping.rb +38 -24
- data/lib/byebug/commands/threads.rb +45 -31
- data/lib/byebug/commands/trace.rb +22 -9
- data/lib/byebug/commands/undisplay.rb +45 -0
- data/lib/byebug/commands/variables.rb +83 -27
- data/lib/byebug/context.rb +25 -22
- data/lib/byebug/core.rb +82 -0
- data/lib/byebug/helper.rb +37 -28
- data/lib/byebug/history.rb +8 -4
- data/lib/byebug/interface.rb +12 -17
- data/lib/byebug/interfaces/local_interface.rb +11 -8
- data/lib/byebug/interfaces/remote_interface.rb +11 -8
- data/lib/byebug/interfaces/script_interface.rb +9 -6
- data/lib/byebug/options.rb +46 -0
- data/lib/byebug/processor.rb +7 -1
- data/lib/byebug/processors/command_processor.rb +135 -125
- data/lib/byebug/processors/control_command_processor.rb +23 -23
- data/lib/byebug/remote.rb +17 -26
- data/lib/byebug/runner.rb +100 -0
- data/lib/byebug/setting.rb +33 -8
- data/lib/byebug/settings/autoeval.rb +5 -15
- data/lib/byebug/settings/autoirb.rb +4 -1
- data/lib/byebug/settings/autolist.rb +5 -2
- data/lib/byebug/settings/autoreload.rb +5 -2
- data/lib/byebug/settings/autosave.rb +6 -2
- data/lib/byebug/settings/basename.rb +7 -2
- data/lib/byebug/settings/callstyle.rb +4 -1
- data/lib/byebug/settings/forcestep.rb +6 -3
- data/lib/byebug/settings/fullpath.rb +5 -2
- data/lib/byebug/settings/histfile.rb +5 -3
- data/lib/byebug/settings/histsize.rb +5 -3
- data/lib/byebug/settings/linetrace.rb +4 -1
- data/lib/byebug/settings/listsize.rb +5 -1
- data/lib/byebug/settings/post_mortem.rb +21 -13
- data/lib/byebug/settings/stack_on_error.rb +6 -2
- data/lib/byebug/settings/testing.rb +6 -1
- data/lib/byebug/settings/tracing_plus.rb +5 -1
- data/lib/byebug/settings/verbose.rb +13 -2
- data/lib/byebug/settings/width.rb +4 -1
- data/lib/byebug/version.rb +1 -1
- data/test/{break_test.rb → commands/break_test.rb} +41 -53
- data/test/{condition_test.rb → commands/condition_test.rb} +14 -14
- data/test/{continue_test.rb → commands/continue_test.rb} +0 -0
- data/test/{delete_test.rb → commands/delete_test.rb} +2 -2
- data/test/commands/display_test.rb +37 -0
- data/test/{edit_test.rb → commands/edit_test.rb} +0 -0
- data/test/{eval_test.rb → commands/eval_test.rb} +1 -0
- data/test/{finish_test.rb → commands/finish_test.rb} +11 -1
- data/test/{frame_test.rb → commands/frame_test.rb} +12 -16
- data/test/{help_test.rb → commands/help_test.rb} +21 -4
- data/test/{history_test.rb → commands/history_test.rb} +0 -0
- data/test/{info_test.rb → commands/info_test.rb} +5 -55
- data/test/{interrupt_test.rb → commands/interrupt_test.rb} +0 -0
- data/test/commands/irb_test.rb +28 -0
- data/test/{kill_test.rb → commands/kill_test.rb} +1 -1
- data/test/{list_test.rb → commands/list_test.rb} +1 -1
- data/test/{method_test.rb → commands/method_test.rb} +0 -0
- data/test/{post_mortem_test.rb → commands/post_mortem_test.rb} +6 -10
- data/test/{pry_test.rb → commands/pry_test.rb} +4 -13
- data/test/{quit_test.rb → commands/quit_test.rb} +4 -4
- data/test/{reload_test.rb → commands/reload_test.rb} +0 -0
- data/test/{restart_test.rb → commands/restart_test.rb} +6 -0
- data/test/{save_test.rb → commands/save_test.rb} +2 -2
- data/test/{set_test.rb → commands/set_test.rb} +9 -2
- data/test/{show_test.rb → commands/show_test.rb} +1 -1
- data/test/{source_test.rb → commands/source_test.rb} +3 -3
- data/test/{stepping_test.rb → commands/stepping_test.rb} +44 -35
- data/test/{thread_test.rb → commands/thread_test.rb} +0 -0
- data/test/{trace_test.rb → commands/trace_test.rb} +0 -0
- data/test/{display_test.rb → commands/undisplay_test.rb} +7 -45
- data/test/{variables_test.rb → commands/variables_test.rb} +10 -1
- data/test/debugger_alias_test.rb +2 -2
- data/test/runner_test.rb +127 -0
- data/test/support/matchers.rb +27 -25
- data/test/support/test_interface.rb +9 -5
- data/test/support/utils.rb +96 -101
- data/test/test_helper.rb +32 -20
- metadata +93 -68
- data/lib/byebug/commands/enable.rb +0 -154
- data/lib/byebug/commands/repl.rb +0 -126
- data/test/irb_test.rb +0 -47
- data/test/support/breakpoint.rb +0 -13
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7a81d33318751c6fcf8a6094ba6d4d152e88b557
|
4
|
+
data.tar.gz: e9ba34c4db3ce6a0805a154b099566e1e7c717c8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 406e3a8363daffa441fa808f3135681a8738c969b7a1078d69030c85262ccdefca633c87cb08f74549d4c9db66af8eea209e6dc3a22605155226d015254d841e
|
7
|
+
data.tar.gz: 997f006b45275cc2e9c8540ed18fa09e4f533904efafcdf4634cdd32f1f2c433106be3db57d896bb67d31581ddcb0b808077bf24f38ad6fac609d0a0603321a1
|
data/.rubocop.yml
ADDED
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,28 @@
|
|
1
|
+
# 3.3.0
|
2
|
+
|
3
|
+
- Bugfixes
|
4
|
+
* Fix "verbose" setting ("set verbose" works now).
|
5
|
+
* Fix unsetting post_mortem mode ("set post_mortem false" works now).
|
6
|
+
* Fix some cases where the debugger would stop in byebug internal frames.
|
7
|
+
* Fix some crashes when displaying backtraces (with "nofullpath" setting and
|
8
|
+
when calculated stack size was smaller than the real one).
|
9
|
+
|
10
|
+
- Removals
|
11
|
+
* "info locals" has been removed, use "var local" instead.
|
12
|
+
* "info instance_variables" has been removed, use "var instance" instead.
|
13
|
+
* "info global_variables" has been removed, use "var global" instead.
|
14
|
+
* "info variables" has been removed, use "var all" instead.
|
15
|
+
* "irb" command stepping capabilities were removed, see
|
16
|
+
[8e226d0](https://github.com/deivid-rodriguez/byebug/commit/8e226d0).
|
17
|
+
* --script and --restart-script options from byebug's executable were removed.
|
18
|
+
Also, '-t' option now turns tracing on whereas '-x' options tells byebug to run
|
19
|
+
the initialization file (.byebugrc) on startup. This is the default behaviour
|
20
|
+
though.
|
21
|
+
|
22
|
+
- Improvements
|
23
|
+
* byebug's script has been libified and tests have been added.
|
24
|
+
|
25
|
+
|
1
26
|
# 3.2.0
|
2
27
|
|
3
28
|
- Bugfixes
|
@@ -7,272 +32,273 @@
|
|
7
32
|
* Remove warning reported in #77.
|
8
33
|
|
9
34
|
- Removals
|
10
|
-
*
|
11
|
-
Use
|
12
|
-
*
|
13
|
-
*
|
35
|
+
* "post_mortem" activation through "Byebug.post_mortem" is no longer allowed.
|
36
|
+
Use "set post_mortem" instead.
|
37
|
+
* "info stack" command has been removed. Use "where"|"backtrace" instead.
|
38
|
+
* "method iv" command has been removed. Use "var instance" instead.
|
14
39
|
|
15
40
|
|
16
41
|
# 3.1.2
|
17
42
|
|
18
|
-
* Really fix starting
|
19
|
-
* Fix starting line tracing in bin/byebug
|
43
|
+
* Really fix starting "post_mortem" mode in bin/byebug.
|
44
|
+
* Fix starting line tracing in bin/byebug.
|
20
45
|
|
21
46
|
|
22
47
|
# 3.1.1
|
23
48
|
|
24
|
-
* Fix starting
|
49
|
+
* Fix starting "post_mortem" mode in bin/byebug.
|
25
50
|
|
26
51
|
|
27
52
|
# 3.1.0
|
28
53
|
|
29
|
-
*
|
54
|
+
* "show commands" moved to a separate "history" command.
|
30
55
|
* Byebug.start can't recieve options any more. Any program settings you
|
31
56
|
want applied from the start should be set in .byebugrc.
|
32
|
-
*
|
33
|
-
enabled through the
|
34
|
-
tracing functionality is now provided through the
|
35
|
-
*
|
36
|
-
couldn't be set. Use
|
37
|
-
*
|
38
|
-
|
39
|
-
*
|
57
|
+
* "trace" command has been removed. Line tracing functionality should be
|
58
|
+
enabled through the "linetrace" setting whereas the global variable
|
59
|
+
tracing functionality is now provided through the "tracevar" command.
|
60
|
+
* "version" setting has been removed. It was not really a setting because it
|
61
|
+
couldn't be set. Use "byebug --version" to check byebug's version.
|
62
|
+
* "arg" setting removed. Program restart arguments should be set through
|
63
|
+
"restart" command from now on.
|
64
|
+
* "linetrace\_plus" setting has been renamed to "tracing\_plus".
|
40
65
|
|
41
66
|
|
42
67
|
# 3.0.0
|
43
68
|
|
44
69
|
- Bugfixes
|
45
|
-
* Fix post_mortem mode
|
70
|
+
* Fix post_mortem mode.
|
46
71
|
* Command history is also saved after regular program termination, not only
|
47
|
-
after quitting with the
|
72
|
+
after quitting with the "q" command.
|
48
73
|
* Fix failure when calling Byebug.start with Timeout::timeout (see #54), thanks
|
49
74
|
@zmoazeni!
|
50
75
|
|
51
76
|
- Changes
|
52
|
-
*
|
53
|
-
behaves like shell's
|
54
|
-
* Changes in
|
55
|
-
[50e6ad8](https://github.com/deivid-rodriguez/byebug/commit/50e6ad8)
|
56
|
-
* Changes in
|
57
|
-
[61f9b4d](https://github.com/deivid-rodriguez/byebug/commit/61f9b4d)
|
58
|
-
* The
|
59
|
-
|
77
|
+
* "show commands" command for listing history of previous byebug commands now
|
78
|
+
behaves like shell's "history" command.
|
79
|
+
* Changes in "history" commands: see
|
80
|
+
[50e6ad8](https://github.com/deivid-rodriguez/byebug/commit/50e6ad8).
|
81
|
+
* Changes in "finish" semantics and in the C extension API: see
|
82
|
+
[61f9b4d](https://github.com/deivid-rodriguez/byebug/commit/61f9b4d).
|
83
|
+
* The "init" option for Byebug.start has been removed. Information to make the
|
84
|
+
"restart" command work is always saved now.
|
60
85
|
|
61
86
|
- Features
|
62
|
-
* Allow disabling post_mortem mode
|
87
|
+
* Allow disabling post_mortem mode.
|
63
88
|
|
64
89
|
|
65
90
|
# 2.7.0
|
66
|
-
* Bugfix release (#52, #53 and #54)
|
91
|
+
* Bugfix release (#52, #53 and #54).
|
67
92
|
|
68
93
|
|
69
94
|
# 2.6.0
|
70
95
|
|
71
|
-
* Fix circular dependency that was affecting
|
96
|
+
* Fix circular dependency that was affecting "pry-byebug" (thanks
|
97
|
+
@andreychernih).
|
72
98
|
|
73
99
|
|
74
100
|
# 2.5.0
|
75
101
|
|
76
|
-
* Support for
|
102
|
+
* Support for "sublime-debugger".
|
77
103
|
|
78
104
|
|
79
105
|
# 2.4.1
|
80
106
|
|
81
|
-
* Fix installation error in Mac OSX (#40), thanks @luislavena
|
107
|
+
* Fix installation error in Mac OSX (#40), thanks @luislavena.
|
82
108
|
|
83
109
|
|
84
110
|
# 2.4.0
|
85
111
|
|
86
|
-
* Use
|
87
|
-
library (thanks @nobu)
|
88
|
-
* Adds back
|
112
|
+
* Use "require" instead of "require_relative" for loading byebug's extension
|
113
|
+
library (thanks @nobu).
|
114
|
+
* Adds back "debugger" as an alias to "byebug" (thanks @wallace).
|
89
115
|
* Adds -R option to byebug's binary to specify server's hostname:port for remote
|
90
|
-
debugging (thanks @mrkn)
|
91
|
-
* Fixes
|
92
|
-
* Change in tracing global variables. Use
|
93
|
-
variable $foo
|
94
|
-
* Fix setting post mortem mode with
|
95
|
-
post mortem functionality available as specifying
|
116
|
+
debugging (thanks @mrkn).
|
117
|
+
* Fixes "thread list" showing too many threads.
|
118
|
+
* Change in tracing global variables. Use "trace variable foo" instead of "trace
|
119
|
+
variable $foo".
|
120
|
+
* Fix setting post mortem mode with "set post_mortem". Now this is the only
|
121
|
+
post mortem functionality available as specifying "Byebug.post_mortem" with a
|
96
122
|
block has been removed in this version.
|
97
123
|
|
98
124
|
|
99
125
|
# 2.3.1
|
100
126
|
|
101
|
-
* Fixes bug preventing users from deleting breakpoints
|
102
|
-
* Fix broken test suite
|
127
|
+
* Fixes bug preventing users from deleting breakpoints.
|
128
|
+
* Fix broken test suite.
|
103
129
|
|
104
130
|
|
105
131
|
# 2.3.0
|
106
132
|
|
107
|
-
* Compatibility with Phusion Passenger Enterprise (thanks @FooBarWidget)
|
108
|
-
* More minimalist help system
|
133
|
+
* Compatibility with Phusion Passenger Enterprise (thanks @FooBarWidget).
|
134
|
+
* More minimalist help system.
|
109
135
|
|
110
136
|
|
111
137
|
# 2.2.2
|
112
138
|
|
113
|
-
* Fix another compilation issue in 64 bit systems
|
139
|
+
* Fix another compilation issue in 64 bit systems.
|
114
140
|
|
115
141
|
|
116
142
|
# 2.2.1
|
117
143
|
|
118
|
-
* Fix compilation issue introduced by 2.2.0 (#26)
|
119
|
-
* "show" and "set" option
|
144
|
+
* Fix compilation issue introduced by 2.2.0 (#26).
|
145
|
+
* "show" and "set" option "stack_trace_on_error" is now called "stack_on_error".
|
120
146
|
|
121
147
|
|
122
148
|
# 2.2.0
|
123
149
|
|
124
|
-
* Small fixes in stack_size calculations
|
125
|
-
* Warning free byebug
|
126
|
-
* Add
|
127
|
-
* Fix setting
|
128
|
-
* Allow
|
150
|
+
* Small fixes in stack_size calculations.
|
151
|
+
* Warning free byebug.
|
152
|
+
* Add "verbose" setting for TracePoint API event inspection.
|
153
|
+
* Fix setting "post_mortem" mode.
|
154
|
+
* Allow "edit <filename>" without a line number.
|
129
155
|
|
130
156
|
|
131
157
|
# 2.1.1
|
132
158
|
|
133
|
-
* Fix bug when debugging code inside '-e' flag
|
159
|
+
* Fix bug when debugging code inside '-e' flag.
|
134
160
|
|
135
161
|
|
136
162
|
# 2.1.0
|
137
163
|
|
138
|
-
* Fix bug in remote debugging display
|
164
|
+
* Fix bug in remote debugging display.
|
139
165
|
* Fix bug where eval would crash when inspect raised an exception (reported by
|
140
|
-
@iblue)
|
141
|
-
*
|
142
|
-
*
|
166
|
+
@iblue).
|
167
|
+
* "enable breakpoints" now enables every breakpoint.
|
168
|
+
* "disable breakpoints" now disables every breakpoint.
|
143
169
|
|
144
170
|
|
145
171
|
# 2.0.0
|
146
172
|
|
147
|
-
* Various bug fixes
|
148
|
-
* "Official" definition of a command API
|
149
|
-
* Thread support
|
173
|
+
* Various bug fixes.
|
174
|
+
* "Official" definition of a command API.
|
175
|
+
* Thread support.
|
150
176
|
|
151
177
|
|
152
178
|
## 1.8.2
|
153
179
|
|
154
|
-
* More user friendly regexps for commands
|
155
|
-
* Better help for some commands
|
156
|
-
*
|
157
|
-
* Fixes bug in calculating stacksize
|
180
|
+
* More user friendly regexps for commands.
|
181
|
+
* Better help for some commands.
|
182
|
+
* "save" command now saves the list of "displays".
|
183
|
+
* Fixes bug in calculating stacksize.
|
158
184
|
|
159
185
|
|
160
186
|
## 1.8.1
|
161
187
|
|
162
|
-
* Bugfix release
|
188
|
+
* Bugfix release.
|
163
189
|
|
164
190
|
|
165
191
|
## 1.8.0
|
166
192
|
|
167
|
-
* Remote debugging support
|
193
|
+
* Remote debugging support.
|
168
194
|
|
169
195
|
|
170
196
|
## 1.7.0
|
171
197
|
|
172
|
-
* Callstack display: specifically mark c-frames
|
173
|
-
* Callstack navigation: skip c-frames
|
174
|
-
* Callstack navigation: autolist after navigation commands
|
198
|
+
* Callstack display: specifically mark c-frames.
|
199
|
+
* Callstack navigation: skip c-frames.
|
200
|
+
* Callstack navigation: autolist after navigation commands.
|
175
201
|
|
176
202
|
|
177
203
|
## 1.6.1
|
178
204
|
|
179
|
-
* Windows compatibiliy: compilation and terminal width issues
|
205
|
+
* Windows compatibiliy: compilation and terminal width issues.
|
180
206
|
|
181
207
|
|
182
208
|
## 1.6.0
|
183
209
|
|
184
|
-
*
|
185
|
-
* Don't autolist when ruby '-e' option is used
|
210
|
+
* "byebug" placed at the end of a block or method call now works as expected.
|
211
|
+
* Don't autolist when ruby '-e' option is used.
|
186
212
|
* Fixes callstyles. From now on, use 'long' for detailed frames in callstack and
|
187
|
-
'short' for more concise frames
|
213
|
+
'short' for more concise frames.
|
188
214
|
|
189
215
|
|
190
216
|
## 1.5.0
|
191
217
|
|
192
|
-
* No more Byebug.start to get correct callstack information! Dropping
|
218
|
+
* No more Byebug.start to get correct callstack information! Dropping "byebug"
|
193
219
|
anywhere and inmediately printing the stack just works now. :)
|
194
220
|
|
195
|
-
|
221
|
+
|
196
222
|
## 1.4.2
|
197
223
|
|
198
|
-
* Fixes crash when using "help command subcommand"
|
199
|
-
* Byebug now works with Rails Console debugging flag
|
200
|
-
* Fix post-mortem mode when running byebug from the outset
|
201
|
-
* Fix --no-quit flag when running byebug from the outset
|
224
|
+
* Fixes crash when using "help command subcommand".
|
225
|
+
* Byebug now works with Rails Console debugging flag.
|
226
|
+
* Fix post-mortem mode when running byebug from the outset.
|
227
|
+
* Fix --no-quit flag when running byebug from the outset.
|
202
228
|
|
203
229
|
|
204
230
|
## 1.4.1
|
205
231
|
|
206
|
-
* Fixes crash when printing some filenames in backtraces
|
232
|
+
* Fixes crash when printing some filenames in backtraces.
|
207
233
|
* Allows byebug developers to easily use compilers different from gcc (thanks
|
208
|
-
@GarthSnyder!)
|
234
|
+
@GarthSnyder!).
|
209
235
|
|
210
236
|
|
211
237
|
## 1.4.0
|
212
238
|
|
213
239
|
* Byebug now uses the Debug Inspector API: faster and nicer!
|
214
|
-
* Fixes bug that prevents some random crashes
|
240
|
+
* Fixes bug that prevents some random crashes.
|
215
241
|
|
216
242
|
|
217
243
|
## 1.3.1
|
218
244
|
|
219
|
-
* Byebug now works with Rails debugging flag
|
245
|
+
* Byebug now works with Rails debugging flag.
|
220
246
|
* Fix bug which would make byebug crash when trying to print lines of code
|
221
|
-
containing the character '%'
|
222
|
-
* Fix bug which prevented basename and linetrace options from working together
|
247
|
+
containing the character '%'.
|
248
|
+
* Fix bug which prevented basename and linetrace options from working together.
|
223
249
|
|
224
250
|
|
225
251
|
## 1.3.0
|
226
252
|
|
227
|
-
* Support colon-delimited include paths in command-line front-end (@ender672)
|
253
|
+
* Support colon-delimited include paths in command-line front-end (@ender672).
|
228
254
|
|
229
255
|
|
230
256
|
## 1.2.0
|
231
257
|
|
232
258
|
* Added 'pry' command.
|
233
|
-
* Ctrl+C during command line editing is handled and works like pry/irb
|
259
|
+
* Ctrl+C during command line editing is handled and works like pry/irb.
|
234
260
|
|
235
261
|
|
236
262
|
## 1.1.1
|
237
263
|
|
238
|
-
* Better help system
|
239
|
-
* Code cleanup
|
240
|
-
* First version compatible with pry-byebug
|
264
|
+
* Better help system.
|
265
|
+
* Code cleanup.
|
266
|
+
* First version compatible with pry-byebug.
|
241
267
|
|
242
268
|
|
243
269
|
## 1.1.0
|
244
270
|
|
245
|
-
* Post-mortem support
|
271
|
+
* Post-mortem support.
|
246
272
|
|
247
273
|
|
248
274
|
## 1.0.3
|
249
275
|
|
250
|
-
* "autoreload" is set by default now
|
276
|
+
* "autoreload" is set by default now.
|
251
277
|
* "list" command: no negative line numbers shown, and line range behaves as
|
252
|
-
expected at the begining/end of file
|
278
|
+
expected at the begining/end of file.
|
253
279
|
* In some weird cases, "backtrace" command segfaults when trying to show info on
|
254
280
|
some frame args. Don't know the reason yet, but the exception is handled now and
|
255
281
|
and the command doesn't segfault anymore.
|
256
|
-
* Try some thread support (not even close to usable)
|
282
|
+
* Try some thread support (not even close to usable).
|
257
283
|
|
258
284
|
|
259
285
|
## 1.0.2
|
260
286
|
|
261
|
-
* "autolist" and "autoeval" are default settings now
|
287
|
+
* "autolist" and "autoeval" are default settings now.
|
262
288
|
* Fixes bug which messed up the call-stack when manipulating backtrace
|
263
|
-
information and when nexting/stepping
|
289
|
+
information and when nexting/stepping.
|
264
290
|
|
265
291
|
|
266
292
|
## 1.0.1
|
267
293
|
|
268
|
-
* Corrected small bug preventing byebug from loading
|
294
|
+
* Corrected small bug preventing byebug from loading.
|
269
295
|
|
270
296
|
|
271
297
|
## 1.0.0
|
272
298
|
|
273
|
-
* Green test suite
|
299
|
+
* Green test suite.
|
274
300
|
|
275
301
|
|
276
302
|
## 0.0.1
|
277
303
|
|
278
|
-
* Initial release
|
304
|
+
* Initial release.
|
data/CONTRIBUTING.md
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
Thanks for your interest in contributing to
|
1
|
+
Thanks for your interest in contributing to Byebug!
|
2
2
|
|
3
3
|
To make your changes, follow this steps:
|
4
4
|
|
@@ -8,14 +8,12 @@ To make your changes, follow this steps:
|
|
8
8
|
* Push your branch to your forked repo - `git push origin my_branch`
|
9
9
|
* [Make a pull request](https://help.github.com/articles/using-pull-requests)
|
10
10
|
|
11
|
-
|
12
|
-
|
13
|
-
This gem uses `rake-compiler` to build native gems. You can use `rake compile` to build the native gem
|
14
|
-
and start the tests using `rake test`
|
11
|
+
This gem uses `rake-compiler` to build native gems. Use `rake compile` to
|
12
|
+
build the c-extension and then start the tests using `rake test`
|
15
13
|
|
16
14
|
```bash
|
17
15
|
rake compile
|
18
16
|
rake test
|
19
17
|
```
|
20
18
|
|
21
|
-
It's appreciated if you add tests for new functionality. Thanks!
|
19
|
+
It's appreciated if you add tests for new functionality. Thanks!
|
data/GUIDE.md
CHANGED
@@ -821,7 +821,7 @@ Here are the default values in `options`
|
|
821
821
|
|
822
822
|
```
|
823
823
|
#<OpenStruct nx=false, quit=true, restart_script=nil, script=nil, stop=true,
|
824
|
-
tracing=false,
|
824
|
+
tracing=false, verbose=false>
|
825
825
|
```
|
826
826
|
|
827
827
|
### Command Files
|
@@ -909,6 +909,35 @@ Also, since this relies on the OS `exec` call, this command is available only if
|
|
909
909
|
your OS supports `exec`.
|
910
910
|
|
911
911
|
|
912
|
+
## Debugging remote programs
|
913
|
+
|
914
|
+
It is possible to set up debugging so that you can issue byebug commands from
|
915
|
+
outside the process running the Ruby code. In fact, you might even be on a
|
916
|
+
different computer than the one running the Ruby program.
|
917
|
+
|
918
|
+
To setup remote debugging, drop the following somewhere before the point in the
|
919
|
+
program that you want to debug (In Rails, the
|
920
|
+
`config/environments/development.rb` could be a good canditate).
|
921
|
+
|
922
|
+
```ruby
|
923
|
+
require 'byebug'
|
924
|
+
Byebug.wait_connection = true
|
925
|
+
Byebug.start_server('localhost', <port>)
|
926
|
+
```
|
927
|
+
|
928
|
+
Once this piece gets executed, you can connect to the remote debugger from your
|
929
|
+
local machine, by running: `byebug -R localhost:<port>`.
|
930
|
+
|
931
|
+
Next, at a place of program execution which gets run just before the code you
|
932
|
+
want to debug, add a call to `byebug` as was done without remote execution:
|
933
|
+
|
934
|
+
```ruby
|
935
|
+
# work, work, work...
|
936
|
+
byebug
|
937
|
+
some ruby code # byebug will stop before this line is run
|
938
|
+
```
|
939
|
+
|
940
|
+
|
912
941
|
## Byebug Command Reference
|
913
942
|
|
914
943
|
### Command Syntax
|
@@ -1019,21 +1048,14 @@ Generic command for showing things about the program being debugged.
|
|
1019
1048
|
--
|
1020
1049
|
List of "info" subcommands:
|
1021
1050
|
--
|
1022
|
-
info args
|
1023
|
-
info breakpoints
|
1024
|
-
info catch
|
1025
|
-
|
1026
|
-
info
|
1027
|
-
info
|
1028
|
-
info
|
1029
|
-
info
|
1030
|
-
info instance_variables -- Instance variables of the current stack frame
|
1031
|
-
info line -- Line number and file name of current position in
|
1032
|
-
source file
|
1033
|
-
info locals -- Local variables of the current stack frame
|
1034
|
-
info program -- Execution status of the program
|
1035
|
-
info variables -- Local and instance variables of the current stack
|
1036
|
-
frame
|
1051
|
+
info args -- Argument variables of current stack frame
|
1052
|
+
info breakpoints -- Status of user-settable breakpoints
|
1053
|
+
info catch -- Exceptions that can be caught in the current stack frame
|
1054
|
+
info display -- Expressions to display when program stops
|
1055
|
+
info file -- Info about a particular file read in
|
1056
|
+
info files -- File names and timestamps of files read in
|
1057
|
+
info line -- Line number and filename of current position in source file
|
1058
|
+
info program -- Execution status of the program
|
1037
1059
|
```
|
1038
1060
|
|
1039
1061
|
```bash
|
@@ -1277,10 +1299,10 @@ Byebug can print many different information about variables. Such as
|
|
1277
1299
|
listing variables and their values in `<object>.constant`.
|
1278
1300
|
* `var instance <object>`. Show the instance variables of `<object>`. This is
|
1279
1301
|
basically listing `<object>.instance_variables`.
|
1280
|
-
* `
|
1281
|
-
* `
|
1282
|
-
* `
|
1283
|
-
* `
|
1302
|
+
* `var instance`. Show instance_variables of `self`.
|
1303
|
+
* `var local`. Show local variables.
|
1304
|
+
* `var global`. Show global variables.
|
1305
|
+
* `var all`. Show local, global and instance and class variables of `self`.
|
1284
1306
|
* `method instance <object>`. Show methods of `<object>`. Basically this is the
|
1285
1307
|
same as running `ps <object>.instance_methods(false)`.
|
1286
1308
|
* `method <class-or-module>`. Show methods of the class or module
|