pry 0.10.pre.1-java → 0.10.0.pre2-java

Sign up to get free protection for your applications and to get access to all the features.
Files changed (214) hide show
  1. checksums.yaml +7 -0
  2. data/CHANGELOG.md +702 -0
  3. data/LICENSE +2 -2
  4. data/{README.markdown → README.md} +41 -35
  5. data/lib/pry.rb +82 -139
  6. data/lib/pry/cli.rb +77 -30
  7. data/lib/pry/code.rb +126 -182
  8. data/lib/pry/code/code_file.rb +103 -0
  9. data/lib/pry/code/code_range.rb +71 -0
  10. data/lib/pry/code/loc.rb +92 -0
  11. data/lib/pry/code_object.rb +172 -0
  12. data/lib/pry/color_printer.rb +55 -0
  13. data/lib/pry/command.rb +184 -28
  14. data/lib/pry/command_set.rb +113 -59
  15. data/lib/pry/commands.rb +4 -27
  16. data/lib/pry/commands/amend_line.rb +99 -0
  17. data/lib/pry/commands/bang.rb +20 -0
  18. data/lib/pry/commands/bang_pry.rb +17 -0
  19. data/lib/pry/commands/cat.rb +62 -0
  20. data/lib/pry/commands/cat/abstract_formatter.rb +27 -0
  21. data/lib/pry/commands/cat/exception_formatter.rb +77 -0
  22. data/lib/pry/commands/cat/file_formatter.rb +67 -0
  23. data/lib/pry/commands/cat/input_expression_formatter.rb +43 -0
  24. data/lib/pry/commands/cd.rb +41 -0
  25. data/lib/pry/commands/change_inspector.rb +27 -0
  26. data/lib/pry/commands/change_prompt.rb +26 -0
  27. data/lib/pry/commands/code_collector.rb +165 -0
  28. data/lib/pry/commands/disable_pry.rb +27 -0
  29. data/lib/pry/commands/disabled_commands.rb +2 -0
  30. data/lib/pry/commands/easter_eggs.rb +112 -0
  31. data/lib/pry/commands/edit.rb +195 -0
  32. data/lib/pry/commands/edit/exception_patcher.rb +25 -0
  33. data/lib/pry/commands/edit/file_and_line_locator.rb +36 -0
  34. data/lib/pry/commands/exit.rb +42 -0
  35. data/lib/pry/commands/exit_all.rb +29 -0
  36. data/lib/pry/commands/exit_program.rb +23 -0
  37. data/lib/pry/commands/find_method.rb +193 -0
  38. data/lib/pry/commands/fix_indent.rb +19 -0
  39. data/lib/pry/commands/gem_cd.rb +26 -0
  40. data/lib/pry/commands/gem_install.rb +32 -0
  41. data/lib/pry/commands/gem_list.rb +33 -0
  42. data/lib/pry/commands/gem_open.rb +29 -0
  43. data/lib/pry/commands/gist.rb +101 -0
  44. data/lib/pry/commands/help.rb +164 -0
  45. data/lib/pry/commands/hist.rb +180 -0
  46. data/lib/pry/commands/import_set.rb +22 -0
  47. data/lib/pry/commands/install_command.rb +53 -0
  48. data/lib/pry/commands/jump_to.rb +29 -0
  49. data/lib/pry/commands/list_inspectors.rb +35 -0
  50. data/lib/pry/commands/list_prompts.rb +35 -0
  51. data/lib/pry/commands/ls.rb +114 -0
  52. data/lib/pry/commands/ls/constants.rb +47 -0
  53. data/lib/pry/commands/ls/formatter.rb +49 -0
  54. data/lib/pry/commands/ls/globals.rb +48 -0
  55. data/lib/pry/commands/ls/grep.rb +21 -0
  56. data/lib/pry/commands/ls/instance_vars.rb +39 -0
  57. data/lib/pry/commands/ls/interrogatable.rb +18 -0
  58. data/lib/pry/commands/ls/jruby_hacks.rb +49 -0
  59. data/lib/pry/commands/ls/local_names.rb +35 -0
  60. data/lib/pry/commands/ls/local_vars.rb +39 -0
  61. data/lib/pry/commands/ls/ls_entity.rb +70 -0
  62. data/lib/pry/commands/ls/methods.rb +57 -0
  63. data/lib/pry/commands/ls/methods_helper.rb +46 -0
  64. data/lib/pry/commands/ls/self_methods.rb +32 -0
  65. data/lib/pry/commands/nesting.rb +25 -0
  66. data/lib/pry/commands/play.rb +103 -0
  67. data/lib/pry/commands/pry_backtrace.rb +25 -0
  68. data/lib/pry/commands/pry_version.rb +17 -0
  69. data/lib/pry/commands/raise_up.rb +32 -0
  70. data/lib/pry/commands/reload_code.rb +62 -0
  71. data/lib/pry/commands/reset.rb +18 -0
  72. data/lib/pry/commands/ri.rb +60 -0
  73. data/lib/pry/commands/save_file.rb +61 -0
  74. data/lib/pry/commands/shell_command.rb +48 -0
  75. data/lib/pry/commands/shell_mode.rb +25 -0
  76. data/lib/pry/commands/show_doc.rb +83 -0
  77. data/lib/pry/commands/show_info.rb +195 -0
  78. data/lib/pry/commands/show_input.rb +17 -0
  79. data/lib/pry/commands/show_source.rb +50 -0
  80. data/lib/pry/commands/simple_prompt.rb +22 -0
  81. data/lib/pry/commands/stat.rb +40 -0
  82. data/lib/pry/commands/switch_to.rb +23 -0
  83. data/lib/pry/commands/toggle_color.rb +24 -0
  84. data/lib/pry/commands/watch_expression.rb +105 -0
  85. data/lib/pry/commands/watch_expression/expression.rb +38 -0
  86. data/lib/pry/commands/whereami.rb +190 -0
  87. data/lib/pry/commands/wtf.rb +57 -0
  88. data/lib/pry/config.rb +20 -229
  89. data/lib/pry/config/behavior.rb +139 -0
  90. data/lib/pry/config/convenience.rb +26 -0
  91. data/lib/pry/config/default.rb +165 -0
  92. data/lib/pry/core_extensions.rb +59 -38
  93. data/lib/pry/editor.rb +133 -0
  94. data/lib/pry/exceptions.rb +77 -0
  95. data/lib/pry/helpers.rb +1 -0
  96. data/lib/pry/helpers/base_helpers.rb +40 -154
  97. data/lib/pry/helpers/command_helpers.rb +19 -130
  98. data/lib/pry/helpers/documentation_helpers.rb +21 -11
  99. data/lib/pry/helpers/table.rb +109 -0
  100. data/lib/pry/helpers/text.rb +8 -9
  101. data/lib/pry/history.rb +61 -45
  102. data/lib/pry/history_array.rb +11 -1
  103. data/lib/pry/hooks.rb +10 -32
  104. data/lib/pry/indent.rb +110 -38
  105. data/lib/pry/input_completer.rb +242 -0
  106. data/lib/pry/input_lock.rb +132 -0
  107. data/lib/pry/inspector.rb +27 -0
  108. data/lib/pry/last_exception.rb +61 -0
  109. data/lib/pry/method.rb +199 -200
  110. data/lib/pry/method/disowned.rb +53 -0
  111. data/lib/pry/method/patcher.rb +125 -0
  112. data/lib/pry/method/weird_method_locator.rb +186 -0
  113. data/lib/pry/module_candidate.rb +39 -33
  114. data/lib/pry/object_path.rb +82 -0
  115. data/lib/pry/output.rb +50 -0
  116. data/lib/pry/pager.rb +234 -0
  117. data/lib/pry/plugins.rb +4 -3
  118. data/lib/pry/prompt.rb +26 -0
  119. data/lib/pry/pry_class.rb +199 -227
  120. data/lib/pry/pry_instance.rb +344 -403
  121. data/lib/pry/rbx_path.rb +1 -1
  122. data/lib/pry/repl.rb +202 -0
  123. data/lib/pry/repl_file_loader.rb +20 -26
  124. data/lib/pry/rubygem.rb +82 -0
  125. data/lib/pry/terminal.rb +79 -0
  126. data/lib/pry/test/helper.rb +170 -0
  127. data/lib/pry/version.rb +1 -1
  128. data/lib/pry/wrapped_module.rb +133 -48
  129. metadata +132 -197
  130. data/.document +0 -2
  131. data/.gemtest +0 -0
  132. data/.gitignore +0 -16
  133. data/.travis.yml +0 -17
  134. data/.yardopts +0 -1
  135. data/CHANGELOG +0 -387
  136. data/CONTRIBUTORS +0 -36
  137. data/Gemfile +0 -2
  138. data/Rakefile +0 -137
  139. data/TODO +0 -117
  140. data/examples/example_basic.rb +0 -15
  141. data/examples/example_command_override.rb +0 -32
  142. data/examples/example_commands.rb +0 -36
  143. data/examples/example_hooks.rb +0 -9
  144. data/examples/example_image_edit.rb +0 -67
  145. data/examples/example_input.rb +0 -7
  146. data/examples/example_input2.rb +0 -29
  147. data/examples/example_output.rb +0 -11
  148. data/examples/example_print.rb +0 -6
  149. data/examples/example_prompt.rb +0 -9
  150. data/examples/helper.rb +0 -6
  151. data/lib/pry/completion.rb +0 -221
  152. data/lib/pry/custom_completions.rb +0 -6
  153. data/lib/pry/default_commands/cd.rb +0 -81
  154. data/lib/pry/default_commands/commands.rb +0 -62
  155. data/lib/pry/default_commands/context.rb +0 -98
  156. data/lib/pry/default_commands/easter_eggs.rb +0 -95
  157. data/lib/pry/default_commands/editing.rb +0 -420
  158. data/lib/pry/default_commands/find_method.rb +0 -169
  159. data/lib/pry/default_commands/gems.rb +0 -84
  160. data/lib/pry/default_commands/gist.rb +0 -187
  161. data/lib/pry/default_commands/help.rb +0 -127
  162. data/lib/pry/default_commands/hist.rb +0 -120
  163. data/lib/pry/default_commands/input_and_output.rb +0 -306
  164. data/lib/pry/default_commands/introspection.rb +0 -410
  165. data/lib/pry/default_commands/ls.rb +0 -272
  166. data/lib/pry/default_commands/misc.rb +0 -38
  167. data/lib/pry/default_commands/navigating_pry.rb +0 -110
  168. data/lib/pry/default_commands/whereami.rb +0 -92
  169. data/lib/pry/extended_commands/experimental.rb +0 -7
  170. data/lib/pry/rbx_method.rb +0 -13
  171. data/man/pry.1 +0 -195
  172. data/man/pry.1.html +0 -204
  173. data/man/pry.1.ronn +0 -141
  174. data/pry.gemspec +0 -46
  175. data/test/candidate_helper1.rb +0 -11
  176. data/test/candidate_helper2.rb +0 -8
  177. data/test/helper.rb +0 -223
  178. data/test/test_cli.rb +0 -78
  179. data/test/test_code.rb +0 -201
  180. data/test/test_command.rb +0 -712
  181. data/test/test_command_helpers.rb +0 -9
  182. data/test/test_command_integration.rb +0 -668
  183. data/test/test_command_set.rb +0 -610
  184. data/test/test_completion.rb +0 -62
  185. data/test/test_control_d_handler.rb +0 -45
  186. data/test/test_default_commands/example.erb +0 -5
  187. data/test/test_default_commands/test_cd.rb +0 -318
  188. data/test/test_default_commands/test_context.rb +0 -280
  189. data/test/test_default_commands/test_documentation.rb +0 -314
  190. data/test/test_default_commands/test_find_method.rb +0 -50
  191. data/test/test_default_commands/test_gems.rb +0 -18
  192. data/test/test_default_commands/test_help.rb +0 -57
  193. data/test/test_default_commands/test_input.rb +0 -428
  194. data/test/test_default_commands/test_introspection.rb +0 -511
  195. data/test/test_default_commands/test_ls.rb +0 -151
  196. data/test/test_default_commands/test_shell.rb +0 -343
  197. data/test/test_default_commands/test_show_source.rb +0 -432
  198. data/test/test_exception_whitelist.rb +0 -21
  199. data/test/test_history_array.rb +0 -65
  200. data/test/test_hooks.rb +0 -521
  201. data/test/test_indent.rb +0 -277
  202. data/test/test_input_stack.rb +0 -86
  203. data/test/test_method.rb +0 -401
  204. data/test/test_pry.rb +0 -463
  205. data/test/test_pry_defaults.rb +0 -419
  206. data/test/test_pry_history.rb +0 -84
  207. data/test/test_pry_output.rb +0 -41
  208. data/test/test_sticky_locals.rb +0 -155
  209. data/test/test_syntax_checking.rb +0 -65
  210. data/test/test_wrapped_module.rb +0 -174
  211. data/test/testrc +0 -2
  212. data/test/testrcbad +0 -2
  213. data/wiki/Customizing-pry.md +0 -397
  214. data/wiki/Home.md +0 -4
