hobo_support 2.0.0.pre10 → 2.0.0
Sign up to get free protection for your applications and to get access to all the features.
- data/VERSION +1 -1
- data/hobo_support.gemspec +0 -1
- data/lib/hobo_support.rb +0 -1
- data/lib/hobo_support/methodcall.rb +3 -1
- data/test/hobosupport.rdoctest +11 -1
- metadata +3 -21
- data/lib/hobo_support/fixes/chronic.rb +0 -21
- data/test/hobosupport/chronic.rdoctest +0 -19
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
2.0.0
|
1
|
+
2.0.0
|
data/hobo_support.gemspec
CHANGED
data/lib/hobo_support.rb
CHANGED
@@ -16,7 +16,7 @@ module HoboSupport
|
|
16
16
|
CallIfAvailable.new(this)
|
17
17
|
else
|
18
18
|
# activesupport 2.3 style try
|
19
|
-
this.send(*args, &block)
|
19
|
+
this.send(:active_support_try, *args, &block)
|
20
20
|
end
|
21
21
|
end
|
22
22
|
|
@@ -46,6 +46,8 @@ class Object
|
|
46
46
|
self
|
47
47
|
end
|
48
48
|
|
49
|
+
alias_method :active_support_try, :try
|
50
|
+
|
49
51
|
def try(*args, &block)
|
50
52
|
HoboSupport.hobo_try(self, *args, &block)
|
51
53
|
end
|
data/test/hobosupport.rdoctest
CHANGED
@@ -10,7 +10,6 @@ HoboSupport is a mixed bag of core ruby extensions that have been extracted from
|
|
10
10
|
|
11
11
|
## Contents
|
12
12
|
|
13
|
-
* [Chronic](/manual/hobo_support/chronic)
|
14
13
|
* [Enumerable](/manual/hobo_support/enumerable)
|
15
14
|
* [Hash](/manual/hobo_support/hash)
|
16
15
|
* [Implies](/manual/hobo_support/implies)
|
@@ -75,3 +74,14 @@ may use `try` to call a Rails 2.3 function that doesn't exist on Rails
|
|
75
74
|
=> 0
|
76
75
|
>> nil._?.to_i
|
77
76
|
=> nil
|
77
|
+
|
78
|
+
### ActiveSupport's try
|
79
|
+
|
80
|
+
`try` and `_?` were added to HoboSupport before `try` was added to ActiveSupport. Unfortunately, the try in ActiveSupport is different. It behaves in a fashion similar to HoboSupport's `_?`, but has a different signature:
|
81
|
+
|
82
|
+
>> nil.try(:foo)
|
83
|
+
=> nil
|
84
|
+
>> nil.try {|p| "(not available"}
|
85
|
+
>> "(not available)"
|
86
|
+
>> "foo".try(:reverse)
|
87
|
+
>> "oof"
|
metadata
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: hobo_support
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0.0
|
5
|
-
prerelease:
|
4
|
+
version: 2.0.0
|
5
|
+
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
8
|
- Tom Locke
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2013-02-
|
12
|
+
date: 2013-02-27 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rails
|
@@ -43,22 +43,6 @@ dependencies:
|
|
43
43
|
- - ! '>='
|
44
44
|
- !ruby/object:Gem::Version
|
45
45
|
version: '0'
|
46
|
-
- !ruby/object:Gem::Dependency
|
47
|
-
name: chronic
|
48
|
-
requirement: !ruby/object:Gem::Requirement
|
49
|
-
none: false
|
50
|
-
requirements:
|
51
|
-
- - ! '>='
|
52
|
-
- !ruby/object:Gem::Version
|
53
|
-
version: '0'
|
54
|
-
type: :development
|
55
|
-
prerelease: false
|
56
|
-
version_requirements: !ruby/object:Gem::Requirement
|
57
|
-
none: false
|
58
|
-
requirements:
|
59
|
-
- - ! '>='
|
60
|
-
- !ruby/object:Gem::Version
|
61
|
-
version: '0'
|
62
46
|
description: Core Ruby extensions from the Hobo project
|
63
47
|
email: tom@tomlocke.com
|
64
48
|
executables: []
|
@@ -87,7 +71,6 @@ files:
|
|
87
71
|
- lib/hobo_support/command.rb
|
88
72
|
- lib/hobo_support/common_tasks.rb
|
89
73
|
- lib/hobo_support/enumerable.rb
|
90
|
-
- lib/hobo_support/fixes/chronic.rb
|
91
74
|
- lib/hobo_support/fixes/module.rb
|
92
75
|
- lib/hobo_support/fixes/pp.rb
|
93
76
|
- lib/hobo_support/hash.rb
|
@@ -100,7 +83,6 @@ files:
|
|
100
83
|
- lib/hobo_support/string.rb
|
101
84
|
- lib/hobo_support/xss.rb
|
102
85
|
- test/hobosupport.rdoctest
|
103
|
-
- test/hobosupport/chronic.rdoctest
|
104
86
|
- test/hobosupport/enumerable.rdoctest
|
105
87
|
- test/hobosupport/hash.rdoctest
|
106
88
|
- test/hobosupport/implies.rdoctest
|
@@ -1,21 +0,0 @@
|
|
1
|
-
# --- Fix Chronic - can't parse '12th Jan' --- #
|
2
|
-
begin
|
3
|
-
require 'chronic'
|
4
|
-
|
5
|
-
module Chronic
|
6
|
-
|
7
|
-
class << self
|
8
|
-
def parse_with_hobo_fix(s, *options)
|
9
|
-
if s =~ /^\s*\d+\s*(st|nd|rd|th)\s+[a-zA-Z]+(\s+\d+)?\s*$/
|
10
|
-
s = s.sub(/\s*\d+(st|nd|rd|th)/) {|s| s[0..-3]}
|
11
|
-
end
|
12
|
-
|
13
|
-
# Chronic can't parse '1/1/2008 1:00' or '1/1/2008 1:00 PM',
|
14
|
-
# so convert them to '1/1/2008 @ 1:00' and '1/1/2008 @ 1:00 PM'
|
15
|
-
s = s.sub(/^\s*(\d+\/\d+\/\d+)\s+(\d+:\d+.*)/, '\1 @ \2')
|
16
|
-
parse_without_hobo_fix(s, *options)
|
17
|
-
end
|
18
|
-
alias_method_chain :parse, :hobo_fix
|
19
|
-
end
|
20
|
-
end
|
21
|
-
rescue LoadError; end
|
@@ -1,19 +0,0 @@
|
|
1
|
-
# HoboSupport - Chronic extensions
|
2
|
-
|
3
|
-
doctest_require: '../../lib/hobo_support'
|
4
|
-
doctest_require: 'chronic'
|
5
|
-
{.hidden}
|
6
|
-
|
7
|
-
## `Chronic.parse`
|
8
|
-
|
9
|
-
Chronic.parse can't parse 'M/D/Y H:S', so convert it to 'M/D/Y @ H:S'.
|
10
|
-
|
11
|
-
>> Chronic.parse('1/1/2008 1:00') == Chronic.parse('1/1/2008 @ 1:00')
|
12
|
-
|
13
|
-
=> true
|
14
|
-
|
15
|
-
Chronic.parse takes additional options (see Chronic.parse).
|
16
|
-
|
17
|
-
>> Chronic.parse('today', :guess => false).instance_of? Chronic::Span
|
18
|
-
|
19
|
-
=> true
|