jets 0.5.5 → 0.5.6

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 (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,24 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "byebug/processors/command_processor"
4
-
5
- module Byebug
6
- #
7
- # Processes commands when there's not program running
8
- #
9
- class ControlProcessor < CommandProcessor
10
- #
11
- # Available commands
12
- #
13
- def commands
14
- super.select(&:allow_in_control)
15
- end
16
-
17
- #
18
- # Prompt shown before reading a command.
19
- #
20
- def prompt
21
- "(byebug:ctrl) "
22
- end
23
- end
24
- end
@@ -1,18 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "byebug/processors/command_processor"
4
-
5
- module Byebug
6
- #
7
- # Processes commands in post_mortem mode
8
- #
9
- class PostMortemProcessor < CommandProcessor
10
- def commands
11
- super.select(&:allow_in_post_mortem)
12
- end
13
-
14
- def prompt
15
- "(byebug:post_mortem) "
16
- end
17
- end
18
- end
@@ -1,49 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "byebug/processors/command_processor"
4
-
5
- module Byebug
6
- #
7
- # Processes commands from a file
8
- #
9
- class ScriptProcessor < CommandProcessor
10
- #
11
- # Available commands
12
- #
13
- def commands
14
- super.select(&:allow_in_control)
15
- end
16
-
17
- def repl
18
- while (input = interface.read_command(prompt))
19
- safely do
20
- command = command_list.match(input)
21
- raise CommandNotFound.new(input) unless command
22
-
23
- command.new(self, input).execute
24
- end
25
- end
26
- end
27
-
28
- def after_repl
29
- super
30
-
31
- interface.close
32
- end
33
-
34
- #
35
- # Prompt shown before reading a command.
36
- #
37
- def prompt
38
- "(byebug:ctrl) "
39
- end
40
-
41
- private
42
-
43
- def without_exceptions
44
- yield
45
- rescue StandardError
46
- nil
47
- end
48
- end
49
- end
@@ -1,85 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "socket"
4
- require "byebug/processors/control_processor"
5
- require "byebug/remote/server"
6
- require "byebug/remote/client"
7
-
8
- #
9
- # Remote debugging functionality.
10
- #
11
- module Byebug
12
- # Port number used for remote debugging
13
- PORT = 8989 unless defined?(PORT)
14
-
15
- class << self
16
- # If in remote mode, wait for the remote connection
17
- attr_accessor :wait_connection
18
-
19
- # The actual port that the server is started at
20
- def actual_port
21
- server.actual_port
22
- end
23
-
24
- # The actual port that the control server is started at
25
- def actual_control_port
26
- control.actual_port
27
- end
28
-
29
- #
30
- # Interrupts the current thread
31
- #
32
- def interrupt
33
- current_context.interrupt
34
- end
35
-
36
- #
37
- # Starts the remote server main thread
38
- #
39
- def start_server(host = nil, port = PORT)
40
- start_control(host, port.zero? ? 0 : port + 1)
41
-
42
- server.start(host, port)
43
- end
44
-
45
- #
46
- # Starts the remote server control thread
47
- #
48
- def start_control(host = nil, port = PORT + 1)
49
- control.start(host, port)
50
- end
51
-
52
- #
53
- # Connects to the remote byebug
54
- #
55
- def start_client(host = "localhost", port = PORT)
56
- client.start(host, port)
57
- end
58
-
59
- def parse_host_and_port(host_port_spec)
60
- location = host_port_spec.split(":")
61
- location[1] ? [location[0], location[1].to_i] : ["localhost", location[0]]
62
- end
63
-
64
- private
65
-
66
- def client
67
- @client ||= Remote::Client.new(Context.interface)
68
- end
69
-
70
- def server
71
- @server ||= Remote::Server.new(wait_connection: wait_connection) do |s|
72
- Context.interface = RemoteInterface.new(s)
73
- end
74
- end
75
-
76
- def control
77
- @control ||= Remote::Server.new(wait_connection: false) do |s|
78
- context = Byebug.current_context
79
- interface = RemoteInterface.new(s)
80
-
81
- ControlProcessor.new(context, interface).process_commands
82
- end
83
- end
84
- end
85
- end
@@ -1,55 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "socket"
4
-
5
- module Byebug
6
- module Remote
7
- #
8
- # Client for remote debugging
9
- #
10
- class Client
11
- attr_reader :interface, :socket
12
-
13
- def initialize(interface)
14
- @interface = interface
15
- @socket = nil
16
- end
17
-
18
- #
19
- # Connects to the remote byebug
20
- #
21
- def start(host = "localhost", port = PORT)
22
- connect_at(host, port)
23
-
24
- while (line = socket.gets)
25
- case line
26
- when /^PROMPT (.*)$/
27
- input = interface.read_command(Regexp.last_match[1])
28
- break unless input
29
- socket.puts input
30
- when /^CONFIRM (.*)$/
31
- input = interface.readline(Regexp.last_match[1])
32
- break unless input
33
- socket.puts input
34
- else
35
- interface.puts line
36
- end
37
- end
38
-
39
- socket.close
40
- end
41
-
42
- def started?
43
- !socket.nil?
44
- end
45
-
46
- private
47
-
48
- def connect_at(host, port)
49
- interface.puts "Connecting to byebug server at #{host}:#{port}..."
50
- @socket = TCPSocket.new(host, port)
51
- interface.puts "Connected."
52
- end
53
- end
54
- end
55
- end
@@ -1,47 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "socket"
4
-
5
- module Byebug
6
- module Remote
7
- #
8
- # Server for remote debugging
9
- #
10
- class Server
11
- attr_reader :actual_port, :wait_connection
12
-
13
- def initialize(wait_connection:, &block)
14
- @thread = nil
15
- @wait_connection = wait_connection
16
- @main_loop = block
17
- end
18
-
19
- #
20
- # Start the remote debugging server
21
- #
22
- def start(host, port)
23
- return if @thread
24
-
25
- if wait_connection
26
- mutex = Mutex.new
27
- proceed = ConditionVariable.new
28
- end
29
-
30
- server = TCPServer.new(host, port)
31
- @actual_port = server.addr[1]
32
-
33
- yield if block_given?
34
-
35
- @thread = DebugThread.new do
36
- while (session = server.accept)
37
- @main_loop.call(session)
38
-
39
- mutex.synchronize { proceed.signal } if wait_connection
40
- end
41
- end
42
-
43
- mutex.synchronize { proceed.wait(mutex) } if wait_connection
44
- end
45
- end
46
- end
47
- end
@@ -1,198 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "optparse"
4
- require "English"
5
- require "byebug/core"
6
- require "byebug/version"
7
- require "byebug/helpers/bin"
8
- require "byebug/helpers/parse"
9
- require "byebug/helpers/string"
10
- require "byebug/option_setter"
11
- require "byebug/processors/control_processor"
12
-
13
- module Byebug
14
- #
15
- # Responsible for starting the debugger when started from the command line.
16
- #
17
- class Runner
18
- include Helpers::BinHelper
19
- include Helpers::ParseHelper
20
- include Helpers::StringHelper
21
-
22
- #
23
- # Special working modes that don't actually start the debugger.
24
- #
25
- attr_reader :help, :version, :remote
26
-
27
- #
28
- # Signals that we should exit after the debugged program is finished.
29
- #
30
- attr_accessor :quit
31
-
32
- #
33
- # Signals that we should stop before program starts
34
- #
35
- attr_accessor :stop
36
-
37
- #
38
- # Signals that we should run rc scripts before program starts
39
- #
40
- attr_writer :init_script
41
-
42
- #
43
- # @param stop [Boolean] Whether the runner should stop right before
44
- # starting the program.
45
- #
46
- # @param quit [Boolean] Whether the runner should quit right after
47
- # finishing the program.
48
- #
49
- def initialize(stop = true, quit = true)
50
- @stop = stop
51
- @quit = quit
52
- end
53
-
54
- def help=(text)
55
- @help ||= text
56
-
57
- interface.puts("#{text}\n")
58
- end
59
-
60
- def version=(number)
61
- @version ||= number
62
-
63
- interface.puts prettify <<-VERSION
64
- Running byebug #{number}
65
- VERSION
66
- end
67
-
68
- def remote=(host_and_port)
69
- @remote ||= Byebug.parse_host_and_port(host_and_port)
70
-
71
- Byebug.start_client(*@remote)
72
- end
73
-
74
- def init_script
75
- defined?(@init_script) ? @init_script : true
76
- end
77
-
78
- #
79
- # Usage banner.
80
- #
81
- def banner
82
- prettify <<-BANNER
83
- byebug #{Byebug::VERSION}
84
-
85
- Usage: byebug [options] <script.rb> -- <script.rb parameters>
86
- BANNER
87
- end
88
-
89
- #
90
- # Starts byebug to debug a program.
91
- #
92
- def run
93
- Byebug.mode = :standalone
94
-
95
- option_parser.order!($ARGV)
96
- return if non_script_option? || error_in_script?
97
-
98
- $PROGRAM_NAME = program
99
-
100
- Byebug.run_init_script if init_script
101
-
102
- loop do
103
- debug_program
104
-
105
- break if quit
106
-
107
- ControlProcessor.new(nil, interface).process_commands
108
- end
109
- end
110
-
111
- def interface
112
- @interface ||= Context.interface
113
- end
114
-
115
- #
116
- # Processes options passed from the command line.
117
- #
118
- def option_parser
119
- @option_parser ||= OptionParser.new(banner, 25) do |opts|
120
- opts.banner = banner
121
-
122
- OptionSetter.new(self, opts).setup
123
- end
124
- end
125
-
126
- def program
127
- @program ||= begin
128
- candidate = which($ARGV.shift)
129
-
130
- if [which("ruby"), RbConfig.ruby].include?(candidate)
131
- which($ARGV.shift)
132
- else
133
- candidate
134
- end
135
- end
136
- end
137
-
138
- #
139
- # An option that doesn't need a script specified was given
140
- #
141
- def non_script_option?
142
- version || help || remote
143
- end
144
-
145
- #
146
- # There is an error with the specified script
147
- #
148
- def error_in_script?
149
- no_script? || non_existing_script? || invalid_script?
150
- end
151
-
152
- #
153
- # No script to debug specified
154
- #
155
- def no_script?
156
- return false unless $ARGV.empty?
157
-
158
- print_error("You must specify a program to debug")
159
- true
160
- end
161
-
162
- #
163
- # Extracts debugged program from command line args.
164
- #
165
- def non_existing_script?
166
- return false if program
167
-
168
- print_error("The script doesn't exist")
169
- true
170
- end
171
-
172
- #
173
- # Checks the debugged script has correct syntax
174
- #
175
- def invalid_script?
176
- return false if syntax_valid?(File.read(program))
177
-
178
- print_error("The script has incorrect syntax")
179
- true
180
- end
181
-
182
- #
183
- # Debugs a script only if syntax checks okay.
184
- #
185
- def debug_program
186
- error = Byebug.debug_load(program, stop)
187
- puts "#{error}\n#{error.backtrace}" if error
188
- end
189
-
190
- #
191
- # Prints an error message and a help string
192
- #
193
- def print_error(msg)
194
- interface.errmsg(msg)
195
- interface.puts(option_parser.help)
196
- end
197
- end
198
- end