Active 0.0.18 → 0.0.21

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,11 +1,13 @@
1
+ require 'rubygems'
2
+ require 'nokogiri'
3
+ require 'open-uri'
4
+
1
5
  module Active
2
6
  module Services
3
7
 
4
8
  class ActiveWorksError < StandardError; end
5
9
 
6
10
  class ActiveWorks < IActivity
7
- require 'nokogiri'
8
- require 'open-uri'
9
11
 
10
12
  attr_accessor :asset_type_id
11
13
 
@@ -136,9 +136,8 @@ module Active
136
136
  # end
137
137
 
138
138
  end
139
- # if address is incomplete we will load data from the primary data source
140
- # if the primary data source is unknow (ex asset_type_id is unknow ) we will return the GSA address.
141
- # ?
139
+
140
+ # returns the best address possible from the data returned by the GSA
142
141
  def address
143
142
  # returned_address = validated_address({})
144
143
  # returned_address = @primary.address unless (@primary.nil? || @primary.address.nil?)
@@ -147,10 +146,8 @@ module Active
147
146
  returned_address = @gsa.address
148
147
  if @gsa.address[:address] != nil #and returned_address.city and returned_address.state and returned_address.country
149
148
  return returned_address
150
- else
151
- if load_master
152
- return @gsa.address
153
- end
149
+ else
150
+ return @gsa.address if load_master
154
151
  end
155
152
  # returned_address = @address if @address
156
153
  #
@@ -169,6 +166,16 @@ module Active
169
166
  # end
170
167
  # end
171
168
  #
169
+ return returned_address
170
+ end
171
+ # returns the best address possible by loading other data sources
172
+ # 2. if the primary data source is unknow (ex asset_type_id is unknow ) we will return the GSA address.
173
+ # 3. if no address but we have lat/lng we'll do a reverse look up
174
+ def _address
175
+ if Validators.full_address(@gsa.address)
176
+ return @gsa.address
177
+ end
178
+ # 3. MOVE TO A PRIVATE METHOD OR A NEW CLASS
172
179
  # if (returned_address["lat"]=="")
173
180
  # #geocode
174
181
  # geocode_url=""
@@ -193,9 +200,7 @@ module Active
193
200
  # end
194
201
  #
195
202
  # end
196
- # end
197
-
198
- return returned_address
203
+ # end
199
204
  end
200
205
 
201
206
  def start_date
data/lib/services/gsa.rb CHANGED
@@ -61,12 +61,12 @@ module Active
61
61
  def address
62
62
  @address = HashWithIndifferentAccess.new({
63
63
  :name => @data["meta"]["location"],
64
- :address => @data["meta"]["eventAddress"],
65
64
  :city => @data["meta"]["city"],
66
65
  :lat => @data["meta"]["latitude"],
67
66
  :lng => @data["meta"]["longitude"],
68
67
  :country => @data["meta"]["country"]
69
68
  })
69
+ @address[:address] = @data["meta"]["eventAddress"] || @data["meta"]["location"] || nil
70
70
  @address[:state] = @data["meta"]["eventState"] || @data["meta"]["state"]
71
71
  @address[:zip] = @data["meta"]["eventZip"] || @data["meta"]["zip"]
72
72
  @address
@@ -74,7 +74,9 @@ module Active
74
74
 
75
75
  def start_date
76
76
  if @data.has_key?("meta") and @data["meta"].has_key?("eventDate")
77
- DateTime.parse @data["meta"]["eventDate"]
77
+ DateTime.parse( @data["meta"]["eventDate"] )
78
+ elsif @data.has_key?("meta") and @data["meta"].has_key?("startDate")
79
+ DateTime.parse( @data["meta"]["startDate"] )
78
80
  else
79
81
  nil
80
82
  end
@@ -244,8 +244,6 @@ module Active
244
244
  Active.CACHE.set( Digest::MD5.hexdigest(end_point), self) if Active.CACHE
245
245
  rescue Exception => e
246
246
  end
247
-
248
-
249
247
 
250
248
  rescue JSON::ParserError => e
251
249
  raise RuntimeError, "JSON::ParserError json=#{res.body}"
@@ -1,7 +1,29 @@
1
1
  module Active
2
2
  module Services
3
3
  class Validators
