aboutsummaryrefslogtreecommitdiffstats
path: root/activesupport/lib/active_support
diff options
context:
space:
mode:
authorJeremy Kemper <jeremy@bitsweat.net>2009-04-17 21:49:57 -0700
committerJeremy Kemper <jeremy@bitsweat.net>2009-04-17 21:49:57 -0700
commitbd84b820188daed991756531071137dc7e0876a0 (patch)
tree6bac8cec645f8940e792f2e83e2ba916d51234da /activesupport/lib/active_support
parent727e9dc18a7059f024b922b65951198ff0184fdd (diff)
downloadrails-bd84b820188daed991756531071137dc7e0876a0.tar.gz
rails-bd84b820188daed991756531071137dc7e0876a0.tar.bz2
rails-bd84b820188daed991756531071137dc7e0876a0.zip
Eliminate Pathname extensions
Diffstat (limited to 'activesupport/lib/active_support')
-rw-r--r--activesupport/lib/active_support/core_ext/exception.rb17
-rw-r--r--activesupport/lib/active_support/core_ext/pathname.rb5
-rw-r--r--activesupport/lib/active_support/core_ext/pathname/clean_within.rb10
3 files changed, 12 insertions, 20 deletions
diff --git a/activesupport/lib/active_support/core_ext/exception.rb b/activesupport/lib/active_support/core_ext/exception.rb
index 9564591e36..b594fbae8e 100644
--- a/activesupport/lib/active_support/core_ext/exception.rb
+++ b/activesupport/lib/active_support/core_ext/exception.rb
@@ -1,13 +1,19 @@
-require 'active_support/core_ext/pathname'
-
module ActiveSupport
FrozenObjectError = RUBY_VERSION < '1.9' ? TypeError : RuntimeError
end
# TODO: Turn all this into using the BacktraceCleaner.
class Exception # :nodoc:
+ # Clean the paths contained in the message.
+ def self.clean_paths(string)
+ require 'pathname' unless defined? Pathname
+ string.gsub(%r{[\w. ]+(/[\w. ]+)+(\.rb)?(\b|$)}) do |path|
+ Pathname.new(path).cleanpath
+ end
+ end
+
def clean_message
- Pathname.clean_within message
+ Exception.clean_paths(message)
end
TraceSubstitutions = []
@@ -16,9 +22,10 @@ class Exception # :nodoc:
def clean_backtrace
backtrace.collect do |line|
- Pathname.clean_within(TraceSubstitutions.inject(line) do |result, (regexp, sub)|
+ substituted = TraceSubstitutions.inject(line) do |result, (regexp, sub)|
result.gsub regexp, sub
- end)
+ end
+ Exception.clean_paths(substituted)
end
end
diff --git a/activesupport/lib/active_support/core_ext/pathname.rb b/activesupport/lib/active_support/core_ext/pathname.rb
deleted file mode 100644
index 04862aea45..0000000000
--- a/activesupport/lib/active_support/core_ext/pathname.rb
+++ /dev/null
@@ -1,5 +0,0 @@
-if defined? Pathname
- require 'active_support/core_ext/pathname/clean_within'
-else
- autoload :Pathname, 'active_support/core_ext/pathname/clean_within'
-end
diff --git a/activesupport/lib/active_support/core_ext/pathname/clean_within.rb b/activesupport/lib/active_support/core_ext/pathname/clean_within.rb
deleted file mode 100644
index 89690252b1..0000000000
--- a/activesupport/lib/active_support/core_ext/pathname/clean_within.rb
+++ /dev/null
@@ -1,10 +0,0 @@
-require 'pathname'
-
-class Pathname
- # Clean the paths contained in the provided string.
- def self.clean_within(string)
- string.gsub(%r{[\w. ]+(/[\w. ]+)+(\.rb)?(\b|$)}) do |path|
- new(path).cleanpath
- end
- end
-end