defly 0.2.0 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
data/README.md CHANGED
@@ -11,6 +11,7 @@ Just `gem install defly`.
11
11
  * Trace variable changes
12
12
  * Showing source code when NoMethodError is thrown
13
13
  * Opening a shell when a particular error occurred
14
+ * Showing the exact path of required library
14
15
 
15
16
  ## Tracing method and instance variables
16
17
 
@@ -103,6 +104,23 @@ rocket.launch
103
104
  => "Bugs invasion"
104
105
  #<Rocket:0(0)>>
105
106
 
107
+ ## Showing the require path
108
+ ```ruby
109
+ irb(main):001:0> require 'defly'
110
+ => true
111
+ irb(main):002:0> require 'shoulda', :verbose => true
112
+ shoulda cannot be required
113
+ LoadError: no such file to load -- shoulda
114
+ from /Users/eggegg/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
115
+ from /Users/eggegg/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
116
+ from /Users/eggegg/.rvm/gems/ruby-1.9.2-p290/gems/defly-0.2.0/lib/defly/require_path.rb:23:in `require'
117
+ from (irb):2
118
+ from /Users/eggegg/.rvm/rubies/ruby-1.9.2-p290/bin/irb:16:in `<main>'
119
+ irb(main):003:0> require 'rdoc', :verbose => true
120
+ Requiring /Users/eggegg/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/rdoc.rb
121
+ => true
122
+ ```
123
+
106
124
  ## Copyright
107
125
 
108
126
  Copyright (c) 2011 Andrew Liu. See LICENSE.txt for
data/Rakefile CHANGED
@@ -18,7 +18,7 @@ Jeweler::Tasks.new do |gem|
18
18
  gem.homepage = "http://github.com/eggegg/defly"
19
19
  gem.license = "MIT"
20
20
  gem.summary = %Q{Debug and trace tool for Ruby}
21
- gem.description = %Q{Trace methods and instance variables with ease!}
21
+ gem.description = %Q{Debugging and tracing utilities for Ruby}
22
22
  gem.email = "andrewliu33@gmail.com"
23
23
  gem.authors = ["Andrew Liu"]
24
24
  # dependencies defined in Gemfile
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.2.0
1
+ 0.3.0
@@ -4,14 +4,14 @@
4
4
  # -*- encoding: utf-8 -*-
5
5
 
6
6
  Gem::Specification.new do |s|
7
- s.name = %q{defly}
8
- s.version = "0.2.0"
7
+ s.name = "defly"
8
+ s.version = "0.3.0"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Andrew Liu"]
12
- s.date = %q{2011-08-26}
13
- s.description = %q{Trace methods and instance variables with ease!}
14
- s.email = %q{andrewliu33@gmail.com}
12
+ s.date = "2011-09-13"
13
+ s.description = "Debugging and tracing utilities for Ruby"
14
+ s.email = "andrewliu33@gmail.com"
15
15
  s.extra_rdoc_files = [
16
16
  "LICENSE.txt",
17
17
  "README.md"
@@ -26,17 +26,18 @@ Gem::Specification.new do |s|
26
26
  "VERSION",
27
27
  "defly.gemspec",
28
28
  "lib/defly.rb",
29
- "lib/inspectable.rb",
30
- "lib/tracable.rb",
31
- "lib/whinable.rb",
29
+ "lib/defly/inspectable.rb",
30
+ "lib/defly/require_path.rb",
31
+ "lib/defly/tracable.rb",
32
+ "lib/defly/whinable.rb",
32
33
  "test/helper.rb",
33
34
  "test/test_defly.rb"
34
35
  ]