4
-
4
+
5
+ def self.full_address address
6
+
7
+ end
8
+
9
+ # return true or false
10
+ # very short check for 5 consecutive digits, no leading or trailing whitespace.
11
+ def self.zip(arg)
12
+ # arg ~= /\be(\w*)s\b/
13
+ end
14
+
15
+ def self.state
16
+ true
17
+ end
18
+
19
+ def self.city
20
+ false
21
+ end
22
+
23
+ def self.address
24
+ false
25
+ end
26
+
5
27
  STATES = [
6
28
  [ "Alabama", "AL" ],
7
29
  [ "Alaska", "AK" ],
@@ -76,7 +98,8 @@ module Active
76
98
  return nil
77
99
  end
78
100
 
79
- # clean zip
101
+ # NO MODIFYING IN A VALIDATION CLASS
102
+ # !! clean zip
80
103
  # (http://geekswithblogs.net/MainaD/archive/2007/12/03/117321.aspx)
81
104
  def self.valid_zip(zip)
82
105
  if zip!="00000" && zip.to_s.strip=~/(^\d{5}(-\d{4})?$)|(^[ABCEGHJKLMNPRSTVXY]{1}\d{1}[A-Z]{1} *\d{1}[A-Z]{1}\d{1}$)/
@@ -99,6 +99,18 @@ describe Activity do
99
99
  g.address[:lat].should eql("33.2000368")
100
100
  g.address[:lng].should eql("-117.2425355")
101
101
  end
102
+ it "should have an address from this hash with null name and address" do
103
+ g = Activity.new(GSA.new(JSON.parse('{"escapedUrl":"http://www.active.com/cycling/san-francisco-ca/california-wine-country-bike-tours-in-october-2010","language":"en","title":"2010 California Wine Country Bike Tours in October | San \u003cb\u003e...\u003c/b\u003e","url":"http://www.active.com/cycling/san-francisco-ca/california-wine-country-bike-tours-in-october-2010","summary":"","meta":{"startDate":"2010-10-10","eventDate":"2010-10-10T00:00:00-07:00","state":"California","endDate":"2010-10-22","eventLongitude":"-122.4200000","lastModifiedDateTime":"2010-08-26 02:15:54.36","splitMediaType":"Event","endTime":"0:00:00","mediaType":"Event","city":"San Francisco","google-site-verification":"","estParticipants":"2000","startTime":"0:00:00","assetId":["81A4A089-CAB5-4293-BFBF-87C74A1C6370","81a4a089-cab5-4293-bfbf-87c74a1c6370"],"eventId":"1889827","participationCriteria":"All","description":"","longitude":"-122.4200000","onlineDonationAvailable":"0","substitutionUrl":"1889827","assetName":["2010 California Wine Country Bike Tours in October","2010 California Wine Country Bike Tours in October"],"eventURL":"http://www.trektravel.com/contentpage.cfm?ID\u003d703","zip":"94101","contactPhone":"866-464-8735","eventLatitude":"37.7800000","eventState":"California","sortDate":"2000-10-10","keywords":"Event","onlineMembershipAvailable":"0","dma":"San Francisco - Oakland - San Jose","trackbackurl":"http://www.active.com/cycling/san-francisco-ca/california-wine-country-bike-tours-in-october-2010","seourl":"http://www.active.com/cycling/san-francisco-ca/california-wine-country-bike-tours-in-october-2010","country":"United States","onlineRegistrationAvailable":"0","category":"Activities","market":"San Francisco - Oakland - San Jose","assetTypeId":"EA4E860A-9DCD-4DAA-A7CA-4A77AD194F65","lastModifiedDate":"2010-08-26","eventZip":"94101","UpdateDateTime":"8/18/2010 10:16:26 AM","latitude":"37.7800000","channel":"Cycling"}}')))
104
+ g.address[:name].should_not be_nil
105
+ g.address[:address].should_not be_nil
106
+ g.address[:city].should eql("San Francisco")
107
+ g.address[:state].should eql("California")
108
+ g.address[:zip].should eql("94101")
109
+ g.address[:country].should eql("United States")
110
+ g.address[:lat].should eql("37.7800000")
111
+ g.address[:lng].should eql("-122.4200000")
112
+ end
113
+
102
114
  # TODO FIND OUT WHERE THIS DATA COMES FROM AND GET IT WORKING
103
115
  # it "should have a partial address that it's full data doesn't live in WORKS or REGCENTER" do
104
116
  # g = Activity.new(GSA.new(JSON.parse('{"language":"en", "title":"Zumba Punch Card (Adult) - Oct. (5) | Vista, CA, 92084 |", "url":"http://www.active.com/community-services-class/vista-ca/zumba-punch-card-adult-oct-5-2010", "escapedUrl":"http://www.active.com/community-services-class/vista-ca/zumba-punch-card-adult-oct-5-2010", "meta":{"city":"Vista", "assetId":"3ae995d9-5c16-4176-b44e-fa0577644ca4", "substitutionUrl":"vistarecreation/registrationmain.sdi?source=showAsset.sdi&activity_id=4900", "trackbackurl":"http://www.active.com/community-services-class/vista-ca/zumba-punch-card-adult-oct-5-2010", "onlineRegistrationAvailable":"false", "zip":"92084", "sortDate":"2000-10-02", "category":"Activities", "latitude":"33.2000368", "dma":"San Diego", "lastModifiedDate":"2010-09-29", "tags":"2348.321", "lastModifiedDateTime":"2010-09-29 16:46:43.33", "country":"United States of America", "startDate":"2010-10-02", "assetName":"Zumba Punch Card (Adult) - Oct. (5)", "summary":"People of all ages are falling in love with Zumba, one of the fastest growing dance-based fitness crazes in the country. With Zumbas easy-to-follow dance moves you receive body beautifying benefits while enjoying Latin rhythms including Salsa, Meringue, Cumbia, Reggaeton, even belly dance and hip-hop. Zumba is ", "description":"", "seourl":"http://www.active.com/community-services-class/vista-ca/zumba-punch-card-adult-oct-5-2010", "channel":"Community Services", "splitMediaType":"Class", "mediaType":"Class", "longitude":"-117.2425355", "UpdateDateTime":"8/20/2008 9:03:50 AM", "assetTypeId":"FB27C928-54DB-4ECD-B42F-482FC3C8681F", "state":"California", "keywords":""}, "summary":""}')))
data/spec/gsa_spec.rb CHANGED
@@ -52,6 +52,11 @@ describe GSA do
52
52
  @a.start_time.should_not be_nil
53
53
  @a.start_time.should be_an_instance_of(DateTime)
54
54
  end
55
+ it "should have a valid start date when data has meta.startDate" do
56
+ g = GSA.new(JSON.parse('{"escapedUrl":"http://www.active.com/community-services-class/belmont-ca/modern-teen-adult-2010","language":"en","title":"Modern - Teen Adult | Belmont, CA, 94002 |","url":"http://www.active.com/community-services-class/belmont-ca/modern-teen-adult-2010","summary":"active espn. Active Home | Directory | Community | eteamz | Results | Support |\u003cbr\u003e Event Directors \u0026amp; Organizers. Active.com. New beta search! \u003cb\u003e...\u003c/b\u003e ","meta":{"summary":"Barefoot dance with emphasis on floor work, release technique, and partnering. Emotion and story line are core elements in this class. Attire is loose fitting clothing any style or color.","startDate":"2010-11-03","tag":"class:10","state":"California","splitMediaType":"Class","lastModifiedDateTime":"2010-09-08 16:32:50.49","mediaType":"Class","city":"Belmont","assetId":"b06cbfb8-ff63-488c-92c6-d060680cc208","description":"","longitude":"-122.2758","substitutionUrl":"belmontparksandrecreation/registrationmain.sdi?source\u003dshowAsset.sdi\u0026activity_id\u003d3722","tags":"1510.306","assetName":"Modern - Teen Adult","zip":"94002","sortDate":"2000-11-03","keywords":"","dma":"San Francisco - Oakland - San Jose","trackbackurl":"http://www.active.com/community-services-class/belmont-ca/modern-teen-adult-2010","seourl":"http://www.active.com/community-services-class/belmont-ca/modern-teen-adult-2010","country":"United States of America","onlineRegistrationAvailable":"true","category":"Activities","assetTypeId":"FB27C928-54DB-4ECD-B42F-482FC3C8681F","lastModifiedDate":"2010-09-08","UpdateDateTime":"8/20/2008 9:03:50 AM","latitude":"37.52021","channel":"Community Services"}}'))
57
+ g.start_time.should_not be_nil
58
+ g.start_time.should eql(DateTime.parse("Wed, 03 Nov 2010 00:00:00"))
59
+ end
55
60
  it "should have nil is no date" do
56
61
  g = GSA.new(JSON.parse('{"title":"Calabasas Classic 2010 - 5k \u003cb\u003e10k\u003c/b\u003e Runs | Calabasas, California 91302 \u003cb\u003e...\u003c/b\u003e"}'))
57
62
  g.start_time.should be_nil
@@ -119,5 +124,42 @@ describe GSA do
119
124
  g.address[:lat].should eql("33.2000368")
120
125
  g.address[:lng].should eql("-117.2425355")
121
126
  end
122
-
127
+ it "should have a address.address" do
128
+ g = GSA.new(JSON.parse('{"escapedUrl":"http://www.active.com/cycling/san-francisco-ca/seismic-challenge-30-2010","language":"en","title":"Seismic Challenge 3.0 | San Francisco, California 94101 \u003cb\u003e...\u003c/b\u003e","url":"http://www.active.com/cycling/san-francisco-ca/seismic-challenge-30-2010","summary":"","meta":{"startDate":"2010-10-02","eventDate":"2010-10-02T00:00:00-07:00","location":"San Francisco Bay","tag":"event:10","state":"California","eventLongitude":"-122.42","endDate":"2010-10-03","lastModifiedDateTime":"2010-10-04 03:08:51.65","splitMediaType":"Event","locationName":"San Francisco Bay","endTime":"0:00:00","mediaType":"Event","city":"San Francisco","google-site-verification":"","estParticipants":"2000","startTime":"0:00:00","assetId":["35A99FCB-E238-4D78-9205-96179F827CB0","35a99fcb-e238-4d78-9205-96179f827cb0"],"eventId":"1883181","participationCriteria":"All","description":"","longitude":"-122.42","onlineDonationAvailable":"0","substitutionUrl":"1883181","assetName":["Seismic Challenge 3.0","Seismic Challenge 3.0"],"eventURL":"http://greaterthanone.org/events/seismic-challenge/","zip":"94101","contactPhone":"415-487-3053","sortDate":"2000-10-02","eventState":"California","eventLatitude":"37.78","keywords":"Event","contactEmail":"eventinfo@sfaf.org","onlineMembershipAvailable":"0","dma":"San Francisco - Oakland - San Jose","trackbackurl":"http://www.active.com/cycling/san-francisco-ca/seismic-challenge-30-2010","seourl":"http://www.active.com/cycling/san-francisco-ca/seismic-challenge-30-2010","country":"United States","onlineRegistrationAvailable":"false","category":"Activities","market":"San Francisco - Oakland - San Jose","assetTypeId":"EA4E860A-9DCD-4DAA-A7CA-4A77AD194F65","lastModifiedDate":"2010-10-04","eventZip":"94101","UpdateDateTime":"9/22/2010 11:46:24 AM","latitude":"37.78","channel":"Cycling"}}'))
129
+
130
+ g.address[:address].should eql("San Francisco Bay")
131
+ g.address[:name].should eql("San Francisco Bay")
132
+ g.address[:lat].should eql("37.78")
133
+ g.address[:zip].should eql("94101")
134
+ g = GSA.new(JSON.parse('{"escapedUrl":"http://www.active.com/cycling/san-francisco-ca/seismic-challenge-30-2010","language":"en","title":"Seismic Challenge 3.0 | San Francisco, California 94101 \u003cb\u003e...\u003c/b\u003e","url":"http://www.active.com/cycling/san-francisco-ca/seismic-challenge-30-2010","summary":"","meta":{"startDate":"2010-10-02","eventDate":"2010-10-02T00:00:00-07:00","tag":"event:10","state":"California","eventLongitude":"-122.42","endDate":"2010-10-03","lastModifiedDateTime":"2010-10-04 03:08:51.65","splitMediaType":"Event","locationName":"San Francisco Bay","endTime":"0:00:00","mediaType":"Event","city":"San Francisco","google-site-verification":"","estParticipants":"2000","startTime":"0:00:00","assetId":["35A99FCB-E238-4D78-9205-96179F827CB0","35a99fcb-e238-4d78-9205-96179f827cb0"],"eventId":"1883181","participationCriteria":"All","description":"","longitude":"-122.42","onlineDonationAvailable":"0","substitutionUrl":"1883181","assetName":["Seismic Challenge 3.0","Seismic Challenge 3.0"],"eventURL":"http://greaterthanone.org/events/seismic-challenge/","zip":"94101","contactPhone":"415-487-3053","sortDate":"2000-10-02","eventState":"California","eventLatitude":"37.78","keywords":"Event","contactEmail":"eventinfo@sfaf.org","onlineMembershipAvailable":"0","dma":"San Francisco - Oakland - San Jose","trackbackurl":"http://www.active.com/cycling/san-francisco-ca/seismic-challenge-30-2010","seourl":"http://www.active.com/cycling/san-francisco-ca/seismic-challenge-30-2010","country":"United States","onlineRegistrationAvailable":"false","category":"Activities","market":"San Francisco - Oakland - San Jose","assetTypeId":"EA4E860A-9DCD-4DAA-A7CA-4A77AD194F65","lastModifiedDate":"2010-10-04","eventZip":"94101","UpdateDateTime":"9/22/2010 11:46:24 AM","latitude":"37.78","channel":"Cycling"}}'))
135
+ g.address[:address].should be_nil
136
+ end
137
+ it "should have an address from this hash with null name and address" do
138
+ g = GSA.new(JSON.parse('{"escapedUrl":"http://www.active.com/cycling/san-francisco-ca/california-wine-country-bike-tours-in-october-2010","language":"en","title":"2010 California Wine Country Bike Tours in October | San \u003cb\u003e...\u003c/b\u003e","url":"http://www.active.com/cycling/san-francisco-ca/california-wine-country-bike-tours-in-october-2010","summary":"","meta":{"startDate":"2010-10-10","eventDate":"2010-10-10T00:00:00-07:00","state":"California","endDate":"2010-10-22","eventLongitude":"-122.4200000","lastModifiedDateTime":"2010-08-26 02:15:54.36","splitMediaType":"Event","endTime":"0:00:00","mediaType":"Event","city":"San Francisco","google-site-verification":"","estParticipants":"2000","startTime":"0:00:00","assetId":["81A4A089-CAB5-4293-BFBF-87C74A1C6370","81a4a089-cab5-4293-bfbf-87c74a1c6370"],"eventId":"1889827","participationCriteria":"All","description":"","longitude":"-122.4200000","onlineDonationAvailable":"0","substitutionUrl":"1889827","assetName":["2010 California Wine Country Bike Tours in October","2010 California Wine Country Bike Tours in October"],"eventURL":"http://www.trektravel.com/contentpage.cfm?ID\u003d703","zip":"94101","contactPhone":"866-464-8735","eventLatitude":"37.7800000","eventState":"California","sortDate":"2000-10-10","keywords":"Event","onlineMembershipAvailable":"0","dma":"San Francisco - Oakland - San Jose","trackbackurl":"http://www.active.com/cycling/san-francisco-ca/california-wine-country-bike-tours-in-october-2010","seourl":"http://www.active.com/cycling/san-francisco-ca/california-wine-country-bike-tours-in-october-2010","country":"United States","onlineRegistrationAvailable":"0","category":"Activities","market":"San Francisco - Oakland - San Jose","assetTypeId":"EA4E860A-9DCD-4DAA-A7CA-4A77AD194F65","lastModifiedDate":"2010-08-26","eventZip":"94101","UpdateDateTime":"8/18/2010 10:16:26 AM","latitude":"37.7800000","channel":"Cycling"}}'))
139
+ g.address[:name].should be_nil
140
+ g.address[:address].should be_nil
141
+ g.address[:city].should eql("San Francisco")
142
+ g.address[:state].should eql("California")
143
+ g.address[:zip].should eql("94101")
144
+ g.address[:country].should eql("United States")
145
+ g.address[:lat].should eql("37.7800000")
146
+ g.address[:lng].should eql("-122.4200000")
147
+ end
148
+ it "should have an address from this hash" do
149
+ g = GSA.new(JSON.parse('{"escapedUrl":"http://www.active.com/running/san-francisco-ca/nike-womens-marathon-2010","language":"en","title":"Nike Women\u0026#39;s Marathon | San Francisco, California 94102 \u003cb\u003e...\u003c/b\u003e","url":"http://www.active.com/running/san-francisco-ca/nike-womens-marathon-2010","summary":"","meta":{"startDate":"2010-10-17","eventDate":"2010-10-17T07:00:00-07:00","location":"Union Square","tag":["event:10","Running:10"],"state":"California","eventLongitude":"-122.4212","endDate":"2010-10-17","lastModifiedDateTime":"2010-10-01 21:04:24.977","splitMediaType":["Event","Marathon"],"locationName":"Union Square","endTime":"7:00:00","mediaType":["Event","Event\\Marathon"],"city":"San Francisco","google-site-verification":"","estParticipants":"2000","startTime":"7:00:00","assetId":["715ED4EF-E4FF-42F2-B24B-2E4255649676","715ed4ef-e4ff-42f2-b24b-2e4255649676"],"eventId":"1854168","participationCriteria":"All","description":"","longitude":"-122.4212","onlineDonationAvailable":"0","substitutionUrl":"1854168","assetName":["Nike Womens Marathon","Nike Womens Marathon"],"eventURL":"http://inside.nike.com/blogs/nikerunning_events-en_US/?tags\u003dnike_womens_marathon_2010","zip":"94102","contactPhone":"866-786-6453","eventState":"California","sortDate":"2000-10-17","eventLatitude":"37.77869","keywords":"Event","onlineMembershipAvailable":"0","dma":"San Francisco - Oakland - San Jose","trackbackurl":"http://www.active.com/running/san-francisco-ca/nike-womens-marathon-2010","seourl":"http://www.active.com/running/san-francisco-ca/nike-womens-marathon-2010","country":"United States","onlineRegistrationAvailable":"false","category":"Activities","market":"San Francisco - Oakland - San Jose","assetTypeId":"EA4E860A-9DCD-4DAA-A7CA-4A77AD194F65","lastModifiedDate":"2010-10-01","eventZip":"94102","UpdateDateTime":"9/22/2010 11:46:24 AM","latitude":"37.77869","channel":"Running"}}'))
150
+ g.address[:name].should eql("Union Square")
151
+ g.address[:address].should eql("Union Square")
152
+ g.address[:city].should eql("San Francisco")
153
+ g.address[:state].should eql("California")
154
+ g.address[:zip].should eql("94102")
155
+ g.address[:country].should eql("United States")
156
+ g.address[:lat].should eql("37.77869")
157
+ g.address[:lng].should eql("-122.4212")
158
+ end
123
159
  end
160
+
161
+
162
+
163
+
164
+
165
+
data/spec/search_spec.rb CHANGED
@@ -381,24 +381,12 @@ describe Search do
381
381
  }
