pry 0.14.1-java → 0.15.0-java
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +68 -2
- data/README.md +47 -30
- data/lib/pry/basic_object.rb +1 -1
- data/lib/pry/class_command.rb +2 -2
- data/lib/pry/cli.rb +6 -2
- data/lib/pry/code.rb +0 -8
- data/lib/pry/code_object.rb +2 -2
- data/lib/pry/command.rb +1 -1
- data/lib/pry/command_set.rb +2 -2
- data/lib/pry/command_state.rb +11 -6
- data/lib/pry/commands/amend_line.rb +1 -1
- data/lib/pry/commands/cd.rb +2 -0
- data/lib/pry/commands/edit.rb +2 -0
- data/lib/pry/commands/find_method.rb +1 -1
- data/lib/pry/commands/ls/config.rb +51 -0
- data/lib/pry/commands/ls/constants.rb +2 -2
- data/lib/pry/commands/ls.rb +0 -21
- data/lib/pry/commands/raise_up.rb +1 -1
- data/lib/pry/commands/ri.rb +1 -1
- data/lib/pry/commands/shell_command.rb +1 -1
- data/lib/pry/commands/shell_mode.rb +1 -0
- data/lib/pry/commands/watch_expression/expression.rb +1 -1
- data/lib/pry/commands/watch_expression.rb +4 -6
- data/lib/pry/config.rb +26 -29
- data/lib/pry/control_d_handler.rb +1 -1
- data/lib/pry/core_extensions.rb +1 -1
- data/lib/pry/editor.rb +3 -1
- data/lib/pry/exception_handler.rb +7 -2
- data/lib/pry/helpers/command_helpers.rb +1 -1
- data/lib/pry/helpers/platform.rb +1 -6
- data/lib/pry/helpers/text.rb +5 -5
- data/lib/pry/indent.rb +13 -11
- data/lib/pry/input/simple_stdio.rb +13 -0
- data/lib/pry/input_completer.rb +2 -2
- data/lib/pry/method/patcher.rb +2 -2
- data/lib/pry/method/weird_method_locator.rb +2 -2
- data/lib/pry/method.rb +4 -4
- data/lib/pry/pry_class.rb +17 -2
- data/lib/pry/pry_instance.rb +7 -45
- data/lib/pry/repl.rb +66 -4
- data/lib/pry/ring.rb +2 -2
- data/lib/pry/slop.rb +1 -1
- data/lib/pry/syntax_highlighter.rb +1 -1
- data/lib/pry/version.rb +1 -1
- data/lib/pry/warning.rb +3 -10
- data/lib/pry/wrapped_module/candidate.rb +9 -8
- data/lib/pry/wrapped_module.rb +3 -8
- data/lib/pry.rb +3 -0
- metadata +6 -7
data/lib/pry/ring.rb
CHANGED
@@ -3,7 +3,7 @@
|
|
3
3
|
class Pry
|
4
4
|
# A ring is a thread-safe fixed-capacity array to which you can only add
|
5
5
|
# elements. Older entries are overwritten as you add new elements, so that the
|
6
|
-
# ring can never contain more than `max_size`
|
6
|
+
# ring can never contain more than `max_size` elements.
|
7
7
|
#
|
8
8
|
# @example
|
9
9
|
# ring = Pry::Ring.new(3)
|
@@ -56,8 +56,8 @@ class Pry
|
|
56
56
|
# exist
|
57
57
|
def [](index)
|
58
58
|
@mutex.synchronize do
|
59
|
-
return @buffer[(count + index) % max_size] if index.is_a?(Integer)
|
60
59
|
return @buffer[index] if count <= max_size
|
60
|
+
return @buffer[(count + index) % max_size] if index.is_a?(Integer)
|
61
61
|
|
62
62
|
transpose_buffer_tail[index]
|
63
63
|
end
|
data/lib/pry/slop.rb
CHANGED
@@ -73,7 +73,7 @@ class Pry
|
|
73
73
|
# Build a Slop object from a option specification.
|
74
74
|
#
|
75
75
|
# This allows you to design your options via a simple String rather
|
76
|
-
# than
|
76
|
+
# than programmatically. Do note though that with this method, you're
|
77
77
|
# unable to pass any advanced options to the on() method when creating
|
78
78
|
# options.
|
79
79
|
#
|
data/lib/pry/version.rb
CHANGED
data/lib/pry/warning.rb
CHANGED
@@ -10,16 +10,9 @@ class Pry
|
|
10
10
|
# @param [String] message
|
11
11
|
# @return [void]
|
12
12
|
def self.warn(message)
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
lineno = location.lineno
|
17
|
-
else
|
18
|
-
# Ruby 1.9.3 support.
|
19
|
-
frame = caller[1].split(':') # rubocop:disable Performance/Caller
|
20
|
-
path = frame.first
|
21
|
-
lineno = frame[1]
|
22
|
-
end
|
13
|
+
location = caller_locations(2..2).first
|
14
|
+
path = location.path
|
15
|
+
lineno = location.lineno
|
23
16
|
|
24
17
|
Kernel.warn("#{path}:#{lineno}: warning: #{message}")
|
25
18
|
end
|
@@ -20,9 +20,9 @@ class Pry
|
|
20
20
|
|
21
21
|
# Methods to delegate to associated `Pry::WrappedModule
|
22
22
|
# instance`.
|
23
|
-
private_delegates = [
|
24
|
-
public_delegates = [
|
25
|
-
|
23
|
+
private_delegates = %i[lines_for_file method_candidates yard_docs? name]
|
24
|
+
public_delegates = %i[wrapped module? class? nonblank_name
|
25
|
+
number_of_candidates]
|
26
26
|
|
27
27
|
def_delegators :@wrapper, *public_delegates
|
28
28
|
def_private_delegators :@wrapper, *private_delegates
|
@@ -98,14 +98,15 @@ class Pry
|
|
98
98
|
# line number is one-indexed.
|
99
99
|
def first_line_of_module_definition(file, line)
|
100
100
|
searchable_lines = lines_for_file(file)[0..(line - 2)]
|
101
|
-
searchable_lines.rindex { |v|
|
101
|
+
searchable_lines.rindex { |v| module_definition_first_line?(v) } + 1
|
102
102
|
end
|
103
103
|
|
104
|
-
def
|
104
|
+
def module_definition_first_line?(line)
|
105
105
|
mod_type_string = wrapped.class.to_s.downcase
|
106
|
-
|
107
|
-
|
108
|
-
|
106
|
+
wrapped_name_last = wrapped.name.split(/::/).last
|
107
|
+
/(^|=)\s*#{mod_type_string}\s+(?:(?:\w*)::)*?#{wrapped_name_last}/ =~ line ||
|
108
|
+
/^\s*(::)?#{wrapped_name_last}\s*?=\s*?#{wrapped.class}/ =~ line ||
|
109
|
+
/^\s*(::)?#{wrapped_name_last}\.(class|instance)_eval/ =~ line
|
109
110
|
end
|
110
111
|
|
111
112
|
# This method is used by `Candidate#source_location` as a
|
data/lib/pry/wrapped_module.rb
CHANGED
@@ -246,19 +246,14 @@ class Pry
|
|
246
246
|
method_candidates.count
|
247
247
|
end
|
248
248
|
|
249
|
-
# @
|
250
|
-
# away its ability to be quick (when there are lots of monkey patches,
|
251
|
-
# like in Rails). However, it should be efficient enough on other rubies.
|
252
|
-
# @see https://github.com/jruby/jruby/issues/525
|
253
|
-
# @return [Enumerator, Array] on JRuby 1.9 and higher returns Array, on
|
254
|
-
# other rubies returns Enumerator
|
249
|
+
# @return [Array]
|
255
250
|
def candidates
|
256
251
|
enum = Enumerator.new do |y|
|
257
252
|
(0...number_of_candidates).each do |num|
|
258
253
|
y.yield candidate(num)
|
259
254
|
end
|
260
255
|
end
|
261
|
-
|
256
|
+
enum
|
262
257
|
end
|
263
258
|
|
264
259
|
# @return [Boolean] Whether YARD docs are available for this module.
|
@@ -291,7 +286,7 @@ class Pry
|
|
291
286
|
# highest rank, that is the 'monkey patch' of this module with the
|
292
287
|
# highest number of methods, which contains a source code line that
|
293
288
|
# defines the module. It is considered the 'canonical' definition
|
294
|
-
# for the module. In the
|
289
|
+
# for the module. In the absence of a suitable candidate, the
|
295
290
|
# candidate of rank 0 will be returned, or a CommandError raised if
|
296
291
|
# there are no candidates at all.
|
297
292
|
def primary_candidate
|
data/lib/pry.rb
CHANGED
@@ -34,6 +34,7 @@ require 'pry/env'
|
|
34
34
|
|
35
35
|
Pry::Commands = Pry::CommandSet.new unless defined?(Pry::Commands)
|
36
36
|
|
37
|
+
require 'pry/commands/ls/config'
|
37
38
|
require 'pry/commands/ls/jruby_hacks'
|
38
39
|
require 'pry/commands/ls/methods_helper'
|
39
40
|
require 'pry/commands/ls/interrogatable'
|
@@ -57,6 +58,8 @@ require 'pry/config/memoized_value'
|
|
57
58
|
require 'pry/config/lazy_value'
|
58
59
|
require 'pry/config'
|
59
60
|
|
61
|
+
require 'pry/input/simple_stdio'
|
62
|
+
|
60
63
|
require 'pry/pry_class'
|
61
64
|
require 'pry/pry_instance'
|
62
65
|
require 'pry/inspector'
|
metadata
CHANGED
@@ -1,17 +1,16 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: pry
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.15.0
|
5
5
|
platform: java
|
6
6
|
authors:
|
7
7
|
- John Mair (banisterfiend)
|
8
8
|
- Conrad Irwin
|
9
9
|
- Ryan Fitzgerald
|
10
10
|
- Kyrylo Silin
|
11
|
-
autorequire:
|
12
11
|
bindir: bin
|
13
12
|
cert_chain: []
|
14
|
-
date:
|
13
|
+
date: 2024-11-15 00:00:00.000000000 Z
|
15
14
|
dependencies:
|
16
15
|
- !ruby/object:Gem::Dependency
|
17
16
|
name: coderay
|
@@ -116,6 +115,7 @@ files:
|
|
116
115
|
- lib/pry/commands/jump_to.rb
|
117
116
|
- lib/pry/commands/list_inspectors.rb
|
118
117
|
- lib/pry/commands/ls.rb
|
118
|
+
- lib/pry/commands/ls/config.rb
|
119
119
|
- lib/pry/commands/ls/constants.rb
|
120
120
|
- lib/pry/commands/ls/formatter.rb
|
121
121
|
- lib/pry/commands/ls/globals.rb
|
@@ -174,6 +174,7 @@ files:
|
|
174
174
|
- lib/pry/history.rb
|
175
175
|
- lib/pry/hooks.rb
|
176
176
|
- lib/pry/indent.rb
|
177
|
+
- lib/pry/input/simple_stdio.rb
|
177
178
|
- lib/pry/input_completer.rb
|
178
179
|
- lib/pry/input_lock.rb
|
179
180
|
- lib/pry/inspector.rb
|
@@ -214,7 +215,6 @@ metadata:
|
|
214
215
|
changelog_uri: https://github.com/pry/pry/blob/master/CHANGELOG.md
|
215
216
|
source_code_uri: https://github.com/pry/pry
|
216
217
|
bug_tracker_uri: https://github.com/pry/pry/issues
|
217
|
-
post_install_message:
|
218
218
|
rdoc_options: []
|
219
219
|
require_paths:
|
220
220
|
- lib
|
@@ -222,15 +222,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
222
222
|
requirements:
|
223
223
|
- - ">="
|
224
224
|
- !ruby/object:Gem::Version
|
225
|
-
version:
|
225
|
+
version: '2.0'
|
226
226
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
227
227
|
requirements:
|
228
228
|
- - ">="
|
229
229
|
- !ruby/object:Gem::Version
|
230
230
|
version: '0'
|
231
231
|
requirements: []
|
232
|
-
rubygems_version: 3.
|
233
|
-
signing_key:
|
232
|
+
rubygems_version: 3.6.0.dev
|
234
233
|
specification_version: 4
|
235
234
|
summary: A runtime developer console and IRB alternative with powerful introspection
|
236
235
|
capabilities.
|