rib 0.9.9 → 1.0.0

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.
@@ -3,5 +3,6 @@ rvm:
3
3
  - 1.8.7
4
4
  - 1.9.2
5
5
  - 1.9.3
6
- - rbx-2.0
6
+ - rbx-18mode
7
+ - rbx-19mode
7
8
  - jruby
data/CHANGES.md CHANGED
@@ -1,4 +1,10 @@
1
- # Rib CHANGES
1
+ # CHANGES
2
+
3
+ ## Rib 1.0.0 -- 2011-11-05
4
+
5
+ ### Bugs fixes
6
+
7
+ * [more/color] Fixed a bug for displaying `1/0`. Fixed #4, thanks @bootleq
2
8
 
3
9
  ## Rib 0.9.9 -- 2011-10-26
4
10
 
data/TODO.md CHANGED
@@ -1,4 +1,4 @@
1
- # Rib TODO
1
+ # TODO
2
2
 
3
3
  * Runner tests
4
4
  * Documentation
@@ -62,18 +62,22 @@ module Rib::Color
62
62
  def get_error err, backtrace=err.backtrace
63
63
  return super if Color.disabled?
64
64
  [format_color(err, "#{err.class.to_s}: #{err.message}"),
65
- backtrace.map{ |b|
66
- path, rest = ::File.split(b)
67
- name, msgs = rest.split(':', 2)
68
- msg = msgs.sub(/(\d+):/){red{$1}+':'}.sub(/`.+?'/){green{$&}}
69
-
70
- "#{path+'/'}#{yellow{name}}:#{msg}"
71
- }]
65
+ colorize_backtrace(backtrace)]
72
66
  end
73
67
 
74
68
 
75
69
 
76
70
  module_function
71
+ def colorize_backtrace backtrace
72
+ backtrace.map{ |b|
73
+ path, msgs = b.split(':', 2)
74
+ dir , file = ::File.split(path)
75
+ msg = msgs.sub(/(\d+):/){red{$1}+':'}.sub(/`.+?'/){green{$&}}
76
+
77
+ "#{dir+'/'}#{yellow{file}}:#{msg}"
78
+ }
79
+ end
80
+
77
81
  def find_color colors, value
78
82
  (colors.sort{ |(k1, v1), (k2, v2)|
79
83
  # Class <=> Class
@@ -1,4 +1,4 @@
1
1
 
2
2
  module Rib
3
- VERSION = '0.9.9'
3
+ VERSION = '1.0.0'
4
4
  end
@@ -2,11 +2,11 @@
2
2
 
3
3
  Gem::Specification.new do |s|
4
4
  s.name = "rib"
5
- s.version = "0.9.9"
5
+ s.version = "1.0.0"
6
6
 
7
7
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
8
8
  s.authors = ["Lin Jen-Shin (godfat)"]
9
- s.date = "2011-10-26"
9
+ s.date = "2011-11-05"
10
10
  s.description = "Ruby-Interactive-ruBy -- Yet another interactive Ruby shell\n\nRib is based on the design of [ripl][] and the work of [ripl-rc][], some of\nthe features are also inspired by [pry][]. The aim of Rib is to be fully\nfeatured and yet very easy to opt-out or opt-in other features. It shall\nbe simple, lightweight and modular so that everyone could customize Rib.\n\n[ripl]: https://github.com/cldwalker/ripl\n[ripl-rc]: https://github.com/godfat/ripl-rc\n[pry]: https://github.com/pry/pry"
11
11
  s.email = ["godfat (XD) godfat.org"]
12
12
  s.executables = [
@@ -5,16 +5,14 @@ require 'rib/more/color'
5
5
  describe Rib::Color do
6
6
  behaves_like :rib
7
7
 
8
- before do
8
+ should 'give correct color' do
9
9
  @color = Class.new do
10
10
  include Rib::Color
11
11
  def colors
12
12
  @colors ||= Rib::Shell.new.before_loop.config[:color]
13
13
  end
14
14
  end.new
15
- end
16
15
 
17
- should 'give correct color' do
18
16
  @color.send(:format_color,
19
17
  [{0 => :a}, 'b', [nil, {false => Object}], {true => Exception.new}]).
20
18
  should.eq \
@@ -25,4 +23,15 @@ describe Rib::Color do
25
23
  "{\e[0m\e[35mtrue\e[0m\e[34m=>\e[0m\e[35m#<Exception: Exception>" \
26
24
  "\e[0m\e[34m}\e[0m\e[34m]\e[0m"
27
25
  end
26
+
27
+ # regression test
28
+ should "colorize errors with `/' inside" do
29
+ begin
30
+ line = __LINE__; 1/0
31
+ rescue ZeroDivisionError => e
32
+ Rib::Color.colorize_backtrace(e.backtrace).first.should.end_with? \
33
+ "test/more/#{Rib::Color.yellow{'test_color.rb'}}:" \
34
+ "#{Rib::Color.red{line}}:in #{Rib::Color.green{"`/'"}}"
35
+ end
36
+ end
28
37
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rib
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.9
4
+ version: 1.0.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2011-10-26 00:00:00.000000000Z
12
+ date: 2011-11-05 00:00:00.000000000 Z
13
13
  dependencies: []
14
14
  description: ! 'Ruby-Interactive-ruBy -- Yet another interactive Ruby shell
15
15