382
382
  end
383
383
  end
384
-
385
- it "should find upcoming events"
386
-
387
- it "should find popular events"
388
-
389
- it "should order by trending with params"
390
- # results = Search.search( {:channels => ['Running'], :sort => 'trending'} )
391
- # end
392
-
393
- it "should order by RELEVANCE"
394
-
395
- it "should order by date DATE_ASC"
396
-
397
- it "should order by date DATE_DESC"
398
-
399
- it "should order by the date created" do
400
- # results = Search.search( {:channels => ['Running'], :sort => 'created_at_asc'} )
401
- pending
384
+ it "should find events that have online regristration"
385
+ it "should find events that do not have online regristration"
386
+
387
+ it "should have a start date" do
388
+ Search.search(:asset_id => "715ED4EF-E4FF-42F2-B24B-2E4255649676").results.first.should_not be_nil
389
+ # first.address["address"].should_not be_nil
402
390
  end
403
391
 
404
392
  end
data/version.txt CHANGED
@@ -1 +1 @@
1
- 0.0.18
1
+ 0.0.21
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: Active
3
3
  version: !ruby/object:Gem::Version
4
- hash: 59
4
+ hash: 53
5
5
  prerelease: false
6
6
  segments:
7
7
  - 0
8
8
  - 0
9
- - 18
10
- version: 0.0.18
9
+ - 21
10
+ version: 0.0.21
11
11
  platform: ruby
12
12
  authors:
13
13
  - Jonathan Spooner, Brian Levine
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2010-10-05 00:00:00 -07:00
18
+ date: 2010-10-06 00:00:00 -07:00
19
19
  default_executable:
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency