jets 0.5.5 → 0.5.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (154) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +3 -0
  3. data/Gemfile.lock +1 -1
  4. data/lib/jets/builders/code_builder.rb +1 -0
  5. data/lib/jets/builders/gem_replacer.rb +1 -0
  6. data/lib/jets/version.rb +1 -1
  7. data/vendor/lambdagem/CHANGELOG.md +3 -0
  8. data/vendor/lambdagem/Gemfile.lock +3 -3
  9. data/vendor/lambdagem/README.md +0 -4
  10. data/vendor/lambdagem/lib/lambdagem.rb +2 -0
  11. data/vendor/lambdagem/lib/lambdagem/base.rb +2 -0
  12. data/vendor/lambdagem/lib/lambdagem/extract/base.rb +6 -6
  13. data/vendor/lambdagem/lib/lambdagem/extract/gem.rb +6 -5
  14. data/vendor/lambdagem/lib/lambdagem/extract/ruby.rb +4 -3
  15. data/vendor/lambdagem/lib/lambdagem/util.rb +30 -0
  16. data/vendor/lambdagem/lib/lambdagem/version.rb +1 -1
  17. metadata +3 -140
  18. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/extensions/x86_64-linux/2.5.0-static/byebug-10.0.0/byebug/byebug.so +0 -0
  19. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/extensions/x86_64-linux/2.5.0-static/byebug-10.0.0/gem.build_complete +0 -0
  20. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/extensions/x86_64-linux/2.5.0-static/byebug-10.0.0/gem_make.out +0 -19
  21. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/LICENSE +0 -23
  22. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/exe/byebug +0 -6
  23. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/ext/byebug/Makefile +0 -263
  24. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/ext/byebug/breakpoint.c +0 -517
  25. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/ext/byebug/breakpoint.o +0 -0
  26. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/ext/byebug/byebug.c +0 -905
  27. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/ext/byebug/byebug.h +0 -143
  28. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/ext/byebug/byebug.o +0 -0
  29. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/ext/byebug/byebug.so +0 -0
  30. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/ext/byebug/context.c +0 -673
  31. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/ext/byebug/context.o +0 -0
  32. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/ext/byebug/extconf.rb +0 -12
  33. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/ext/byebug/locker.c +0 -96
  34. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/ext/byebug/locker.o +0 -0
  35. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/ext/byebug/threads.c +0 -230
  36. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/ext/byebug/threads.o +0 -0
  37. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug.rb +0 -3
  38. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/attacher.rb +0 -48
  39. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/breakpoint.rb +0 -111
  40. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/byebug.so +0 -0
  41. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/command.rb +0 -111
  42. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/command_list.rb +0 -34
  43. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands.rb +0 -39
  44. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/break.rb +0 -116
  45. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/catch.rb +0 -82
  46. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/condition.rb +0 -57
  47. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/continue.rb +0 -50
  48. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/debug.rb +0 -38
  49. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/delete.rb +0 -57
  50. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/disable.rb +0 -33
  51. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/disable/breakpoints.rb +0 -42
  52. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/disable/display.rb +0 -43
  53. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/display.rb +0 -66
  54. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/down.rb +0 -45
  55. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/edit.rb +0 -68
  56. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/enable.rb +0 -33
  57. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/enable/breakpoints.rb +0 -42
  58. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/enable/display.rb +0 -43
  59. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/finish.rb +0 -57
  60. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/frame.rb +0 -57
  61. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/help.rb +0 -64
  62. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/history.rb +0 -39
  63. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/info.rb +0 -37
  64. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/info/breakpoints.rb +0 -67
  65. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/info/display.rb +0 -51
  66. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/info/file.rb +0 -82
  67. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/info/line.rb +0 -35
  68. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/info/program.rb +0 -49
  69. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/interrupt.rb +0 -34
  70. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/irb.rb +0 -52
  71. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/kill.rb +0 -47
  72. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/list.rb +0 -159
  73. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/method.rb +0 -53
  74. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/next.rb +0 -40
  75. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/pry.rb +0 -43
  76. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/quit.rb +0 -42
  77. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/restart.rb +0 -64
  78. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/save.rb +0 -72
  79. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/set.rb +0 -79
  80. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/show.rb +0 -45
  81. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/source.rb +0 -42
  82. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/step.rb +0 -40
  83. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/thread.rb +0 -34
  84. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/thread/current.rb +0 -37
  85. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/thread/list.rb +0 -43
  86. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/thread/resume.rb +0 -47
  87. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/thread/stop.rb +0 -43
  88. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/thread/switch.rb +0 -46
  89. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/tracevar.rb +0 -57
  90. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/undisplay.rb +0 -52
  91. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/untracevar.rb +0 -36
  92. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/up.rb +0 -45
  93. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/var.rb +0 -37
  94. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/var/all.rb +0 -41
  95. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/var/args.rb +0 -39
  96. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/var/const.rb +0 -51
  97. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/var/global.rb +0 -37
  98. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/var/instance.rb +0 -39
  99. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/var/local.rb +0 -39
  100. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/where.rb +0 -53
  101. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/context.rb +0 -157
  102. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/core.rb +0 -114
  103. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/errors.rb +0 -29
  104. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/frame.rb +0 -185
  105. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/helpers/bin.rb +0 -47
  106. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/helpers/eval.rb +0 -126
  107. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/helpers/file.rb +0 -63
  108. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/helpers/frame.rb +0 -75
  109. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/helpers/parse.rb +0 -77
  110. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/helpers/path.rb +0 -40
  111. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/helpers/reflection.rb +0 -19
  112. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/helpers/string.rb +0 -36
  113. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/helpers/thread.rb +0 -67
  114. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/helpers/toggle.rb +0 -64
  115. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/helpers/var.rb +0 -54
  116. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/history.rb +0 -130
  117. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/interface.rb +0 -146
  118. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/interfaces/local_interface.rb +0 -44
  119. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/interfaces/remote_interface.rb +0 -50
  120. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/interfaces/script_interface.rb +0 -32
  121. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/interfaces/test_interface.rb +0 -67
  122. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/option_setter.rb +0 -95
  123. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/printers/base.rb +0 -69
  124. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/printers/plain.rb +0 -44
  125. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/printers/texts/base.yml +0 -115
  126. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/printers/texts/plain.yml +0 -33
  127. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/processors/command_processor.rb +0 -173
  128. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/processors/control_processor.rb +0 -24
  129. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/processors/post_mortem_processor.rb +0 -18
  130. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/processors/script_processor.rb +0 -49
  131. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/remote.rb +0 -85
  132. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/remote/client.rb +0 -55
  133. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/remote/server.rb +0 -47
  134. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/runner.rb +0 -198
  135. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/setting.rb +0 -79
  136. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/settings/autoirb.rb +0 -29
  137. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/settings/autolist.rb +0 -29
  138. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/settings/autopry.rb +0 -29
  139. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/settings/autosave.rb +0 -17
  140. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/settings/basename.rb +0 -16
  141. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/settings/callstyle.rb +0 -20
  142. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/settings/fullpath.rb +0 -16
  143. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/settings/histfile.rb +0 -20
  144. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/settings/histsize.rb +0 -20
  145. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/settings/linetrace.rb +0 -22
  146. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/settings/listsize.rb +0 -21
  147. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/settings/post_mortem.rb +0 -27
  148. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/settings/savefile.rb +0 -20
  149. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/settings/stack_on_error.rb +0 -15
  150. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/settings/width.rb +0 -20
  151. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/source_file_formatter.rb +0 -71
  152. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/subcommands.rb +0 -54
  153. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/version.rb +0 -8
  154. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/specifications/byebug-10.0.0.gemspec +0 -39