35
- s.homepage = %q{http://github.com/eggegg/defly}
36
+ s.homepage = "http://github.com/eggegg/defly"
36
37
  s.licenses = ["MIT"]
37
38
  s.require_paths = ["lib"]
38
- s.rubygems_version = %q{1.6.2}
39
- s.summary = %q{Debug and trace tool for Ruby}
39
+ s.rubygems_version = "1.8.10"
40
+ s.summary = "Debug and trace tool for Ruby"
40
41
 
41
42
  if s.respond_to? :specification_version then
42
43
  s.specification_version = 3
@@ -1,6 +1,7 @@
1
- require 'tracable'
2
- require 'whinable'
3
- require 'inspectable'
1
+ require 'defly/tracable'
2
+ require 'defly/whinable'
3
+ require 'defly/inspectable'
4
+ require 'defly/require_path'
4
5
 
5
6
  module Defly
6
7
  end
@@ -12,4 +13,5 @@ class Class
12
13
  end
13
14
  end
14
15
 
15
- NoMethodError.send(:include, Defly::Whinable)
16
+ NoMethodError.send(:include, Defly::Whinable)
17
+ send(:include, Defly::RequirePath)
@@ -0,0 +1,26 @@
1
+ module Defly
2
+ module RequirePath
3
+ def require name, opts = {}
4
+ require_path = nil
5
+
6
+ if opts[:verbose]
7
+ $LOAD_PATH.each do |path|
8
+ full_path = File.join path, "#{name}.rb"
9
+
10
+ if File.exist? full_path
11
+ require_path = full_path
12
+ break
13
+ end
14
+ end
15
+
16
+ if require_path
17
+ puts "Requiring #{require_path}"
18
+ else
19
+ puts "#{name} cannot be required"
20
+ end
21
+ end
22
+
23
+ super name
24
+ end
25
+ end
26
+ end
File without changes
File without changes
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: defly
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.3.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,12 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2011-08-26 00:00:00.000000000 +08:00
13
- default_executable:
12
+ date: 2011-09-13 00:00:00.000000000Z
14
13
  dependencies:
15
14
  - !ruby/object:Gem::Dependency
16
15
  name: rib
17
- requirement: &2153950820 !ruby/object:Gem::Requirement
16
+ requirement: &2152562040 !ruby/object:Gem::Requirement
18
17
  none: false
19
18
  requirements:
20
19
  - - ! '>='
@@ -22,10 +21,10 @@ dependencies:
22
21
  version: '0'
23
22
  type: :runtime
24
23
  prerelease: false
25
- version_requirements: *2153950820
24
+ version_requirements: *2152562040
26
25
  - !ruby/object:Gem::Dependency
27
26
  name: shoulda
28
- requirement: &2153949880 !ruby/object:Gem::Requirement
27
+ requirement: &2152561560 !ruby/object:Gem::Requirement
29
28
  none: false
30
29
  requirements:
31
30
  - - ! '>='
@@ -33,10 +32,10 @@ dependencies:
33
32
  version: '0'
34
33
  type: :development
35
34
  prerelease: false
36
- version_requirements: *2153949880
35
+ version_requirements: *2152561560
37
36
  - !ruby/object:Gem::Dependency
38
37
  name: bundler
39
- requirement: &2153948960 !ruby/object:Gem::Requirement
38
+ requirement: &2152561080 !ruby/object:Gem::Requirement
40
39
  none: false
41
40
  requirements:
42
41
  - - ~>
@@ -44,10 +43,10 @@ dependencies:
44
43
  version: 1.0.0
45
44
  type: :development
46
45
  prerelease: false
47
- version_requirements: *2153948960
46
+ version_requirements: *2152561080
48
47
  - !ruby/object:Gem::Dependency
49
48
  name: jeweler
50
- requirement: &2153947960 !ruby/object:Gem::Requirement
49
+ requirement: &2152560600 !ruby/object:Gem::Requirement
51
50
  none: false
52
51
  requirements:
53
52
  - - ~>
@@ -55,10 +54,10 @@ dependencies:
55
54
  version: 1.6.4
56
55
  type: :development
57
56
  prerelease: false
58
- version_requirements: *2153947960
57
+ version_requirements: *2152560600
59
58
  - !ruby/object:Gem::Dependency
60
59
  name: rcov
61
- requirement: &2153946880 !ruby/object:Gem::Requirement
60
+ requirement: &2152576480 !ruby/object:Gem::Requirement
62
61
  none: false
63
62
  requirements:
64
63
  - - ! '>='
@@ -66,8 +65,8 @@ dependencies:
66
65
  version: '0'
67
66
  type: :development
68
67
  prerelease: false
69
- version_requirements: *2153946880
70
- description: Trace methods and instance variables with ease!
68
+ version_requirements: *2152576480
69
+ description: Debugging and tracing utilities for Ruby
71
70
  email: andrewliu33@gmail.com
72
71
  executables: []
73
72
  extensions: []
@@ -84,12 +83,12 @@ files:
84
83
  - VERSION
85
84
  - defly.gemspec
86
85
  - lib/defly.rb
87
- - lib/inspectable.rb
88
- - lib/tracable.rb
89
- - lib/whinable.rb
86
+ - lib/defly/inspectable.rb
87
+ - lib/defly/require_path.rb
88
+ - lib/defly/tracable.rb
89
+ - lib/defly/whinable.rb
90
90
  - test/helper.rb
91
91
  - test/test_defly.rb
92
- has_rdoc: true
93
92
  homepage: http://github.com/eggegg/defly
94
93
  licenses:
95
94
  - MIT
@@ -105,7 +104,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
105
104
  version: '0'
106
105
  segments:
107
106
  - 0
108
- hash: -1635137758272325934
107
+ hash: 2781134025386586384
109
108
  required_rubygems_version: !ruby/object:Gem::Requirement
110
109
  none: false
111
110
  requirements:
@@ -114,7 +113,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
114
113
  version: '0'
115
114
  requirements: []
116
115
  rubyforge_project:
117
- rubygems_version: 1.6.2
116
+ rubygems_version: 1.8.10
118
117
  signing_key:
119
118
  specification_version: 3
120
119
  summary: Debug and trace tool for Ruby