byebug 11.0.1

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.
Files changed (132) hide show
  1. checksums.yaml +7 -0
  2. data/CHANGELOG.md +897 -0
  3. data/CONTRIBUTING.md +58 -0
  4. data/GUIDE.md +1806 -0
  5. data/LICENSE +23 -0
  6. data/README.md +199 -0
  7. data/exe/byebug +6 -0
  8. data/ext/byebug/breakpoint.c +517 -0
  9. data/ext/byebug/byebug.c +905 -0
  10. data/ext/byebug/byebug.h +143 -0
  11. data/ext/byebug/context.c +673 -0
  12. data/ext/byebug/extconf.rb +12 -0
  13. data/ext/byebug/locker.c +96 -0
  14. data/ext/byebug/threads.c +230 -0
  15. data/lib/byebug.rb +3 -0
  16. data/lib/byebug/attacher.rb +48 -0
  17. data/lib/byebug/breakpoint.rb +111 -0
  18. data/lib/byebug/command.rb +111 -0
  19. data/lib/byebug/command_list.rb +34 -0
  20. data/lib/byebug/commands.rb +40 -0
  21. data/lib/byebug/commands/break.rb +112 -0
  22. data/lib/byebug/commands/catch.rb +78 -0
  23. data/lib/byebug/commands/condition.rb +55 -0
  24. data/lib/byebug/commands/continue.rb +68 -0
  25. data/lib/byebug/commands/debug.rb +38 -0
  26. data/lib/byebug/commands/delete.rb +55 -0
  27. data/lib/byebug/commands/disable.rb +33 -0
  28. data/lib/byebug/commands/disable/breakpoints.rb +42 -0
  29. data/lib/byebug/commands/disable/display.rb +43 -0
  30. data/lib/byebug/commands/display.rb +66 -0
  31. data/lib/byebug/commands/down.rb +45 -0
  32. data/lib/byebug/commands/edit.rb +69 -0
  33. data/lib/byebug/commands/enable.rb +33 -0
  34. data/lib/byebug/commands/enable/breakpoints.rb +42 -0
  35. data/lib/byebug/commands/enable/display.rb +43 -0
  36. data/lib/byebug/commands/finish.rb +57 -0
  37. data/lib/byebug/commands/frame.rb +57 -0
  38. data/lib/byebug/commands/help.rb +64 -0
  39. data/lib/byebug/commands/history.rb +39 -0
  40. data/lib/byebug/commands/info.rb +37 -0
  41. data/lib/byebug/commands/info/breakpoints.rb +65 -0
  42. data/lib/byebug/commands/info/display.rb +49 -0
  43. data/lib/byebug/commands/info/file.rb +80 -0
  44. data/lib/byebug/commands/info/line.rb +35 -0
  45. data/lib/byebug/commands/info/program.rb +49 -0
  46. data/lib/byebug/commands/interrupt.rb +34 -0
  47. data/lib/byebug/commands/irb.rb +50 -0
  48. data/lib/byebug/commands/kill.rb +45 -0
  49. data/lib/byebug/commands/list.rb +159 -0
  50. data/lib/byebug/commands/method.rb +53 -0
  51. data/lib/byebug/commands/next.rb +40 -0
  52. data/lib/byebug/commands/pry.rb +41 -0
  53. data/lib/byebug/commands/quit.rb +42 -0
  54. data/lib/byebug/commands/restart.rb +64 -0
  55. data/lib/byebug/commands/save.rb +72 -0
  56. data/lib/byebug/commands/set.rb +79 -0
  57. data/lib/byebug/commands/show.rb +45 -0
  58. data/lib/byebug/commands/skip.rb +85 -0
  59. data/lib/byebug/commands/source.rb +40 -0
  60. data/lib/byebug/commands/step.rb +40 -0
  61. data/lib/byebug/commands/thread.rb +34 -0
  62. data/lib/byebug/commands/thread/current.rb +37 -0
  63. data/lib/byebug/commands/thread/list.rb +43 -0
  64. data/lib/byebug/commands/thread/resume.rb +45 -0
  65. data/lib/byebug/commands/thread/stop.rb +43 -0
  66. data/lib/byebug/commands/thread/switch.rb +46 -0
  67. data/lib/byebug/commands/tracevar.rb +54 -0
  68. data/lib/byebug/commands/undisplay.rb +51 -0
  69. data/lib/byebug/commands/untracevar.rb +36 -0
  70. data/lib/byebug/commands/up.rb +45 -0
  71. data/lib/byebug/commands/var.rb +37 -0
  72. data/lib/byebug/commands/var/all.rb +41 -0
  73. data/lib/byebug/commands/var/args.rb +39 -0
  74. data/lib/byebug/commands/var/const.rb +49 -0
  75. data/lib/byebug/commands/var/global.rb +37 -0
  76. data/lib/byebug/commands/var/instance.rb +39 -0
  77. data/lib/byebug/commands/var/local.rb +39 -0
  78. data/lib/byebug/commands/where.rb +53 -0
  79. data/lib/byebug/context.rb +157 -0
  80. data/lib/byebug/core.rb +115 -0
  81. data/lib/byebug/errors.rb +29 -0
  82. data/lib/byebug/frame.rb +185 -0
  83. data/lib/byebug/helpers/bin.rb +47 -0
  84. data/lib/byebug/helpers/eval.rb +126 -0
  85. data/lib/byebug/helpers/file.rb +63 -0
  86. data/lib/byebug/helpers/frame.rb +75 -0
  87. data/lib/byebug/helpers/parse.rb +75 -0
  88. data/lib/byebug/helpers/path.rb +40 -0
  89. data/lib/byebug/helpers/reflection.rb +19 -0
  90. data/lib/byebug/helpers/string.rb +33 -0
  91. data/lib/byebug/helpers/thread.rb +67 -0
  92. data/lib/byebug/helpers/toggle.rb +62 -0
  93. data/lib/byebug/helpers/var.rb +54 -0
  94. data/lib/byebug/history.rb +130 -0
  95. data/lib/byebug/interface.rb +146 -0
  96. data/lib/byebug/interfaces/local_interface.rb +44 -0
  97. data/lib/byebug/interfaces/remote_interface.rb +50 -0
  98. data/lib/byebug/interfaces/script_interface.rb +33 -0
  99. data/lib/byebug/interfaces/test_interface.rb +67 -0
  100. data/lib/byebug/option_setter.rb +95 -0
  101. data/lib/byebug/printers/base.rb +68 -0
  102. data/lib/byebug/printers/plain.rb +44 -0
  103. data/lib/byebug/printers/texts/base.yml +115 -0
  104. data/lib/byebug/printers/texts/plain.yml +33 -0
  105. data/lib/byebug/processors/command_processor.rb +173 -0
  106. data/lib/byebug/processors/control_processor.rb +24 -0
  107. data/lib/byebug/processors/post_mortem_processor.rb +18 -0
  108. data/lib/byebug/processors/script_processor.rb +49 -0
  109. data/lib/byebug/remote.rb +85 -0
  110. data/lib/byebug/remote/client.rb +57 -0
  111. data/lib/byebug/remote/server.rb +47 -0
  112. data/lib/byebug/runner.rb +198 -0
  113. data/lib/byebug/setting.rb +79 -0
  114. data/lib/byebug/settings/autoirb.rb +29 -0
  115. data/lib/byebug/settings/autolist.rb +29 -0
  116. data/lib/byebug/settings/autopry.rb +29 -0
  117. data/lib/byebug/settings/autosave.rb +17 -0
  118. data/lib/byebug/settings/basename.rb +16 -0
  119. data/lib/byebug/settings/callstyle.rb +20 -0
  120. data/lib/byebug/settings/fullpath.rb +16 -0
  121. data/lib/byebug/settings/histfile.rb +20 -0
  122. data/lib/byebug/settings/histsize.rb +20 -0
  123. data/lib/byebug/settings/linetrace.rb +22 -0
  124. data/lib/byebug/settings/listsize.rb +21 -0
  125. data/lib/byebug/settings/post_mortem.rb +27 -0
  126. data/lib/byebug/settings/savefile.rb +20 -0
  127. data/lib/byebug/settings/stack_on_error.rb +15 -0
  128. data/lib/byebug/settings/width.rb +20 -0
  129. data/lib/byebug/source_file_formatter.rb +71 -0
  130. data/lib/byebug/subcommands.rb +54 -0
  131. data/lib/byebug/version.rb +8 -0
  132. metadata +199 -0
