binding.repl 1.0.4 → 1.0.4.1
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.
- checksums.yaml +4 -4
- data/lib/binding.repl/version.rb +1 -1
- metadata +2 -7
- data/ChangeLog.txt +0 -97
- data/Gemfile +0 -22
- data/README.md +0 -140
- data/Rakefile +0 -16
- data/binding.repl.gemspec +0 -17
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 9efd8499161c382b7cac61e1e4f7e8e255e5a41c
|
|
4
|
+
data.tar.gz: 5500700763ba3b2c6528001dcafffdafdc3b0595
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: d2249eb630d7d069bd6163d00d2305c54c75d4d8c76793b205750d41625afd664c99ee346fb4e0232b6371953a33780e273004a33df4ebfe86b971f3e4a289c2
|
|
7
|
+
data.tar.gz: 08acad9f98824bed9f95d1732be4cbfd09aee7061d03c70883c850f4abc49340f5da7f872da130798a5dac2e7cdfa38ca661c1d137523df7f9ed1e166ec63823
|
data/lib/binding.repl/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: binding.repl
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.0.4
|
|
4
|
+
version: 1.0.4.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Public Domain
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2014-03-
|
|
11
|
+
date: 2014-03-24 00:00:00.000000000 Z
|
|
12
12
|
dependencies: []
|
|
13
13
|
description: binding.repl is `binding.pry` but for every ruby repl.
|
|
14
14
|
email:
|
|
@@ -17,12 +17,7 @@ executables: []
|
|
|
17
17
|
extensions: []
|
|
18
18
|
extra_rdoc_files: []
|
|
19
19
|
files:
|
|
20
|
-
- ChangeLog.txt
|
|
21
|
-
- Gemfile
|
|
22
20
|
- LEGAL.txt
|
|
23
|
-
- README.md
|
|
24
|
-
- Rakefile
|
|
25
|
-
- binding.repl.gemspec
|
|
26
21
|
- doc/disableatruntime.md
|
|
27
22
|
- doc/exit_values.md
|
|
28
23
|
- doc/runtimeoptions.md
|
data/ChangeLog.txt
DELETED
|
@@ -1,97 +0,0 @@
|
|
|
1
|
-
== v1.0.4
|
|
2
|
-
- reduce size of built .gem file from 16K to 12K by ignoring development and test files.
|
|
3
|
-
|
|
4
|
-
== v1.0.3
|
|
5
|
-
- update binding.repl.gemspec
|
|
6
|
-
- update README.md
|
|
7
|
-
- update LEGAL.txt
|
|
8
|
-
- update ChangeLog.txt
|
|
9
|
-
|
|
10
|
-
== v1.0.2
|
|
11
|
-
- update README.md
|
|
12
|
-
- rename UNLICENSE.txt as LEGAL.txt
|
|
13
|
-
- rename directory lib/binding.repl/consoles as lib/binding.repl/repls
|
|
14
|
-
|
|
15
|
-
== v1.0.1
|
|
16
|
-
- lazy call BindingRepl::ENV.auto_order instead of on require of 'binding.repl'
|
|
17
|
-
- remove file ".binding.repl.rc" from repository and rubygem
|
|
18
|
-
- remove BindingRepl::ENV.enable_rc_file?
|
|
19
|
-
|
|
20
|
-
== v1.0.0
|
|
21
|
-
- add binding.repl!. a shortcut to `binding.repl.auto` (#26)
|
|
22
|
-
- remove toml parser as a runtime dependency. (#27)
|
|
23
|
-
- reduce runtime dependencies binding.repl has from 3 to 0 (#27)
|
|
24
|
-
- remove rc file support (#25)
|
|
25
|
-
- add isolation tests that test a require of "binding.repl" does not require a repl
|
|
26
|
-
|
|
27
|
-
== v0.10.0
|
|
28
|
-
- add DELIMITER_REGEXP to BindingRepl::ENV.
|
|
29
|
-
- add BindingRepl::ExitValue
|
|
30
|
-
- binding.repl.{auto,irb,pry,rib,ripl} return an instance of BindingRepl::ExitValue.
|
|
31
|
-
- move from test-unit to minitest
|
|
32
|
-
- remove BindingRepl::ENV.disable_rc_file?
|
|
33
|
-
- update the BindingRepl::LOOKUP hash to use string's as keys. (#23)
|
|
34
|
-
- rename BindingRepl#invoke_console as BindingRepl#run_console.
|
|
35
|
-
- rename BindingRepl#fail! as BindingRepl#die().
|
|
36
|
-
- remove BindingRepl.{name,to_s}
|
|
37
|
-
|
|
38
|
-
== v0.9.0
|
|
39
|
-
- release to the public domain
|
|
40
|
-
- read $HOME/.binding.repl.rc as TOML instead of JSON
|
|
41
|
-
- rename Binding.repl.auto_load_order as Binding.repl.auto_order. (#14)
|
|
42
|
-
- rename shell environment variable BINDING_REPL_RC as disable_rc. (#15).
|
|
43
|
-
- rename shell environment variable BINDING_REPL_ORDER as auto_order. (#15)
|
|
44
|
-
- remove 'private_constant' use on LOOKUP and restore 1.9.2 support
|
|
45
|
-
- define the default lookup order for `binding.repl.auto` as ["pry", "ripl", "rib", "irb"].
|
|
46
|
-
- revamped the docs shipped in docs/
|
|
47
|
-
- add BindingRepl::ENV
|
|
48
|
-
- rename BindingRepl::RC as BindingRepl::RCFile.
|
|
49
|
-
- raise a LoadError from `binding.repl.auto` when no repls are available.
|
|
50
|
-
- add test/ (!!)
|
|
51
|
-
|
|
52
|
-
== v0.8.0
|
|
53
|
-
- add rib as a repl binding.repl supports. see https://github.com/godfat/rib
|
|
54
|
-
- add `binding.repl.rib`
|
|
55
|
-
|
|
56
|
-
== v0.7.0
|
|
57
|
-
- rescue JSON parse errors when reading .binding.repl.rc (#7)
|
|
58
|
-
- stop supporting current working directory .binding.repl.rc file
|
|
59
|
-
- set auto order through shell env var $BINDING_REPL_ORDER
|
|
60
|
-
|
|
61
|
-
== v0.6.0
|
|
62
|
-
- add Binding.repl.enable!
|
|
63
|
-
- add Binding.repl.disable!
|
|
64
|
-
|
|
65
|
-
== v0.5.1
|
|
66
|
-
- $CWD/.binding.repl.rc takes precendence over $HOME/.binding.repl.rc
|
|
67
|
-
- fix bug that broke reading the shell var $BINDING_REPL_RC
|
|
68
|
-
|
|
69
|
-
== v0.5.0.1
|
|
70
|
-
- fix typo in documentation
|
|
71
|
-
|
|
72
|
-
== v0.5.0
|
|
73
|
-
- disable {$HOME,$CWD}/.binding.repl.rc load with '$ export BINDING_REPL_RC=0'
|
|
74
|
-
|
|
75
|
-
== v0.4.1
|
|
76
|
-
- read {$HOME,$CWD}/.binding.repl.rc as JSON
|
|
77
|
-
|
|
78
|
-
== v0.4.0
|
|
79
|
-
- read {$HOME,$CWD}/.binding.ripl.rc on load
|
|
80
|
-
|
|
81
|
-
== v0.3.0
|
|
82
|
-
- add Binding.repl.add
|
|
83
|
-
- add lib/binding.repl/{pry,irb,ripl}.rb
|
|
84
|
-
- improve internals
|
|
85
|
-
|
|
86
|
-
== v0.2.0
|
|
87
|
-
- call IRB.setup() once (#4)
|
|
88
|
-
- add binding.repl.auto. auto discovers and starts the first available repl.
|
|
89
|
-
|
|
90
|
-
== v0.1.1.1
|
|
91
|
-
- docs
|
|
92
|
-
|
|
93
|
-
== v0.1.1
|
|
94
|
-
- remove top level constant "BindingMixin" by using const_set on anonymous class.
|
|
95
|
-
|
|
96
|
-
== v0.1.0
|
|
97
|
-
- release 1.
|
data/Gemfile
DELETED
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
source 'https://rubygems.org'
|
|
2
|
-
gemspec
|
|
3
|
-
|
|
4
|
-
group :development do
|
|
5
|
-
gem "rake"
|
|
6
|
-
end
|
|
7
|
-
|
|
8
|
-
group :test do
|
|
9
|
-
gem "rspec-mocks"
|
|
10
|
-
gem "minitest", require: "minitest/autorun"
|
|
11
|
-
end
|
|
12
|
-
|
|
13
|
-
group :test, :repls do
|
|
14
|
-
gem 'ripl'
|
|
15
|
-
gem 'pry'
|
|
16
|
-
gem 'rib'
|
|
17
|
-
end
|
|
18
|
-
|
|
19
|
-
platform :rbx do
|
|
20
|
-
gem "rubysl-irb"
|
|
21
|
-
gem "rubysl-mutex_m"
|
|
22
|
-
end
|
data/README.md
DELETED
|
@@ -1,140 +0,0 @@
|
|
|
1
|
-
| Project | binding.repl
|
|
2
|
-
|:----------------|:--------------------------------------------------
|
|
3
|
-
| homepage | https://github.com/robgleeson/binding.repl
|
|
4
|
-
| build | [](https://travis-ci.org/robgleeson/binding.repl)
|
|
5
|
-
|
|
6
|
-
__DESCRIPTION__
|
|
7
|
-
|
|
8
|
-
binding.repl can start a number of different ruby repls at runtime.
|
|
9
|
-
IRB, ripl, rib, and pry can be started at runtime in any scope that an
|
|
10
|
-
instance of `Binding` closes over. the interface to start pry at runtime(`binding.pry`)
|
|
11
|
-
has become known in a lot of circles and I thought it'd be cool to offer
|
|
12
|
-
the same feature to other REPLs.
|
|
13
|
-
|
|
14
|
-
credit is due to John Mair([banisterfiend](https://github.com/banister)),
|
|
15
|
-
the original author of pry, for seeing the potential in a repl that can be started at
|
|
16
|
-
runtime and bound to a `Binding` with ease.
|
|
17
|
-
|
|
18
|
-
__FEATURES__
|
|
19
|
-
|
|
20
|
-
- start the repls IRB, Pry, Ripl, or Rib at runtime
|
|
21
|
-
- easily extended to support new repls.
|
|
22
|
-
- option to auto discover and start the first available repl
|
|
23
|
-
- default auto order is configurable via shell environment variable and at runtime.
|
|
24
|
-
- it can be enabled or disabled at runtime(like pry)
|
|
25
|
-
- light and small
|
|
26
|
-
- lazy require of repls (e.g: `binding.repl.irb` requires "irb"). <br>
|
|
27
|
-
`Kernel#require` is never called more than once for a given repl.
|
|
28
|
-
- zero (gemspec) runtime dependencies.
|
|
29
|
-
- ships with a helpful [doc/](https://github.com/robgleeson/binding.repl/tree/master/doc) directory
|
|
30
|
-
|
|
31
|
-
__EXAMPLES__
|
|
32
|
-
|
|
33
|
-
_Any repl_
|
|
34
|
-
|
|
35
|
-
```ruby
|
|
36
|
-
class BlogsController < ApplicationController
|
|
37
|
-
def show
|
|
38
|
-
@blog = Blog.find(params[:id])
|
|
39
|
-
binding.repl.{pry,irb,ripl,rib}
|
|
40
|
-
end
|
|
41
|
-
end
|
|
42
|
-
```
|
|
43
|
-
|
|
44
|
-
_Auto discovery_
|
|
45
|
-
|
|
46
|
-
the first available repl can be loaded with `binding.repl.auto` or if you're in a
|
|
47
|
-
hurry `binding.repl!`. the default order is defined as `["pry", "ripl", "rib", "irb"]` but
|
|
48
|
-
it can be changed at runtime and with shell environment variables.
|
|
49
|
-
|
|
50
|
-
```ruby
|
|
51
|
-
class Foo
|
|
52
|
-
# auto discover and start the first available repl.
|
|
53
|
-
binding.repl.auto
|
|
54
|
-
|
|
55
|
-
# same as 'binding.repl.auto' but in a hurry
|
|
56
|
-
binding.repl!
|
|
57
|
-
|
|
58
|
-
# change default load order of auto (irb first, etc..)
|
|
59
|
-
BindingRepl.auto_order = ["irb", "ripl"]
|
|
60
|
-
end
|
|
61
|
-
```
|
|
62
|
-
|
|
63
|
-
__DOCS__
|
|
64
|
-
|
|
65
|
-
- SHELL ENVIRONMENT VARIABLES <br>
|
|
66
|
-
configure the default order used by `binding.repl.auto` with shell envionment variables.
|
|
67
|
-
|
|
68
|
-
see [doc/shellvariables.md](https://github.com/robgleeson/binding.repl/blob/master/doc/shellvariables.md)
|
|
69
|
-
|
|
70
|
-
- RUNTIME OPTIONS <br>
|
|
71
|
-
ripl, rib, and pry can be configured at runtime by passing a set of
|
|
72
|
-
key-value pairs but IRB isn't as straight forward to configure and I
|
|
73
|
-
haven't implemented any customization options for it yet.
|
|
74
|
-
|
|
75
|
-
see [doc/runtimeoptions.md](https://github.com/robgleeson/binding.repl/blob/master/doc/runtimeoptions.md)
|
|
76
|
-
|
|
77
|
-
- EXIT VALUES <br>
|
|
78
|
-
binding.repl and repl exit values.
|
|
79
|
-
|
|
80
|
-
see [doc/exit_values.md](https://github.com/robgleeson/binding.repl/blob/master/doc/exit_values.md)
|
|
81
|
-
|
|
82
|
-
- ENABLE/DISABLE AT RUNTIME <br>
|
|
83
|
-
binding.repl can be enabled or disabled at runtime.
|
|
84
|
-
|
|
85
|
-
see [doc/disableatruntime.md](https://github.com/robgleeson/binding.repl/blob/master/doc/disableatruntime.md)
|
|
86
|
-
|
|
87
|
-
__DEPENDENCIES__
|
|
88
|
-
|
|
89
|
-
binding.repl has 0 (gemspec) runtime dependencies. <br>
|
|
90
|
-
irb, pry, rib, and ripl can be installed manually and binding.repl will delay their require
|
|
91
|
-
until you try to start a repl at runtime(e.g: `binding.repl.irb`).
|
|
92
|
-
|
|
93
|
-
binding.repl has no load dependencies on external gems or the standard library. <br>
|
|
94
|
-
it should be light to load and prevent eager-loading of dependencies you don't use at runtime.
|
|
95
|
-
|
|
96
|
-
__MONKEY PATCHES__
|
|
97
|
-
|
|
98
|
-
monkey patches on core classes aren't always cool and if not used carefully monkey patches can be
|
|
99
|
-
bad news. binding.repl implements a few monkey patches on top of the `Binding` class to provide
|
|
100
|
-
a familiar API to the one pry adopted and because to me i can't imagine something that would be better.
|
|
101
|
-
|
|
102
|
-
all of the monkey patches are documented incase you're curious:
|
|
103
|
-
|
|
104
|
-
- `Binding.repl` (class method , returns BindingRepl class)
|
|
105
|
-
- `Binding#repl` (instance method , returns instance of BindingRepl)
|
|
106
|
-
- `Binding#repl!` (instance method , calls `BindingRepl#auto`)
|
|
107
|
-
|
|
108
|
-
__RUBIES__
|
|
109
|
-
|
|
110
|
-
all of them (jruby, MRI, rubinius). 1.9+ and up only, though.
|
|
111
|
-
check [.travis.yml](https://github.com/robgleeson/binding.repl/blob/master/.travis.yml) for a complete list.
|
|
112
|
-
|
|
113
|
-
__CONTRIBUTE!__
|
|
114
|
-
|
|
115
|
-
[fork it](https://github.com/robgleeson/binding.repl/fork), clone it, change! <br>
|
|
116
|
-
open a pull request :)
|
|
117
|
-
|
|
118
|
-
some tips for working on the project:
|
|
119
|
-
```
|
|
120
|
-
cd $CLONED_DIR
|
|
121
|
-
bundle install
|
|
122
|
-
rake test # run tests
|
|
123
|
-
```
|
|
124
|
-
|
|
125
|
-
_the isolation tests_
|
|
126
|
-
|
|
127
|
-
tests inside `test/isolation/` are meant to be run as standalone tests and are excluded
|
|
128
|
-
from a regular test run through 'rake test'. the tests inside `test/isolation/` make sure
|
|
129
|
-
a require of "binding.repl" does not attempt to require any repls. the CI service TravisCI
|
|
130
|
-
takes care of running each isolation test in its own process on every push.
|
|
131
|
-
|
|
132
|
-
__INSTALL__
|
|
133
|
-
|
|
134
|
-
```
|
|
135
|
-
gem install binding.repl
|
|
136
|
-
```
|
|
137
|
-
|
|
138
|
-
__LEGAL__
|
|
139
|
-
|
|
140
|
-
see LEGAL.txt
|
data/Rakefile
DELETED
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
require "bundler/gem_tasks"
|
|
2
|
-
require "rake/testtask"
|
|
3
|
-
|
|
4
|
-
desc "run tests"
|
|
5
|
-
task :test do
|
|
6
|
-
Dir["test/*_test.rb"].each { |test| require_relative(test) }
|
|
7
|
-
end
|
|
8
|
-
task :default => :test
|
|
9
|
-
|
|
10
|
-
desc "run the examples in examples/*.rb"
|
|
11
|
-
task :examples do
|
|
12
|
-
Dir["examples/*.rb"].each do |example|
|
|
13
|
-
sh "ruby %s" % [example]
|
|
14
|
-
puts
|
|
15
|
-
end
|
|
16
|
-
end
|
data/binding.repl.gemspec
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
require "./lib/binding.repl/version"
|
|
2
|
-
Gem::Specification.new do |spec|
|
|
3
|
-
spec.name = "binding.repl"
|
|
4
|
-
spec.version = BindingRepl.version
|
|
5
|
-
spec.authors = ["Public Domain"]
|
|
6
|
-
spec.email = ["robert@flowof.info"]
|
|
7
|
-
spec.description = "binding.repl is `binding.pry` but for every ruby repl."
|
|
8
|
-
spec.summary = spec.description
|
|
9
|
-
spec.homepage = "https://github.com/robgleeson/binding.repl"
|
|
10
|
-
spec.license = "Public Domain"
|
|
11
|
-
spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
|
|
12
|
-
spec.require_paths = ["lib"]
|
|
13
|
-
spec.required_ruby_version = ">= 1.9.2"
|
|
14
|
-
spec.files = `git ls-files`.split($/).reject { |file|
|
|
15
|
-
[".pryrc", ".travis.yml", ".gitignore"].include?(file) or file.start_with?("test/", "/test")
|
|
16
|
-
}
|
|
17
|
-
end
|