pry-nav 0.0.4 → 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
data/CHANGELOG.md CHANGED
@@ -1,3 +1,9 @@
1
+ ## 0.1.0 (2012-02-02)
2
+
3
+ * MRI 1.8.7 support
4
+ * Upgrade to Pry 0.9.8
5
+
6
+
1
7
  ## 0.0.4 (2011-12-03)
2
8
 
3
9
  * Performance improvement, primarily for 1.9.2: Don't trace unless in a file
data/lib/pry-nav.rb CHANGED
@@ -7,7 +7,7 @@ require 'pry-nav/tracer'
7
7
  require 'pry-nav/pry_remote_ext' if defined? PryRemote
8
8
 
9
9
  module PryNav
10
- TRACE_IGNORE_FILES = Dir[File.join(File.dirname(__FILE__), '**', '*.rb')]
10
+ TRACE_IGNORE_FILES = Dir[File.join(File.dirname(__FILE__), '**', '*.rb')].map { |f| File.expand_path(f) }
11
11
 
12
12
  extend self
13
13
 
@@ -2,17 +2,17 @@ require 'pry'
2
2
 
3
3
  module PryNav
4
4
  Commands = Pry::CommandSet.new do
5
- command 'step', 'Step execution into the next line or method.' do |steps|
5
+ block_command 'step', 'Step execution into the next line or method.' do |steps|
6
6
  check_file_context
7
7
  breakout_navigation :step, steps
8
8
  end
9
9
 
10
- command 'next', 'Execute the next line within the same stack frame.' do |lines|
10
+ block_command 'next', 'Execute the next line within the same stack frame.' do |lines|
11
11
  check_file_context
12
12
  breakout_navigation :next, lines
13
13
  end
14
14
 
15
- command 'continue', 'Continue program execution and end the Pry session.' do
15
+ block_command 'continue', 'Continue program execution and end the Pry session.' do
16
16
  check_file_context
17
17
  run 'exit-all'
18
18
  end
@@ -25,8 +25,8 @@ module PryNav
25
25
  def breakout_navigation(action, times)
26
26
  _pry_.binding_stack.clear # Clear the binding stack.
27
27
  throw :breakout_nav, { # Break out of the REPL loop and
28
- action: action, # signal the tracer.
29
- times: times
28
+ :action => action, # signal the tracer.
29
+ :times => times
30
30
  }
31
31
  end
32
32
 
@@ -7,7 +7,7 @@ class << Pry
7
7
  def start(target = TOPLEVEL_BINDING, options = {})
8
8
  old_options = options.reject { |k, _| k == :pry_remote }
9
9
 
10
- if PryNav.check_file_context(target)
10
+ if target.is_a?(Binding) && PryNav.check_file_context(target)
11
11
  # Wrap the tracer around the usual Pry.start
12
12
  PryNav::Tracer.new(options).run do
13
13
  start_existing(target, old_options)
@@ -90,7 +90,7 @@ end
90
90
  # Ensure cleanup when a program finishes without another break. For example,
91
91
  # 'next' on the last line of a program never hits the tracer proc, and thus
92
92
  # PryNav::Tracer#run doesn't have a chance to cleanup.
93
- END {
93
+ at_exit do
94
94
  set_trace_func nil
95
95
  PryRemote::Server.stop
96
- }
96
+ end
@@ -11,9 +11,9 @@ module PryNav
11
11
 
12
12
  def run(&block)
13
13
  # For performance, disable any tracers while in the console.
14
- # Unfortunately, only works in >= 1.9.3 because of
15
- # http://redmine.ruby-lang.org/issues/3921
16
- stop if RUBY_VERSION >= '1.9.3'
14
+ # Unfortunately doesn't work in 1.9.2 because of
15
+ # http://redmine.ruby-lang.org/issues/3921. Works fine in 1.8.7 and 1.9.3.
16
+ stop unless RUBY_VERSION == '1.9.2'
17
17
 
18
18
  return_value = nil
19
19
  command = catch(:breakout_nav) do # Coordinates with PryNav::Commands
@@ -25,7 +25,7 @@ module PryNav
25
25
  if process_command(command)
26
26
  start
27
27
  else
28
- stop unless RUBY_VERSION >= '1.9.3'
28
+ stop if RUBY_VERSION == '1.9.2'
29
29
  PryRemote::Server.stop if @pry_start_options[:pry_remote]
30
30
  end
31
31
 
@@ -1,3 +1,3 @@
1
1
  module PryNav
2
- VERSION = '0.0.4'
2
+ VERSION = '0.1.0'
3
3
  end
data/pry-nav.gemspec CHANGED
@@ -18,6 +18,6 @@ Gem::Specification.new do |gem|
18
18
  gem.require_paths = ["lib"]
19
19
 
20
20
  # Dependencies
21
- gem.required_ruby_version = '>= 1.9.2'
22
- gem.add_runtime_dependency 'pry', '~> 0.9.7.4'
21
+ gem.required_ruby_version = '>= 1.8.7'
22
+ gem.add_runtime_dependency 'pry', '~> 0.9.8.1'
23
23
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pry-nav
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.4
4
+ version: 0.1.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,19 +9,19 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2011-12-03 00:00:00.000000000Z
12
+ date: 2012-02-03 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: pry
16
- requirement: &70226772578740 !ruby/object:Gem::Requirement
16
+ requirement: &70283139020540 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ~>
20
20
  - !ruby/object:Gem::Version
21
- version: 0.9.7.4
21
+ version: 0.9.8.1
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *70226772578740
24
+ version_requirements: *70283139020540
25
25
  description: Turn Pry into a primitive debugger. Adds 'step' and 'next' commands to
26
26
  control execution.
27
27
  email: nixme@stillhope.com
@@ -54,7 +54,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
54
54
  requirements:
55
55
  - - ! '>='
56
56
  - !ruby/object:Gem::Version
57
- version: 1.9.2
57
+ version: 1.8.7
58
58
  required_rubygems_version: !ruby/object:Gem::Requirement
59
59
  none: false
60
60
  requirements:
@@ -63,8 +63,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
63
63
  version: '0'
64
64
  requirements: []
65
65
  rubyforge_project:
66
- rubygems_version: 1.8.10
66
+ rubygems_version: 1.8.11
67
67
  signing_key:
68
68
  specification_version: 3
69
69
  summary: Simple execution navigation for Pry.
70
70
  test_files: []
71
+ has_rdoc: