Project

pry-nav

1.2
Low commit activity in last 3 years
There's a lot of open issues
No release in over a year
Turn Pry into a primitive debugger. Adds 'step' and 'next' commands to control execution.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
 Project Readme

Using MRI? We recommend pry-byebug instead!

pry-nav

A simple execution control add-on for Pry.

Compatible with MRI >= 1.8.7, JRuby >= 9.1.3.0.

Teaches Pry about step, next, and continue to create a simple debugger.

To use, invoke pry normally:

def some_method
  binding.pry          # Execution will stop here.
  puts 'Hello, World!' # Run 'step' or 'next' in the console to move here.
end

When using JRuby, you also need to run it with the --debug flag. You can also add the flag to your JRUBY_OPTS environment variable for it to apply when running any ruby command, but do note that even when not making use of pry this has a big impact on JRuby performance.

pry-nav is not yet thread-safe, so only use in single-threaded environments.

Rudimentary support for pry-remote (>= 0.1.1) is also included. Ensure pry-remote is loaded or required before pry-nav. For example, in a Gemfile:

gem 'pry'
gem 'pry-remote'
gem 'pry-nav'

Stepping through code often? Add the following shortcuts to ~/.pryrc:

Pry.commands.alias_command 'c', 'continue'
Pry.commands.alias_command 's', 'step'
Pry.commands.alias_command 'n', 'next'

Please note that debugging functionality is implemented through set_trace_func, which imposes a large performance penalty.

Contributors

Patches and bug reports are welcome. Just send a pull request or file an issue. Project changelog.

Acknowledgments