data/.document DELETED
@@ -1,2 +0,0 @@
1
- -
2
- wiki/*.md
data/.gemtest DELETED
File without changes
data/.gitignore DELETED
@@ -1,16 +0,0 @@
1
- Makefile
2
- *.so
3
- *.o
4
- *.def
5
- *.rbc
6
- doc/
7
- pkg/
8
- coverage/
9
- .yardoc/
10
- /tags
11
- *.gem
12
- .rbx/
13
- .rvmrc
14
- Gemfile.lock
15
- *.swp
16
- **/*~
@@ -1,17 +0,0 @@
1
- rvm:
2
- - 1.8.7
3
- - 1.9.2
4
- - 1.9.3
5
- - ree
6
- - rbx-18mode
7
- - rbx-19mode
8
- - jruby
9
-
10
- notifications:
11
- irc: "irc.freenode.org#pry"
12
- recipients:
13
- - jrmair@gmail.com
14
-
15
- branches:
16
- only:
17
- - master
data/.yardopts DELETED
@@ -1 +0,0 @@
1
- --markup markdown --private
data/CHANGELOG DELETED
@@ -1,387 +0,0 @@
1
- 09/05/2012 version 0.9.9.6 fixes #558
2
- * #558 has been a thorn in our side for long enough, hopefully this properly fixes it
3
- (though im not to confident :P)
4
-
5
- 09/05/2012 version 0.9.9.5 minor bugfix
6
- * fixed ZeroDivisionError in correct_indentation, bug #558
7
- * fix double highlighting in rdoc, bug #562
8
- * autocreate configuration for plugins, bug #548
9
-
10
- 26/4/2012 version 0.9.9.4 major bugfix
11
- * fixed `NoMethodError: undefined method `winsize' for #<IO:<STDOUT>>`, bug #549
12
- * fixes for jruby
13
- * breakage on `exit` syntax error, fixes, #550
14
- * heredoc content no longer auto-indented
15
-
16
- 19/4/2012 version 0.9.9.3 major doc bugfix
17
- * show-doc would fail on some core classes, i.e `show-doc Bignum`. This is now fixed
18
- and show allow a wider range of core documentation to be viewed directly in Pry.
19
-
20
- 18/4/2012 version 0.9.9.2 minor bugfix
21
- * make correct_indentation's auto-colorization respect Pry.color
22
-
23
- 18/4/2012 version 0.9.9.1 very minor release
24
- * cleared up confusion in show-source/show-doc docs that -a switch applies to classes
25
- as well as modules
26
-
27
- 18/4/2012 version 0.9.9
28
- MAJOR NEW FEATURES
29
- * lines of input are syntax highlighted upon 'enter' keypress
30
- * show-source command can now show class/module sourcecode (use -a to see all monkeypatches). Hard dependency on ruby18_source_location gem in MRI 1.8
31
- * show-doc command can show class/module docs (use -a to see docs for all monkeypatches) Hard dependency on ruby18_source_location gem in MRI 1.8.
32
- * new `find-method` command, performs a recursive search in a namespace for the existence of methods. Can find methods whose names match a regex or methods which contain provided CODE! This command is like a ruby-aware 'grep', very cool (thanks swarley)
33
- * pry-coolline now works properly with Pry (https://github.com/pry/pry-coolline)
34
- * alias_command method now much more powerful, e.g: alias_command "lM", "ls -M"
35
- * `whereami` is now more intelligent, automatically showing entire sourcecode of current method if current context is a method (thanks robgleeson).
36
- * new `raise-up` command. Allows you to raise an exception that will bubble out of pry (ending the session) and escape into enclosing program.
37
-
38
- remaining items:
39
- * fixed windows crashing bug when paging
40
- * lines ending with \ are incomplete (kudos to fowl)
41
- * `edit-method -n` no longer blocks (thanks misfo)s
42
- * show instance methods of modules by default in ls
43
- * docs for REPL defined methods can now be displayed using show-doc
44
- * autoload ruby18_source_location on mri18, when available (https://github.com/conradirwin/ruby18_source_location)
45
- * tab completion should work on first line now (historic bug fixed)
46
- * :quiet => true option added to `Pry.start`, turns off whereami
47
- * another easter egg added
48
- * show unloaded constants in yellow for ls
49
- * improved documentation for Pry.config options
50
- * improved auto indentation
51
- * JRuby: heuristics used to clean up 'ls' output (less internal methods polluting output)
52
-
53
- 6/3/2012 version 0.9.8.4 major bugfix
54
- * ~/.pry_history wasnt being created (if it did not exist)! FIXED
55
- * `hist --save` saved colors! FIXED
56
- * added Pry#add_sticky_local API for adding sticky locals to individual pry instances
57
-
58
- 2/3/2012 version 0.9.8.3 minor update
59
- * various tweaks to improve rbx support
60
- * commands now support optional block arguments
61
- * much improved help command
62
- * updated method_source dependencya
63
- * added wtf command
64
- * jruby should now work in windows (though without color)
65
-
66
- 9/2/2012 version 0.9.8.2 bugfix
67
- * fixed bugs related to --super
68
- * upgraded slop dependency
69
- * added edit -c (edit current line)
70
- * edit now respects Pry.config.disable_autoreload option
71
-
72
- 30/1/2012 version 0.9.8.1 bugfix
73
- * fixed broken --no-plugins option
74
- * Ensure ARGV is not mutated during option parsing.
75
- * Use a more rbx-friendly test for unicodeness
76
- * Use rbx-{18,19}mode as indicated http://about.travis-ci.org/docs/user/languages/ruby/
77
- * Don't explode in gem-list [Fixes #453, #454]
78
- * Check for command-name collision on assignment [Fixes #450]
79
-
80
- 25/1/2012 version 0.9.8
81
-
82
- MAJOR NEW FEATURES
83
- - upgraded command api, https://github.com/pry/pry/wiki/Custom-commands
84
- - added a system of hooks for customizing pry behaviour
85
- - changed syntax checking to use eval() for improved accuracy
86
- - added save-file command
87
- - added gist command (removed gist-method, new gist command is more general)
88
-
89
- complete CHANGELOG:
90
- * CommandError's no longer cause the current input to be disgarded
91
- * Better syntax highlighting for rbx code code
92
- * added cat --in to show pry input history
93
- * prefixed temporary file names with 'pry'
94
- * show-doc now supports -l and -b options (line numbers)
95
- * play now supports -i and -d options
96
- * moved UserCommandAPI command-set to pry-developer_tools plugin
97
- * added :when_started event for hooks, called in Pry.start
98
- * added a man page
99
- * added rename method to Pry::CommandSet (commands can be renamed)
100
- * added CommandSet#{before_command,after_command} for enhancing builtin commands
101
- * added checking for namespace collisions with pry commands, set Pry.config.collision_warning
102
- * work around namespace collisions by ensuring lines starting with a space are executed as
103
- * ruby.work around namespace collisions by prensuring lines starting with a space are executed as ruby
104
- * added handlers for Ctrl+C (SIGINT) on jruby, these are now caught as in other ruby versions
105
- * removed dependency on ruby_parser
106
- * prevented colours leaking across the pry prompt
107
- * fixed edge cases in Pry::Method, for methods with crazy names and methods that have been 'undef'd
108
- * refactored history handling code for clarity and correctness
109
- * added Pry::WrappedModule as a counterpart to Pry::Method
110
- * made a trailing , cause pry to wait for further input
111
- * removed gist-method command, added gist command
112
- * added pry-backtrace command to show history of current session
113
- * fixed whereami within 'super' methods
114
- * replaced inline version guards by Pry::Helpers::BaseHelpers.{rbx?,jruby?,windows?} etc.
115
- * removed the CommandProcessor, its functionality is part of the new Command class
116
- * changed cd .. at the top level so it doesn't quit pry.
117
- * changed edit-command to no-longer need a command set argument
118
- * fixed empty lines so that they don't replace _ by nil
119
- * fixed SyntaxErrors at the REPL level so they don't replace _ex_.
120
-
121
- 5/11/2011 version 0.9.7.4 hotfix
122
- * ls -M now works in modules (bugfix)
123
- * added exception msg for bad cd object/path
124
- * no longer die when encounter exceptions in .pryrc
125
- * baked in CoolLine support
126
- * Pry.config.input in .pryrc now respected
127
-
128
- 28/10/2011 version 0.9.7.3 hotfix-hotfix ;)
129
- * really fixed indentation for 'super if' and friends
130
- * Fixed indentation for tmux
131
- * added Pry.config.correct_indent option (to toggle whether indentation
132
- * corrected optional param behaviour for method signatures: e.g Signature meth(param1=?, param2=?)
133
-
134
- 27/10/2011 version 0.9.7.2 hotfix
135
- * fixed indentation for 'super if' and 'ensure', 'next if', etc
136
- * refactored Pry#run_command so it can accept an eval_string parameter (so amend-line and so on can work with it)
137
- * changed ^D so it no longer resets indent level automatically
138
-
139
- 26/10/2011 version 0.9.7.1 hotfix
140
- * fixed gem dependecy issues
141
-
142
- 25/10/2011 version 0.9.7
143
-
144
- MAJOR NEW FEATURES:
145
- - upgraded ls command to have a more intuitive interface
146
- - added automatic indentation (thanks YorickPeterse!)
147
- - added Pry::Method wrapper class to encapsulate method-related functionality
148
-
149
- complete CHANGELOG:
150
- * fixed syntax highlighting for object literals
151
- * fixed ActiveSupport method-naming conflict with "in?"
152
- * added --super option to edit-method, show-method, and friends - making it easier to operate on superclass methods
153
- * officially added edit --in to open previous expressions in an editor
154
- * whereami now works for REPL-defined code
155
- * started using JRuby parser for input validation in JRuby (thanks pangloss!)
156
- * fixed bug where ~/.pryrc could be loaded more than once (thanks kelseyjudson!)
157
- * added parse_options! helper to pull option parsing out of commands
158
- * Pry now respects the terminal's input encoding
159
- * moved some requires out of the startup process for improved speed
160
- * added input_array info to DEFAULT_PROMPT, e.g [1] pry(main)>
161
- * added --no-history option to pry binary (prevent history being LOADED, history will still be saved)
162
-
163
- 27/9/2011 version 0.9.6.2 HOTFIX release
164
- * downgrading to CodeRay 0.9.8 due to problems with 1.0 and rails (autoloading problem) see #280 on pry and #6 on CodeRay
165
- * also added (as a minor feature) cirwin's implementation of edit --in
166
- * added early break/exit for objectpath errors (the 'cd 34/@hello/bad_path/23')
167
-
168
- 19/9/2011 version 0.9.6
169
- * restored previous behavior of command-line switches (allowing "-rfilename")
170
- * removed -p option (--play) from edit command
171
- * `edit` with no arguments now edits the current or most recent expression
172
- * `edit` auto-reloads .rb files (need to specify -n to suppress)
173
- * added -p option (--patch) to edit-method command, which allows
174
- monkeypatching methods without touching the original file
175
- * edit-method can now edit REPL-defined methods
176
- * cat --ex now works on exceptions in REPL-defined code
177
- * play -m now uses eval_string.replace()
178
- * play -m --open uses show-input to show play'd code
179
- * added "unindent" helper to make adding help to commands easier
180
- * local ./.pryrc now loaded after ~/.pryrc if it exists
181
- * cat --ex N and edit --ex N now can navigate through backtrace, where cat --ex (with no args) moves throuh successive levels of the backtrace automatically with state stored on the exceptino object itself
182
- * new option Pry.config.exception_window_size determines window size for cat --ex
183
- * input_stack now implemented - pushing objects onto a pry instance's input_stack causes the instance to read from those objects in turn as it encounters EOF on the previous object. On finishing the input_stack the input object for the pry instance is set back to Pry.config.input, if this fails, pry breaks out of the REPL (throw(:breakout)) with an error message
184
- * Pry.config.system() defines how pry runs system commands
185
- * now injecting target_self method into command scope
186
- * play now performs 'show-input' always unless eval_string contains a valid expression (i.e it's about to be eval'd)
187
- * play and hist --replay now push the current input object onto the input_stack before redirecting input to a StringIO (works much better with pry-remote now)
188
-
189
- 8/9/2011 version 0.9.5
190
-
191
- MAJOR NEW FEATURES:
192
- - JRuby support, including show-method/edit-method and editor integration on both 1.8 and 1.9 versions
193
- - extended cd syntax: cd ../@x/y
194
- - play command now works much better with _in_ array (this is a very powerful feature, esp with Pry::NAV_PROMPT)
195
- - history saving/loading is now lightning fast
196
- - 'edit' (entered by itself) now opens current lines in input buffer in an editor, and evals on exit
197
- - 'edit' command is also, in general more intelligent
198
- - ls output no longer in array format, and colors can be configured, e.g: Pry.config.ls.ivar_color = :bright_blue
199
- - new switch-to command for moving around the binding stack without exiting out of sessions
200
- - more sophisticated prompts, Pry::NAV_PROMPT to ease deep spelunking of code
201
- - major bug fix for windows systems
202
- - much better support for huge objects, should no longer hang pry (see #245)
203
- - cat --ex and edit --ex now work better
204
-
205
- complete CHANGELOG:
206
- * tempfile should end in .rb (for edit -t)
207
- * ls output should not be in array format
208
- * fix history saving (should not save all of Readline::HISTORY, but only what changed)
209
- * prevent blank lines going to Readline::HISTORY (thanks cirwin!)
210
- * ensure that cat --ex emulates the `whereami` format - includes line numbers and formatted the same, etc
211
- * fixed bug #200 ( https://github.com/pry/pry/issues/200 )- string interpolation bug (thanks to ryanf)
212
- * show-doc and stat now display method visibility (update WIKI)
213
- * got rid of warnings caused by stricter ruby 1.9.3 rules
214
- * remove interpolation of command names and fix interpolation error messag (update WIKI) (thanks ryanf!)
215
- * 'nested sessions' now use binding stacks (so each instance manages its own collection of bindings without spawning other instances)
216
- * 'cd ..' just pops a binding off the binding_stack with special behaviour when only one binding in stack - it breaks out of the repl loop
217
- * added switch-to command (like jump-to but doesnt unwind the stack)
218
- * show-method and show-doc now accept multiple method names
219
- * control_d hook added (Pry.config.control_d_handler)
220
- * behaviour of ^d is now to break out of current expr if in multi-line expr, or break out of current context if nested, or break out of pry repl loop if at top-level
221
- * can no longer interpolate command name itself e.g #{x}-#{y} where x = "show" and y = "doc"
222
- * ^C no longer captured
223
- * got rid of Pry.active_instance, Pry.last_exception and friends.
224
- * also special locals now shared among bindings in a pry instance (i.e _ex_ (and friends) re-injected into new binding entered with 'cd')
225
- * renamed inp and out to _in_ and _out_ (to avoid collisions with actual locals in debugging scope)
226
- * added third parameter to prompts, the pry instance itself (_pry) see https://github.com/pry/pry/issues/233 for why it's important
227
- * cd behaviour when no args performs the same as `cd /`
228
- * commands with keep_retval can now return nil (to suppress output now return 'void' instead)
229
- * Pry::CommandProcessor::Result introduced
230
- * Pry.view_clip() modified to be more robust and properly display Class#name
231
- * edit command when invoked with no args now works like edit -t
232
- * when edit is invoked (with no args or with -t) inside a multi-line expression input buffer, it dumps that buffer into a temp file and takes you to it
233
- * got rid of Pry#null_input? since all that was needed was eval_string.empty?
234
- * cd command now supports complex syntax: cd ../@y/y/../z
235
- * JRuby is no longer a 2nd class citizen, almost full JRuby support, passing 100% tests
236
- * added Pry::NAV_PROMPT (great new navigation prompt, per robgleeson) and Pry::SIMPLE_PRINT for simple (IRB-style) print output (just using inspect)
237
- * _pry_ now passed as 3rd parameter to :before_session hook
238
- * ls colors now configurable via Pry.config.ls.local_var_color = :bright_red etc
239
- * ls separator configurable via, e.g Pry.config.ls.separator = " "
240
- * Pry.view_clip() now only calls inspect on a few immediates, otherwise uses the #<> syntax, which has been truncated further to exclude teh mem address, again related to #245
241
-
242
- 27/7/2011 version 0.9.3
243
- * cat --ex (cats 5 lines above and below line in file where exception was raised)
244
- * edit --ex (edits line in file where exception was raised)
245
- * edit -t (opens a temporary file and evals it in current context when closed)
246
- * `pry -r` requires now happen after plugin loading (so as not to interfere with
247
- * new Pry.config.disable_auto_reload option, for turning off auto reloading by edit-method and related (thanks ryanf)
248
- * add better error messages for `cd` command
249
- * fixed exotic object regression - BasicObject.new etc now return "=> unknown"
250
- * added reload-method command (reloads the associated file of a method)
251
- * converted: import => import-set, version => pry-version, install => install-command
252
- * Pry.config.command_prefix support (thanks ryanf!)
253
- * fixed indentation for simple-prompt
254
- * hist command now excludes last line of input (the command invocation itself)
255
- * hist now has `history` alias
256
- * missing plugins no longer raise exception, just print a warning to $stderr
257
- * fixed jedit editor support
258
-
259
- 21/6/2011 version 0.9.2
260
- * fixed string interpolation bug (caused valid ruby code not to execute, sorry!)
261
- * fixed `ls` command, so it can properly display members of Object and classes, and BasicObject, etc
262
- * added a few git related commands to experimental command set, blame and diff
263
-
264
- 17/6/2011 version 0.9.0
265
- * plugin system
266
- * regex commands
267
- * show-method works on methods defined in REPL
268
- * new command system/API
269
- * rubinius core support
270
- * more backports to ruby 1.8
271
- * inp/out special locals
272
- * _ex_ backtrace navigation object (_ex_.line, _ex_.file)
273
- * readline history saving/loading
274
- * prompt stack
275
- * more hooks
276
- * amend-line
277
- * play
278
- * show-input
279
- * edit
280
- * much more comprehensive test suite
281
- * support for new and old rubygems API
282
- * changed -s behaviour of ls (now excludes Object methods)
283
- * removed eval-file, lls, lcd, and a few other commands
284
-
285
-
286
- 26/3/2011 version 0.7.6.1
287
- * added slightly better support for YARD
288
- * now @param and @return tags are colored green and markdown `code` is syntax highlighted using coderay
289
-
290
- 26/3/2011 version 0.7.6
291
- * `whereami` command now accepts parameter AROUND, to display AROUND lines on eitherside of invocation line.
292
- * made it so `whereami` is invoked even if no method exists in current context (i.e in rspec tests)
293
- * added rubinius support for `whereami` invocation in HOOKS by checking for __unknown__.rb rather than just <main>
294
-
295
- 15/3/2011 version 0.7.0
296
- * add pry-doc support with syntax highlighting for docs
297
- * add 'mj' option to ls (restrict to singleton methods)
298
- * add _ex_ local to hold last exception raised in an exception
299
-
300
- 6/3/2011 version 0.6.8
301
- * add whereami command, a la the `ir_b` gem
302
- * make whereami run at the start of every session
303
- * make .pryrc be loaded by run-time pry sessions
304
-
305
- 4/3/2011 version 0.6.7
306
- * color support
307
- * --simple-prompt for pry commandline
308
- * -I mode for pry commandline
309
- * --color mode for pry commandline
310
- * clean up requires (put them all in one place)
311
- * simple-prompt command and toggle-color commandd.
312
-
313
- 28/2/2011 version 0.6.3
314
- * Using MethodSource 0.3.4 so 1.8 show-method support provided
315
- * `Set` class added to list of classes that are inspected
316
-
317
- 26/2/2011 version 0.6.1
318
- * !@ command alias for exit_all
319
- * `cd /` for breaking out to pry top level (jump-to 0)
320
- * made `-e` option work in a more effective way for `pry` command line invocation
321
- * exit and exit-all commands now accept a parameter, this parameter becomes the return value of repl()
322
- * `command` method from CommandBase now accepts a :keep_retval arg that determines if command value is returned to pry session or just `nil` (`nil` was old behaviour)
323
- * tests for new :keep_retval and exit-all/exit behaviour; :keep_retval will remain undocumented.
324
-
325
- 22/2/2011 version 0.5.8
326
- * Added -c (context) option to show-doc, show-methods and eval-file
327
- * Fixed up ordering issue of -c and -r parameters to command line pry
328
-
329
- 21/2/2011 version 0.5.7
330
- * Added pry executable, auto-loads .pryrc in user's home directory, if it
331
- exists.
332
-
333
- 19/2/2011 version 0.5.5
334
- * Added Pry.run_command
335
- * More useful error messages
336
- * Easter eggs (game and cohen-poem)
337
-
338
- 17/2/2011 version 0.5.0
339
- * Use clipped version of Pry.view() for large objects
340
- * Exit Pry session on ^d
341
- * Use Shellwords for breaking up parameters to pry commands
342
- * Use OptionParser to parse options for default pry commands
343
- * Add version command
344
- * Refactor 'status' command: add current method info
345
- * Add meth_name_from_binding utility lambda to commands.rb
346
- * Add -M, -m, -v(erbose), -a(ll), -s(uper), -l(ocals), -i(ivars), -k(klass
347
- vars), etc options to ls
348
- * add -M(instance method) options to show-method and show-doc
349
- * add --help option to most commands
350
- * Get rid of ls_method and ls_imethods (subsumed by more powerful ls)
351
- * Get rid of show_idoc and show_imethod
352
- * Add special eval-file command that evals target file in current context
353
-
354
- 27/1/2011 version 0.4.5
355
- * fixed show_method (though fragile as it references __binding_impl__
356
- directly, making a name change to that method difficult
357
- 27/1/2011 version 0.4.4
358
- * oops, added examples/ directory
359
- 26/1/2011 version 0.4.3
360
- * added alias_command and desc methods to Pry::CommandBase
361
- * changed behaviour of ls_methods and ls_imethods to return sorted lists
362
- of methods
363
- 23/1/2011 version 0.4.1
364
- * made it so a 'def meth;end' in an object Pry session defines singleton
365
- methods, not methods on the class (except in the case of
366
- immediates)
367
- * reorganized documentation, moving customization to a separate wiki file
368
- * storing wiki in a nested git repo, as github wiki pages have their own
369
- repo
370
- * added more tests for new method definition behaviour
371
- 21/1/2011 version 0.4.0
372
- * added command API
373
- * added many new commands, i.e ls_methods and friends
374
- * modified other commands
375
- * now accepts greater customization, can modify: input, output, hooks,
376
- prompt, print object
377
- * added tab completion (even completes commands)
378
- * added extensive tests
379
- * added examples
380
- * many more changes
381
- 9/12/2010 version 0.1.3
382
- * Got rid of rubygems dependency, refactored some code.
383
- 8/12/2010 version 0.1.2
384
- * now rescuing SyntaxError as well as Racc::Parser error in valid_expression?
385
- 8/12/2010 version 0.1.0
386
- * release!
387
-
@@ -1,36 +0,0 @@
1
- 887 John Mair
2
- 232 Conrad Irwin
3
- 132 Ryan Fitzgerald
4
- 89 Rob Gleeson
5
- 51 Lee Jarvis
6
- 49 Mon ouïe
7
- 39 Jordon Bedwell
8
- 18 David Palm
9
- 13 epitron
10
- 10 Matt Carey
11
- 9 Yorick Peterse
12
- 8 Eero Saynatkari
13
- 3 Darrick Wiebe
14
- 3 fowlmouth
15
- 3 misfo
16
- 2 Ben Langfeld
17
- 2 Bram Swenson
18
- 2 Eric Christopherson
19
- 2 Erik Michaels-Ober
20
- 2 Kelsey Judson
21
- 2 Xavier Shay
22
- 2 robgleeson
23
- 1 Kirill Lashuk
24
- 1 Reginald Tan
25
- 1 Jordan Running
26
- 1 Robert Gleeson
27
- 1 Jonathan Soeder
28
- 1 Shawn Anderson
29
- 1 Sherin C
30
- 1 Tim Pope
31
- 1 Gerbert Olivé
32
- 1 Jonathan Jackson
33
- 1 Joe Peduto
34
- 1 Gosha Arinich
35
- 1 Lars Haugseth
36
- 1 Josh Cheek