@@ -1,114 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "byebug/helpers/reflection"
4
- require "byebug/byebug"
5
- require "byebug/context"
6
- require "byebug/breakpoint"
7
- require "byebug/interface"
8
- require "byebug/processors/script_processor"
9
- require "byebug/processors/post_mortem_processor"
10
- require "byebug/commands"
11
- require "byebug/remote"
12
- require "byebug/printers/plain"
13
-
14
- #
15
- # Main debugger's container module. Everything is defined under this module
16
- #
17
- module Byebug
18
- include Helpers::ReflectionHelper
19
-
20
- extend self
21
-
22
- #
23
- # Configuration file used for startup commands. Default value is .byebugrc
24
- #
25
- attr_accessor :init_file
26
- self.init_file = ".byebugrc"
27
-
28
- #
29
- # Debugger's display expressions
30
- #
31
- attr_accessor :displays
32
- self.displays = []
33
-
34
- #
35
- # Running mode of the debugger. Can be either:
36
- #
37
- # * :attached => Attached to a running program through the `byebug` method.
38
- # * :standalone => Started through `byebug` script.
39
- #
40
- attr_accessor :mode
41
-
42
- #
43
- # Runs normal byebug initialization scripts.
44
- #
45
- # Reads and executes the commands from init file (if any) in the current
46
- # working directory. This is only done if the current directory is different
47
- # from your home directory. Thus, you can have more than one init file, one
48
- # generic in your home directory, and another, specific to the program you
49
- # are debugging, in the directory where you invoke byebug.
50
- #
51
- def run_init_script
52
- rc_dirs.each do |dir|
53
- rc_file = File.expand_path(File.join(dir, init_file))
54
- next unless File.exist?(rc_file)
55
-
56
- run_rc_file(rc_file)
57
- end
58
- end
59
-
60
- def self.load_settings
61
- Dir.glob(File.join(__dir__, "settings", "*.rb")).each do |file|
62
- require file
63
- end
64
-
65
- constants.grep(/[a-z]Setting/).map do |name|
66
- setting = const_get(name).new
67
- Byebug::Setting.settings[setting.to_sym] = setting
68
- end
69
- end
70
-
71
- #
72
- # Saves information about the unhandled exception and gives a byebug
73
- # prompt back to the user before program termination.
74
- #
75
- def self.handle_post_mortem
76
- return unless raised_exception
77
-
78
- context = raised_exception.__bb_context
79
-
80
- PostMortemProcessor.new(context).at_line
81
- end
82
-
83
- at_exit { Byebug.handle_post_mortem if Byebug.post_mortem? }
84
-
85
- private
86
-
87
- #
88
- # Runs a initialization script file
89
- #
90
- def run_rc_file(rc_file)
91
- interface = ScriptInterface.new(rc_file)
92
-
93
- ScriptProcessor.new(nil, interface).process_commands
94
- end
95
-
96
- #
97
- # List of folders to load rc files from
98
- #
99
- # @note Files will be loaded in the order specified here.
100
- #
101
- def rc_dirs
102
- [ENV["HOME"], Dir.pwd].compact.uniq
103
- end
104
- end
105
-
106
- Byebug.load_settings
107
-
108
- #
109
- # Extends the extension class to be able to pass information about the
110
- # debugging environment from the c-extension to the user.
111
- #
112
- class Exception
113
- attr_reader :__bb_context
114
- end
@@ -1,29 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Byebug
4
- #
5
- # Custom exception exception to signal "command not found" errors
6
- #
7
- class CommandNotFound < NoMethodError
8
- def initialize(input, parent = nil)
9
- @input = input
10
- @parent = parent
11
-
12
- super("Unknown command '#{name}'. Try '#{help}'")
13
- end
14
-
15
- private
16
-
17
- def name
18
- build_cmd(@parent, @input)
19
- end
20
-
21
- def help
22
- build_cmd("help", @parent)
23
- end
24
-
25
- def build_cmd(*args)
26
- args.compact.join(" ")
27
- end
28
- end
29
- end
@@ -1,185 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "byebug/helpers/file"
4
-
5
- module Byebug
6
- #
7
- # Represents a frame in the stack trace
8
- #
9
- class Frame
10
- include Helpers::FileHelper
11
-
12
- attr_reader :pos
13
-
14
- def initialize(context, pos)
15
- @context = context
16
- @pos = pos
17
- end
18
-
19
- def file
20
- @context.frame_file(pos)
21
- end
22
-
23
- def line
24
- @context.frame_line(pos)
25
- end
26
-
27
- def _self
28
- @context.frame_self(pos)
29
- end
30
-
31
- def _binding
32
- @context.frame_binding(pos)
33
- end
34
-
35
- def _class
36
- @context.frame_class(pos)
37
- end
38
-
39
- def _method
40
- @context.frame_method(pos)
41
- end
42
-
43
- def current?
44
- @context.frame.pos == pos
45
- end
46
-
47
- #
48
- # Gets local variables for the frame.
49
- #
50
- def locals
51
- return [] unless _binding
52
-
53
- _binding.local_variables.each_with_object({}) do |e, a|
54
- a[e] = _binding.local_variable_get(e)
55
- a
56
- end
57
- end
58
-
59
- #
60
- # Gets current method arguments for the frame.
61
- #
62
- def args
63
- return c_args unless _binding
64
-
65
- ruby_args
66
- end
67
-
68
- #
69
- # Returns the current class in the frame or an empty string if the current
70
- # +callstyle+ setting is 'short'
71
- #
72
- def deco_class
73
- Setting[:callstyle] == "short" || _class.to_s.empty? ? "" : "#{_class}."
74
- end
75
-
76
- def deco_block
77
- _method[/(?:block(?: \(\d+ levels\))?|rescue) in /] || ""
78
- end
79
-
80
- def deco_method
81
- _method[/((?:block(?: \(\d+ levels\))?|rescue) in )?(.*)/]
82
- end
83
-
84
- #
85
- # Builds a string containing all available args in the frame number, in a
86
- # verbose or non verbose way according to the value of the +callstyle+
87
- # setting
88
- #
89
- def deco_args
90
- return "" if args.empty?
91
-
92
- my_args = args.map do |arg|
93
- prefix, default = prefix_and_default(arg[0])
94
-
95
- kls = use_short_style?(arg) ? "" : "##{locals[arg[1]].class}"
96
-
97
- "#{prefix}#{arg[1] || default}#{kls}"
98
- end
99
-
100
- "(#{my_args.join(', ')})"
101
- end
102
-
103
- #
104
- # Builds a formatted string containing information about current method call
105
- #
106
- def deco_call
107
- deco_block + deco_class + deco_method + deco_args
108
- end
109
-
110
- #
111
- # Formatted filename in frame
112
- #
113
- def deco_file
114
- Setting[:fullpath] ? File.expand_path(file) : shortpath(file)
115
- end
116
-
117
- #
118
- # Properly formatted frame number of frame
119
- #
120
- def deco_pos
121
- format("%-2d", pos)
122
- end
123
-
124
- #
125
- # Formatted mark for the frame.
126
- #
127
- # --> marks the current frame
128
- # ͱ-- marks c-frames
129
- # marks regular frames
130
- #
131
- def mark
132
- return "-->" if current?
133
- return " ͱ--" if c_frame?
134
-
135
- " "
136
- end
137
-
138
- #
139
- # Checks whether the frame is a c-frame
140
- #
141
- def c_frame?
142
- _binding.nil?
143
- end
144
-
145
- def to_hash
146
- {
147
- mark: mark,
148
- pos: deco_pos,
149
- call: deco_call,
150
- file: deco_file,
151
- line: line,
152
- full_path: File.expand_path(deco_file)
153
- }
154
- end
155
-
156
- private
157
-
158
- def c_args
159
- return [] unless _self.to_s != "main"
160
-
161
- _class.instance_method(_method).parameters
162
- end
163
-
164
- def ruby_args
165
- meth_name = _binding.eval("__method__")
166
- return [] unless meth_name
167
-
168
- meth_obj = _class.instance_method(meth_name)
169
- return [] unless meth_obj
170
-
171
- meth_obj.parameters
172
- end
173
-
174
- def use_short_style?(arg)
175
- Setting[:callstyle] == "short" || arg[1].nil? || locals.empty?
176
- end
177
-
178
- def prefix_and_default(arg_type)
179
- return ["&", "block"] if arg_type == :block
180
- return ["*", "args"] if arg_type == :rest
181
-
182
- ["", nil]
183
- end
184
- end
185
- end
@@ -1,47 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Byebug
4
- module Helpers
5
- #
6
- # Utilities for interaction with executables
7
- #
8
- module BinHelper
9
- #
10
- # Cross-platform way of finding an executable in the $PATH.
11
- # Adapted from: https://gist.github.com/steakknife/88b6c3837a5e90a08296
12
- #
13
- def which(cmd)
14
- return File.expand_path(cmd) if File.exist?(cmd)
15
-
16
- [nil, *search_paths].each do |path|
17
- exe = find_executable(path, cmd)
18
- return exe if exe
19
- end
20
-
21
- nil
22
- end
23
-
24
- def find_executable(path, cmd)
25
- executable_file_extensions.each do |ext|
26
- exe = File.expand_path(cmd + ext, path)
27
-
28
- return exe if real_executable?(exe)
29
- end
30
-
31
- nil
32
- end
33
-
34
- def search_paths
35
- ENV["PATH"].split(File::PATH_SEPARATOR)
36
- end
37
-
38
- def executable_file_extensions
39
- ENV["PATHEXT"] ? ENV["PATHEXT"].split(";") : [""]
40
- end
41
-
42
- def real_executable?(f)
43
- File.executable?(f) && !File.directory?(f)
44
- end
45
- end
46
- end
47
- end
@@ -1,126 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Byebug
4
- module Helpers
5
- #
6
- # Utilities to assist evaluation of code strings
7
- #
8
- module EvalHelper
9
- #
10
- # Evaluates an +expression+ in a separate thread.
11
- #
12
- # @param expression [String] Expression to evaluate
13
- #
14
- def separate_thread_eval(expression)
15
- allowing_other_threads do
16
- in_new_thread { warning_eval(expression) }
17
- end
18
- end
19
-
20
- #
21
- # Evaluates an +expression+ that might use or defer execution to threads
22
- # other than the current one.
23
- #
24
- # @note This is necessary because when in byebug's prompt, every thread is
25
- # "frozen" so that nothing gets run. So we need to unlock threads prior
26
- # to evaluation or we will run into a deadlock.
27
- #
28
- # @param expression [String] Expression to evaluate
29
- #
30
- def multiple_thread_eval(expression)
31
- allowing_other_threads { warning_eval(expression) }
32
- end
33
-
34
- #
35
- # Evaluates a string containing Ruby code in a specific binding,
36
- # returning nil in an error happens.
37
- #
38
- def silent_eval(str, binding = frame._binding)
39
- safe_eval(str, binding) { |_e| nil }
40
- end
41
-
42
- #
43
- # Evaluates a string containing Ruby code in a specific binding,
44
- # handling the errors at an error level.
45
- #
46
- def error_eval(str, binding = frame._binding)
47
- safe_eval(str, binding) { |e| raise(e, msg(e)) }
48
- end
49
-
50
- #
51
- # Evaluates a string containing Ruby code in a specific binding,
52
- # handling the errors at a warning level.
53
- #
54
- def warning_eval(str, binding = frame._binding)
55
- safe_eval(str, binding) { |e| errmsg(msg(e)) }
56
- end
57
-
58
- private
59
-
60
- def safe_eval(str, binding)
61
- binding.eval(str.gsub(/\Aeval /, ""), "(byebug)", 1)
62
- rescue StandardError, ScriptError => e
63
- yield(e)
64
- end
65
-
66
- def msg(e)
67
- msg = Setting[:stack_on_error] ? error_msg(e) : warning_msg(e)
68
-
69
- pr("eval.exception", text_message: msg)
70
- end
71
-
72
- def error_msg(e)
73
- at = e.backtrace
74
-
75
- locations = ["#{at.shift}: #{warning_msg(e)}"]
76
- locations += at.map { |path| " from #{path}" }
77
- locations.join("\n")
78
- end
79
-
80
- def warning_msg(e)
81
- "#{e.class} Exception: #{e.message}"
82
- end
83
-
84
- #
85
- # Run block temporarily ignoring all TracePoint events.
86
- #
87
- # Used to evaluate stuff within Byebug's prompt. Otherwise, any code
88
- # creating new threads won't be properly evaluated because new threads
89
- # will get blocked by byebug's main thread.
90
- #
91
- def allowing_other_threads
92
- Byebug.unlock
93
-
94
- res = yield
95
-
96
- Byebug.lock
97
-
98
- res
99
- end
100
-
101
- #
102
- # Runs the given block in a new thread, waits for it to finish and
103
- # returns the new thread's result.
104
- #
105
- def in_new_thread
106
- res = nil
107
-
108
- Thread.new { res = yield }.join
109
-
110
- res
111
- end
112
-
113
- def safe_inspect(var)
114
- var.inspect
115
- rescue StandardError
116
- safe_to_s(var)
117
- end
118
-
119
- def safe_to_s(var)
120
- var.to_s
121
- rescue StandardError
122
- "*Error in evaluation*"
123
- end
124
- end
125
- end
126
- end