@@ -0,0 +1,54 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "forwardable"
4
+
5
+ require "byebug/helpers/reflection"
6
+ require "byebug/command_list"
7
+
8
+ module Byebug
9
+ #
10
+ # Subcommand additions.
11
+ #
12
+ module Subcommands
13
+ def self.included(command)
14
+ command.extend(ClassMethods)
15
+ end
16
+
17
+ extend Forwardable
18
+ def_delegators "self.class", :subcommand_list
19
+
20
+ #
21
+ # Delegates to subcommands or prints help if no subcommand specified.
22
+ #
23
+ def execute
24
+ subcmd_name = @match[1]
25
+ return puts(help) unless subcmd_name
26
+
27
+ subcmd = subcommand_list.match(subcmd_name)
28
+ raise CommandNotFound.new(subcmd_name, self.class) unless subcmd
29
+
30
+ subcmd.new(processor, arguments).execute
31
+ end
32
+
33
+ #
34
+ # Class methods added to subcommands
35
+ #
36
+ module ClassMethods
37
+ include Helpers::ReflectionHelper
38
+
39
+ #
40
+ # Default help text for a command with subcommands
41
+ #
42
+ def help
43
+ super + subcommand_list.to_s
44
+ end
45
+
46
+ #
47
+ # Command's subcommands.
48
+ #
49
+ def subcommand_list
50
+ @subcommand_list ||= CommandList.new(commands)
51
+ end
52
+ end
53
+ end
54
+ end
@@ -0,0 +1,8 @@
1
+ # frozen_string_literal: true
2
+
3
+ #
4
+ # Reopen main module to define the library version
5
+ #
6
+ module Byebug
7
+ VERSION = "11.0.1"
8
+ end
metadata ADDED
@@ -0,0 +1,199 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: byebug
3
+ version: !ruby/object:Gem::Version
4
+ version: 11.0.1
5
+ platform: ruby
6
+ authors:
7
+ - David Rodriguez
8
+ - Kent Sibilev
9
+ - Mark Moseley
10
+ autorequire:
11
+ bindir: exe
12
+ cert_chain: []
13
+ date: 2019-03-18 00:00:00.000000000 Z
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: bundler
17
+ requirement: !ruby/object:Gem::Requirement
18
+ requirements:
19
+ - - "~>"
20
+ - !ruby/object:Gem::Version
21
+ version: '2.0'
22
+ type: :development
23
+ prerelease: false
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ requirements:
26
+ - - "~>"
27
+ - !ruby/object:Gem::Version
28
+ version: '2.0'
29
+ description: |-
30
+ Byebug is a Ruby debugger. It's implemented using the
31
+ TracePoint C API for execution control and the Debug Inspector C API for
32
+ call stack navigation. The core component provides support that front-ends
33
+ can build on. It provides breakpoint handling and bindings for stack frames
34
+ among other things and it comes with an easy to use command line interface.
35
+ email: deivid.rodriguez@riseup.net
36
+ executables:
37
+ - byebug
38
+ extensions:
39
+ - ext/byebug/extconf.rb
40
+ extra_rdoc_files:
41
+ - CHANGELOG.md
42
+ - CONTRIBUTING.md
43
+ - README.md
44
+ - GUIDE.md
45
+ files:
46
+ - CHANGELOG.md
47
+ - CONTRIBUTING.md
48
+ - GUIDE.md
49
+ - LICENSE
50
+ - README.md
51
+ - exe/byebug
52
+ - ext/byebug/breakpoint.c
53
+ - ext/byebug/byebug.c
54
+ - ext/byebug/byebug.h
55
+ - ext/byebug/context.c
56
+ - ext/byebug/extconf.rb
57
+ - ext/byebug/locker.c
58
+ - ext/byebug/threads.c
59
+ - lib/byebug.rb
60
+ - lib/byebug/attacher.rb
61
+ - lib/byebug/breakpoint.rb
62
+ - lib/byebug/command.rb
63
+ - lib/byebug/command_list.rb
64
+ - lib/byebug/commands.rb
65
+ - lib/byebug/commands/break.rb
66
+ - lib/byebug/commands/catch.rb
67
+ - lib/byebug/commands/condition.rb
68
+ - lib/byebug/commands/continue.rb
69
+ - lib/byebug/commands/debug.rb
70
+ - lib/byebug/commands/delete.rb
71
+ - lib/byebug/commands/disable.rb
72
+ - lib/byebug/commands/disable/breakpoints.rb
73
+ - lib/byebug/commands/disable/display.rb
74
+ - lib/byebug/commands/display.rb
75
+ - lib/byebug/commands/down.rb
76
+ - lib/byebug/commands/edit.rb
77
+ - lib/byebug/commands/enable.rb
78
+ - lib/byebug/commands/enable/breakpoints.rb
79
+ - lib/byebug/commands/enable/display.rb
80
+ - lib/byebug/commands/finish.rb
81
+ - lib/byebug/commands/frame.rb
82
+ - lib/byebug/commands/help.rb
83
+ - lib/byebug/commands/history.rb
84
+ - lib/byebug/commands/info.rb
85
+ - lib/byebug/commands/info/breakpoints.rb
86
+ - lib/byebug/commands/info/display.rb
87
+ - lib/byebug/commands/info/file.rb
88
+ - lib/byebug/commands/info/line.rb
89
+ - lib/byebug/commands/info/program.rb
90
+ - lib/byebug/commands/interrupt.rb
91
+ - lib/byebug/commands/irb.rb
92
+ - lib/byebug/commands/kill.rb
93
+ - lib/byebug/commands/list.rb
94
+ - lib/byebug/commands/method.rb
95
+ - lib/byebug/commands/next.rb
96
+ - lib/byebug/commands/pry.rb
97
+ - lib/byebug/commands/quit.rb
98
+ - lib/byebug/commands/restart.rb
99
+ - lib/byebug/commands/save.rb
100
+ - lib/byebug/commands/set.rb
101
+ - lib/byebug/commands/show.rb
102
+ - lib/byebug/commands/skip.rb
103
+ - lib/byebug/commands/source.rb
104
+ - lib/byebug/commands/step.rb
105
+ - lib/byebug/commands/thread.rb
106
+ - lib/byebug/commands/thread/current.rb
107
+ - lib/byebug/commands/thread/list.rb
108
+ - lib/byebug/commands/thread/resume.rb
109
+ - lib/byebug/commands/thread/stop.rb
110
+ - lib/byebug/commands/thread/switch.rb
111
+ - lib/byebug/commands/tracevar.rb
112
+ - lib/byebug/commands/undisplay.rb
113
+ - lib/byebug/commands/untracevar.rb
114
+ - lib/byebug/commands/up.rb
115
+ - lib/byebug/commands/var.rb
116
+ - lib/byebug/commands/var/all.rb
117
+ - lib/byebug/commands/var/args.rb
118
+ - lib/byebug/commands/var/const.rb
119
+ - lib/byebug/commands/var/global.rb
120
+ - lib/byebug/commands/var/instance.rb
121
+ - lib/byebug/commands/var/local.rb
122
+ - lib/byebug/commands/where.rb
123
+ - lib/byebug/context.rb
124
+ - lib/byebug/core.rb
125
+ - lib/byebug/errors.rb
126
+ - lib/byebug/frame.rb
127
+ - lib/byebug/helpers/bin.rb
128
+ - lib/byebug/helpers/eval.rb
129
+ - lib/byebug/helpers/file.rb
130
+ - lib/byebug/helpers/frame.rb
131
+ - lib/byebug/helpers/parse.rb
132
+ - lib/byebug/helpers/path.rb
133
+ - lib/byebug/helpers/reflection.rb
134
+ - lib/byebug/helpers/string.rb
135
+ - lib/byebug/helpers/thread.rb
136
+ - lib/byebug/helpers/toggle.rb
137
+ - lib/byebug/helpers/var.rb
138
+ - lib/byebug/history.rb
139
+ - lib/byebug/interface.rb
140
+ - lib/byebug/interfaces/local_interface.rb
141
+ - lib/byebug/interfaces/remote_interface.rb
142
+ - lib/byebug/interfaces/script_interface.rb
143
+ - lib/byebug/interfaces/test_interface.rb
144
+ - lib/byebug/option_setter.rb
145
+ - lib/byebug/printers/base.rb
146
+ - lib/byebug/printers/plain.rb
147
+ - lib/byebug/printers/texts/base.yml
148
+ - lib/byebug/printers/texts/plain.yml
149
+ - lib/byebug/processors/command_processor.rb
150
+ - lib/byebug/processors/control_processor.rb
151
+ - lib/byebug/processors/post_mortem_processor.rb
152
+ - lib/byebug/processors/script_processor.rb
153
+ - lib/byebug/remote.rb
154
+ - lib/byebug/remote/client.rb
155
+ - lib/byebug/remote/server.rb
156
+ - lib/byebug/runner.rb
157
+ - lib/byebug/setting.rb
158
+ - lib/byebug/settings/autoirb.rb
159
+ - lib/byebug/settings/autolist.rb
160
+ - lib/byebug/settings/autopry.rb
161
+ - lib/byebug/settings/autosave.rb
162
+ - lib/byebug/settings/basename.rb
163
+ - lib/byebug/settings/callstyle.rb
164
+ - lib/byebug/settings/fullpath.rb
165
+ - lib/byebug/settings/histfile.rb
166
+ - lib/byebug/settings/histsize.rb
167
+ - lib/byebug/settings/linetrace.rb
168
+ - lib/byebug/settings/listsize.rb
169
+ - lib/byebug/settings/post_mortem.rb
170
+ - lib/byebug/settings/savefile.rb
171
+ - lib/byebug/settings/stack_on_error.rb
172
+ - lib/byebug/settings/width.rb
173
+ - lib/byebug/source_file_formatter.rb
174
+ - lib/byebug/subcommands.rb
175
+ - lib/byebug/version.rb
176
+ homepage: https://github.com/deivid-rodriguez/byebug
177
+ licenses:
178
+ - BSD-2-Clause
179
+ metadata: {}
180
+ post_install_message:
181
+ rdoc_options: []
182
+ require_paths:
183
+ - lib
184
+ required_ruby_version: !ruby/object:Gem::Requirement
185
+ requirements:
186
+ - - ">="
187
+ - !ruby/object:Gem::Version
188
+ version: 2.3.0
189
+ required_rubygems_version: !ruby/object:Gem::Requirement
190
+ requirements:
191
+ - - ">="
192
+ - !ruby/object:Gem::Version
193
+ version: '0'
194
+ requirements: []
195
+ rubygems_version: 3.0.3
196
+ signing_key:
197
+ specification_version: 4
198
+ summary: Ruby fast debugger - base + CLI
199
+ test_files: []