federal_register 0.5.1 → 0.6.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (50) hide show
  1. data/.rubocop.yml +286 -0
  2. data/Gemfile +3 -4
  3. data/Gemfile.lock +82 -22
  4. data/README.md +6 -6
  5. data/Rakefile +5 -5
  6. data/VERSION +1 -1
  7. data/federal_register.gemspec +49 -19
  8. data/lib/federal_register.rb +41 -0
  9. data/lib/federal_register/agency.rb +45 -9
  10. data/lib/federal_register/article.rb +2 -106
  11. data/lib/federal_register/base.rb +52 -3
  12. data/lib/federal_register/client.rb +3 -3
  13. data/lib/federal_register/document.rb +113 -0
  14. data/lib/federal_register/document_image.rb +17 -0
  15. data/lib/federal_register/facet.rb +21 -0
  16. data/lib/federal_register/facet/agency.rb +5 -0
  17. data/lib/federal_register/facet/document.rb +2 -0
  18. data/lib/federal_register/facet/document/agency.rb +5 -0
  19. data/lib/federal_register/facet/document/daily.rb +5 -0
  20. data/lib/federal_register/facet/document/frequency.rb +12 -0
  21. data/lib/federal_register/facet/document/monthly.rb +5 -0
  22. data/lib/federal_register/facet/document/quarterly.rb +5 -0
  23. data/lib/federal_register/facet/document/section.rb +5 -0
  24. data/lib/federal_register/facet/document/topic.rb +5 -0
  25. data/lib/federal_register/facet/document/type.rb +5 -0
  26. data/lib/federal_register/facet/document/weekly.rb +5 -0
  27. data/lib/federal_register/facet/document/yearly.rb +5 -0
  28. data/lib/federal_register/facet/presidential_document_type.rb +6 -0
  29. data/lib/federal_register/facet/public_inspection_document.rb +2 -0
  30. data/lib/federal_register/facet/public_inspection_document/agencies.rb +5 -0
  31. data/lib/federal_register/facet/public_inspection_document/agency.rb +5 -0
  32. data/lib/federal_register/facet/public_inspection_document/type.rb +5 -0
  33. data/lib/federal_register/facet/public_inspection_issue.rb +36 -0
  34. data/lib/federal_register/facet/public_inspection_issue/daily.rb +11 -0
  35. data/lib/federal_register/facet/public_inspection_issue/daily_filing.rb +6 -0
  36. data/lib/federal_register/facet/public_inspection_issue/type.rb +11 -0
  37. data/lib/federal_register/facet/public_inspection_issue/type_filing.rb +22 -0
  38. data/lib/federal_register/facet/topic.rb +5 -0
  39. data/lib/federal_register/facet_result_set.rb +25 -0
  40. data/lib/federal_register/highlighted_document.rb +42 -0
  41. data/lib/federal_register/public_inspection_document.rb +21 -7
  42. data/lib/federal_register/public_inspection_issue_result_set.rb +10 -0
  43. data/lib/federal_register/result_set.rb +5 -5
  44. data/lib/federal_register/section.rb +26 -0
  45. data/lib/federal_register/suggested_search.rb +26 -0
  46. data/lib/federal_register/topic.rb +13 -0
  47. data/spec/{article_spec.rb → document_spec.rb} +20 -28
  48. data/spec/public_inspection_document_spec.rb +5 -6
  49. data/spec/result_set_spec.rb +4 -4
  50. metadata +99 -39
@@ -1,8 +1,11 @@
1
1
  class FederalRegister::PublicInspectionDocument < FederalRegister::Base
2
+ extend FederalRegister::Utilities
3
+
2
4
  add_attribute :agencies,
3
5
  :docket_numbers,
4
6
  :document_number,
5
7
  :editorial_note,
8
+ :excerpts,
6
9
  :html_url,
7
10
  :filing_type,
8
11
  :pdf_url,
@@ -18,7 +21,7 @@ class FederalRegister::PublicInspectionDocument < FederalRegister::Base
18
21
  add_attribute :filed_at,
19
22
  :pdf_update_at,
20
23
  :type => :datetime
21
-
24
+
22
25
  def self.search(args)
23
26
  FederalRegister::ResultSet.fetch("/public-inspection-documents.json", :query => args, :result_class => self)
24
27
  end
@@ -26,24 +29,35 @@ class FederalRegister::PublicInspectionDocument < FederalRegister::Base
26
29
  def self.search_metadata(args)
27
30
  FederalRegister::ResultSet.fetch("/public-inspection-documents.json", :query => args.merge(:metadata_only => '1'), :result_class => self)
28
31
  end
29
-
32
+
30
33
  def self.find(document_number)
31
34
  attributes = get("/public-inspection-documents/#{document_number}.json")
32
35
  new(attributes, :full => true)
33
36
  end
34
37
 
35
38
  def self.available_on(date)
36
- FederalRegister::ResultSet.fetch("/public-inspection-documents.json", :query => {:conditions => {:available_on => date}}, :result_class => self)
39
+ FederalRegister::PublicInspectionIssueResultSet.fetch("/public-inspection-documents.json", :query => {:conditions => {:available_on => date}}, :result_class => self)
37
40
  end
38
41
 
39
42
  def self.current
40
- FederalRegister::ResultSet.fetch("/public-inspection-documents/current.json", :result_class => self)
43
+ FederalRegister::PublicInspectionIssueResultSet.fetch("/public-inspection-documents/current.json", :result_class => self)
41
44
  end
42
45
 
43
- def self.find_all(*document_numbers)
44
- result_set = FederalRegister::ResultSet.fetch("/public-inspection-documents/#{document_numbers.join(',')}.json", :result_class => self)
46
+ def self.find_all(*args)
47
+ options, document_numbers = extract_options(args)
48
+
49
+ fetch_options = {:result_class => self}
50
+ fetch_options.merge!(:query => {:fields => options[:fields]}) if options[:fields]
51
+
52
+ #TODO: fix this gross hack to ensure that find_all with a single document number
53
+ # is returned in the same way multiple document numbers are
54
+ if document_numbers.size == 1
55
+ document_numbers << " "
56
+ end
57
+
58
+ result_set = FederalRegister::ResultSet.fetch("/public-inspection-documents/#{document_numbers.join(',').strip}.json", fetch_options)
45
59
  end
46
-
60
+
47
61
  def agencies
48
62
  attributes["agencies"].map do |attr|
49
63
  FederalRegister::Agency.new(attr)
@@ -0,0 +1,10 @@
1
+ class FederalRegister::PublicInspectionIssueResultSet < FederalRegister::ResultSet
2
+ attr_reader :regular_filings_updated_at, :special_filings_updated_at
3
+
4
+ def initialize(attributes, result_class)
5
+ super attributes, result_class
6
+
7
+ @regular_filings_updated_at = attributes['regular_filings_updated_at']
8
+ @special_filings_updated_at = attributes['special_filings_updated_at']
9
+ end
10
+ end
@@ -2,7 +2,7 @@ class FederalRegister::ResultSet < FederalRegister::Client
2
2
  include Enumerable
3
3
 
4
4
  attr_reader :count, :total_pages, :results, :errors, :description
5
-
5
+
6
6
  def initialize(attributes, result_class)
7
7
  @result_class = result_class
8
8
  @count = attributes['count']
@@ -10,20 +10,20 @@ class FederalRegister::ResultSet < FederalRegister::Client
10
10
  @results = (attributes['results'] || []).map{|result| @result_class.new(result) }
11
11
 
12
12
  @description = attributes['description']
13
-
13
+
14
14
  @prev_url = attributes['previous_page_url']
15
15
  @next_url = attributes['next_page_url']
16
16
  @errors = attributes['errors']
17
17
  end
18
-
18
+
19
19
  def next
20
20
  self.class.fetch(@next_url, :result_class => @result_class) if @next_url
21
21
  end
22
-
22
+
23
23
  def previous
24
24
  self.class.fetch(@prev_url, :result_class => @result_class) if @prev_url
25
25
  end
26
-
26
+
27
27
  def self.fetch(url, options = {})
28
28
  result_class = options.delete(:result_class)
29
29
  response = get(url, options)
@@ -0,0 +1,26 @@
1
+ class FederalRegister::Section < FederalRegister::Base
2
+ add_attribute :name
3
+
4
+ def self.search(args={})
5
+ response = get('/sections', query: args)
6
+
7
+ responses = {}
8
+ response.map do |section, attributes|
9
+ responses[section] = new(attributes)
10
+ end
11
+
12
+ responses
13
+ end
14
+
15
+ def highlighted_documents
16
+ @highlighted_documents ||= attributes['highlighted_documents'].map do |attributes|
17
+ highlighted_document_class.new(attributes)
18
+ end
19
+ end
20
+
21
+ private
22
+
23
+ def highlighted_document_class
24
+ FederalRegister::HighlightedDocument
25
+ end
26
+ end
@@ -0,0 +1,26 @@
1
+ class FederalRegister::SuggestedSearch < FederalRegister::Base
2
+ add_attribute :description,
3
+ :documents_in_last_year,
4
+ :documents_with_open_comment_periods,
5
+ :position,
6
+ :search_conditions,
7
+ :section,
8
+ :slug,
9
+ :title
10
+
11
+ def self.search(args={})
12
+ response = get('/suggested_searches', query: args)
13
+
14
+ responses = {}
15
+ response.map do |section, searches|
16
+ responses[section] = searches.map{|attributes| new(attributes)}
17
+ end
18
+
19
+ responses
20
+ end
21
+
22
+ def self.find(slug)
23
+ response = get("/suggested_searches/#{slug}")
24
+ new(response)
25
+ end
26
+ end
@@ -0,0 +1,13 @@
1
+ class FederalRegister::Topic < FederalRegister::Base
2
+ add_attribute :name,
3
+ :slug,
4
+ :url
5
+
6
+ def self.suggestions(args={})
7
+ response = get("/topics/suggestions", query: args)
8
+
9
+ response.map do |hsh|
10
+ new(hsh, :full => true)
11
+ end
12
+ end
13
+ end
@@ -1,29 +1,29 @@
1
1
  require File.dirname(__FILE__) + '/spec_helper'
2
2
 
3
- describe FederalRegister::Article do
3
+ describe FederalRegister::Document do
4
4
  describe ".find" do
5
5
  it "fetches the document by its document number" do
6
6
  document_number = "2010-213"
7
7
  FakeWeb.register_uri(
8
8
  :get,
9
- "https://www.federalregister.gov/api/v1/articles/#{document_number}.json",
9
+ "https://www.federalregister.gov/api/v1/documents/#{document_number}.json",
10
10
  :content_type =>"text/json",
11
11
  :body => {:title => "Important Notice"}.to_json
12
12
  )
13
13
 
14
- FederalRegister::Article.find(document_number).title.should == 'Important Notice'
14
+ FederalRegister::Document.find(document_number).title.should == 'Important Notice'
15
15
  end
16
16
 
17
17
  it "fetches the document with only requested fields (when present)" do
18
18
  document_number = "2010-213"
19
19
  FakeWeb.register_uri(
20
20
  :get,
21
- "https://www.federalregister.gov/api/v1/articles/#{document_number}.json?fields[]=title&fields[]=start_page",
21
+ "https://www.federalregister.gov/api/v1/documents/#{document_number}.json?fields[]=title&fields[]=start_page",
22
22
  :content_type => "text/json",
23
23
  :body => {:title => "Important Notice", :start_page => 12345}.to_json
24
24
  )
25
25
 
26
- result = FederalRegister::Article.find(document_number, :fields => ["title", "start_page"])
26
+ result = FederalRegister::Document.find(document_number, :fields => ["title", "start_page"])
27
27
  result.title.should eql("Important Notice")
28
28
  result.start_page.should eql(12345)
29
29
  result.end_page.should be(nil)
@@ -33,15 +33,11 @@ describe FederalRegister::Article do
33
33
  document_number = "some-random-document"
34
34
  FakeWeb.register_uri(
35
35
  :get,
36
- "https://www.federalregister.gov/api/v1/articles/#{document_number}.json",
36
+ "https://www.federalregister.gov/api/v1/documents/#{document_number}.json",
37
37
  :content_type =>"text/json",
38
38
  :status => 404
39
39
  )
40
- lambda{ FederalRegister::Article.find(document_number) }.should raise_error FederalRegister::Client::RecordNotFound
41
- end
42
-
43
- it "throws an error when given an invalid document number" do
44
- lambda{ FederalRegister::Article.find('an! invalid! document! number!') }.should raise_error FederalRegister::Article::InvalidDocumentNumber
40
+ lambda{ FederalRegister::Document.find(document_number) }.should raise_error FederalRegister::Client::RecordNotFound
45
41
  end
46
42
  end
47
43
 
@@ -49,66 +45,62 @@ describe FederalRegister::Article do
49
45
  it "fetches multiple matching documents" do
50
46
  FakeWeb.register_uri(
51
47
  :get,
52
- "https://www.federalregister.gov/api/v1/articles/abc,def.json",
48
+ "https://www.federalregister.gov/api/v1/documents/abc,def.json",
53
49
  :content_type =>"text/json",
54
50
  :body => {:results => [{:document_number => "abc"}, {:document_number => "def"}]}.to_json
55
51
  )
56
- result_set = FederalRegister::Article.find_all('abc','def')
52
+ result_set = FederalRegister::Document.find_all('abc','def')
57
53
  result_set.results.map(&:document_number).sort.should === ['abc','def']
58
54
  end
59
55
 
60
56
  it "fetches multiple matching documents with only requested fields (when present)" do
61
57
  FakeWeb.register_uri(
62
58
  :get,
63
- "https://www.federalregister.gov/api/v1/articles/abc,def.json?fields[]=document_number&fields[]=title",
59
+ "https://www.federalregister.gov/api/v1/documents/abc,def.json?fields[]=document_number&fields[]=title",
64
60
  :content_type =>"text/json",
65
- :body => {:results => [{:document_number => "abc", :title => "Important Notice"},
61
+ :body => {:results => [{:document_number => "abc", :title => "Important Notice"},
66
62
  {:document_number => "def", :title => "Important Rule"}]}.to_json
67
63
  )
68
- result_set = FederalRegister::Article.find_all('abc','def', :fields => ["document_number", "title"])
64
+ result_set = FederalRegister::Document.find_all('abc','def', :fields => ["document_number", "title"])
69
65
  result_set.results.map(&:document_number).sort.should === ['abc','def']
70
66
  result_set.results.map(&:title).sort.should === ['Important Notice','Important Rule']
71
67
  result_set.results.map(&:start_page).should === [nil, nil]
72
68
  end
73
-
74
- it "throws an error when given an invalid document number" do
75
- lambda{ FederalRegister::Article.find_all('123-456','an! invalid! document! number!') }.should raise_error FederalRegister::Article::InvalidDocumentNumber
76
- end
77
69
  end
78
70
 
79
71
  describe ".search" do
80
72
  before(:each) do
81
73
  FakeWeb.register_uri(
82
74
  :get,
83
- "https://www.federalregister.gov/api/v1/articles.json?conditions[term]=Fish",
75
+ "https://www.federalregister.gov/api/v1/documents.json?conditions[term]=Fish",
84
76
  :content_type =>"text/json",
85
77
  :body => {:count => 3}.to_json
86
78
  )
87
79
  end
88
80
 
89
81
  it "returns a resultset object" do
90
- FederalRegister::Article.search(:conditions => {:term => "Fish"}).should be_an_instance_of(FederalRegister::ResultSet)
82
+ FederalRegister::Document.search(:conditions => {:term => "Fish"}).should be_an_instance_of(FederalRegister::ResultSet)
91
83
  end
92
84
  end
93
85
 
94
86
  describe "#full_text_xml" do
95
87
  it "fetches the full_text_xml from the full_text_xml_url" do
96
88
  url = "http://example.com/full_text"
97
- article = FederalRegister::Article.new("full_text_xml_url" => url)
89
+ document = FederalRegister::Document.new("full_text_xml_url" => url)
98
90
  FakeWeb.register_uri(
99
91
  :get,
100
92
  url,
101
93
  :content_type =>"text/xml",
102
94
  :body => "hello, world!"
103
95
  )
104
- article.full_text_xml.should == 'hello, world!'
96
+ document.full_text_xml.should == 'hello, world!'
105
97
  end
106
98
  end
107
99
 
108
100
  describe "#publication_date" do
109
101
  it "returns a Date object" do
110
- article = FederalRegister::Article.new("publication_date" => "2011-07-22")
111
- article.publication_date.should == Date.strptime("2011-07-22")
102
+ document = FederalRegister::Document.new("publication_date" => "2011-07-22")
103
+ document.publication_date.should == Date.strptime("2011-07-22")
112
104
  end
113
105
  end
114
106
 
@@ -117,12 +109,12 @@ describe FederalRegister::Article do
117
109
  document_number = "2010-213"
118
110
  FakeWeb.register_uri(
119
111
  :get,
120
- "https://www.federalregister.gov/api/v1/articles/#{document_number}.json",
112
+ "https://www.federalregister.gov/api/v1/documents/#{document_number}.json",
121
113
  :content_type =>"text/json",
122
114
  :body => {:title => "Important Notice", :docket_ids => ['ABC','123']}.to_json
123
115
  )
124
116
 
125
- FederalRegister::Article.find(document_number).docket_ids.should == ['ABC','123']
117
+ FederalRegister::Document.find(document_number).docket_ids.should == ['ABC','123']
126
118
  end
127
119
  end
128
120
  end
@@ -6,7 +6,7 @@ describe FederalRegister::PublicInspectionDocument do
6
6
  document_number = "2010-213"
7
7
  FakeWeb.register_uri(
8
8
  :get,
9
- "https://www.federalregister.gov/api/v1/public-inspection-documents/#{document_number}.json",
9
+ "https://www.federalregister.gov/api/v1/public-inspection-documents/#{document_number}.json",
10
10
  :content_type =>"text/json",
11
11
  :body => {:title => "Important Notice"}.to_json
12
12
  )
@@ -18,7 +18,7 @@ describe FederalRegister::PublicInspectionDocument do
18
18
  document_number = "some-random-document"
19
19
  FakeWeb.register_uri(
20
20
  :get,
21
- "https://www.federalregister.gov/api/v1/public-inspection-documents/#{document_number}.json",
21
+ "https://www.federalregister.gov/api/v1/public-inspection-documents/#{document_number}.json",
22
22
  :content_type =>"text/json",
23
23
  :status => 404
24
24
  )
@@ -30,7 +30,7 @@ describe FederalRegister::PublicInspectionDocument do
30
30
  it "fetches multiple matching documents" do
31
31
  FakeWeb.register_uri(
32
32
  :get,
33
- "https://www.federalregister.gov/api/v1/public-inspection-documents/abc,def.json",
33
+ "https://www.federalregister.gov/api/v1/public-inspection-documents/abc,def.json",
34
34
  :content_type =>"text/json",
35
35
  :body => {:results => [{:document_number => "abc"}, {:document_number => "def"}]}.to_json
36
36
  )
@@ -43,7 +43,7 @@ describe FederalRegister::PublicInspectionDocument do
43
43
  it "fetches the document on PI on a given date" do
44
44
  FakeWeb.register_uri(
45
45
  :get,
46
- "https://www.federalregister.gov/api/v1/public-inspection-documents.json?conditions[available_on]=2011-10-15",
46
+ "https://www.federalregister.gov/api/v1/public-inspection-documents.json?conditions[available_on]=2011-10-15",
47
47
  :content_type =>"text/json",
48
48
  :body => {:results => [{:document_number => "abc"}, {:document_number => "def"}]}.to_json
49
49
  )
@@ -56,7 +56,7 @@ describe FederalRegister::PublicInspectionDocument do
56
56
  it "fetches the PI documents from the current issue" do
57
57
  FakeWeb.register_uri(
58
58
  :get,
59
- "https://www.federalregister.gov/api/v1/public-inspection-documents/current.json",
59
+ "https://www.federalregister.gov/api/v1/public-inspection-documents/current.json",
60
60
  :content_type =>"text/json",
61
61
  :body => {:results => [{:document_number => "abc"}, {:document_number => "def"}]}.to_json
62
62
  )
@@ -64,5 +64,4 @@ describe FederalRegister::PublicInspectionDocument do
64
64
  result_set.results.map(&:document_number).sort.should === ['abc','def']
65
65
  end
66
66
  end
67
-
68
67
  end
@@ -4,13 +4,13 @@ describe FederalRegister::ResultSet do
4
4
  describe "#next" do
5
5
  it "loads the next_page_url" do
6
6
  FakeWeb.register_uri(:get, "https://www.federalregister.gov/api/v1/fishes?page=2", :body => {:count => 24}.to_json, :content_type =>"text/json")
7
- FederalRegister::ResultSet.new({'next_page_url' => 'https://www.federalregister.gov/api/v1/fishes?page=2'}, FederalRegister::Article).next.count.should == 24
7
+ FederalRegister::ResultSet.new({'next_page_url' => 'https://www.federalregister.gov/api/v1/fishes?page=2'}, FederalRegister::Document).next.count.should == 24
8
8
  end
9
9
  end
10
10
 
11
11
  describe "enumerability" do
12
12
  it "responds to #each" do
13
- FederalRegister::ResultSet.new({}, FederalRegister::Article).should respond_to(:each)
13
+ FederalRegister::ResultSet.new({}, FederalRegister::Document).should respond_to(:each)
14
14
  end
15
15
 
16
16
  it "includes Enumerable" do
@@ -19,7 +19,7 @@ describe FederalRegister::ResultSet do
19
19
 
20
20
  context "given an empty result set" do
21
21
  it "never invokes the block" do
22
- results = FederalRegister::ResultSet.new({}, FederalRegister::Article)
22
+ results = FederalRegister::ResultSet.new({}, FederalRegister::Document)
23
23
  lambda {
24
24
  results.each {|i| fail i }
25
25
  }.should_not raise_error
@@ -32,7 +32,7 @@ describe FederalRegister::ResultSet do
32
32
  {'panda' => 'bamboo'},
33
33
  {'curry' => 'noodle'},
34
34
  {'soup' => 'tree'}
35
- ]}, FederalRegister::Article)
35
+ ]}, FederalRegister::Document)
36
36
  end
37
37
 
38
38
  it "doesn't yields nil to a block" do
metadata CHANGED
@@ -1,19 +1,20 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: federal_register
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.1
4
+ version: 0.6.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
8
8
  - Andrew Carpenter
9
+ - Bob Burbach
9
10
  autorequire:
10
11
  bindir: bin
11
12
  cert_chain: []
12
- date: 2015-02-06 00:00:00.000000000 Z
13
+ date: 2016-11-03 00:00:00.000000000 Z
13
14
  dependencies:
14
15
  - !ruby/object:Gem::Dependency
15
16
  name: httparty
16
- requirement: &70102078955580 !ruby/object:Gem::Requirement
17
+ requirement: !ruby/object:Gem::Requirement
17
18
  none: false
18
19
  requirements:
19
20
  - - ! '>='
@@ -21,10 +22,15 @@ dependencies:
21
22
  version: 0.7.0
22
23
  type: :runtime
23
24
  prerelease: false
24
- version_requirements: *70102078955580
25
+ version_requirements: !ruby/object:Gem::Requirement
26
+ none: false
27
+ requirements:
28
+ - - ! '>='
29
+ - !ruby/object:Gem::Version
30
+ version: 0.7.0
25
31
  - !ruby/object:Gem::Dependency
26
32
  name: shoulda
27
- requirement: &70102078954740 !ruby/object:Gem::Requirement
33
+ requirement: !ruby/object:Gem::Requirement
28
34
  none: false
29
35
  requirements:
30
36
  - - ! '>='
@@ -32,43 +38,47 @@ dependencies:
32
38
  version: '0'
33
39
  type: :development
34
40
  prerelease: false
35
- version_requirements: *70102078954740
41
+ version_requirements: !ruby/object:Gem::Requirement
42
+ none: false
43
+ requirements:
44
+ - - ! '>='
45
+ - !ruby/object:Gem::Version
46
+ version: '0'
36
47
  - !ruby/object:Gem::Dependency
37
48
  name: bundler
38
- requirement: &70102078953820 !ruby/object:Gem::Requirement
49
+ requirement: !ruby/object:Gem::Requirement
39
50
  none: false
40
51
  requirements:
41
- - - ~>
52
+ - - ! '>='
42
53
  - !ruby/object:Gem::Version
43
- version: 1.0.0
54
+ version: '0'
44
55
  type: :development
45
56
  prerelease: false
46
- version_requirements: *70102078953820
57
+ version_requirements: !ruby/object:Gem::Requirement
58
+ none: false
59
+ requirements:
60
+ - - ! '>='
61
+ - !ruby/object:Gem::Version
62
+ version: '0'
47
63
  - !ruby/object:Gem::Dependency
48
64
  name: jeweler
49
- requirement: &70102078952760 !ruby/object:Gem::Requirement
65
+ requirement: !ruby/object:Gem::Requirement
50
66
  none: false
51
67
  requirements:
52
- - - ~>
68
+ - - ! '>='
53
69
  - !ruby/object:Gem::Version
54
- version: 1.6.0
70
+ version: '0'
55
71
  type: :development
56
72
  prerelease: false
57
- version_requirements: *70102078952760
58
- - !ruby/object:Gem::Dependency
59
- name: rcov
60
- requirement: &70102078967720 !ruby/object:Gem::Requirement
73
+ version_requirements: !ruby/object:Gem::Requirement
61
74
  none: false
62
75
  requirements:
63
76
  - - ! '>='
64
77
  - !ruby/object:Gem::Version
65
78
  version: '0'
66
- type: :development
67
- prerelease: false
68
- version_requirements: *70102078967720
69
79
  - !ruby/object:Gem::Dependency
70
80
  name: rspec
71
- requirement: &70102078966280 !ruby/object:Gem::Requirement
81
+ requirement: !ruby/object:Gem::Requirement
72
82
  none: false
73
83
  requirements:
74
84
  - - ~>
@@ -76,21 +86,15 @@ dependencies:
76
86
  version: '2.6'
77
87
  type: :development
78
88
  prerelease: false
79
- version_requirements: *70102078966280
80
- - !ruby/object:Gem::Dependency
81
- name: rspec
82
- requirement: &70102078964840 !ruby/object:Gem::Requirement
89
+ version_requirements: !ruby/object:Gem::Requirement
83
90
  none: false
84
91
  requirements:
85
92
  - - ~>
86
93
  - !ruby/object:Gem::Version
87
94
  version: '2.6'
88
- type: :development
89
- prerelease: false
90
- version_requirements: *70102078964840
91
95
  - !ruby/object:Gem::Dependency
92
96
  name: activesupport
93
- requirement: &70102078963560 !ruby/object:Gem::Requirement
97
+ requirement: !ruby/object:Gem::Requirement
94
98
  none: false
95
99
  requirements:
96
100
  - - ~>
@@ -98,10 +102,15 @@ dependencies:
98
102
  version: '3'
99
103
  type: :development
100
104
  prerelease: false
101
- version_requirements: *70102078963560
105
+ version_requirements: !ruby/object:Gem::Requirement
106
+ none: false
107
+ requirements:
108
+ - - ~>
109
+ - !ruby/object:Gem::Version
110
+ version: '3'
102
111
  - !ruby/object:Gem::Dependency
103
112
  name: fakeweb
104
- requirement: &70102078961920 !ruby/object:Gem::Requirement
113
+ requirement: !ruby/object:Gem::Requirement
105
114
  none: false
106
115
  requirements:
107
116
  - - ~>
@@ -109,8 +118,29 @@ dependencies:
109
118
  version: 1.3.0
110
119
  type: :development
111
120
  prerelease: false
112
- version_requirements: *70102078961920
113
- description: Ruby API Client for FederalRegister.gov that handles searching articles
121
+ version_requirements: !ruby/object:Gem::Requirement
122
+ none: false
123
+ requirements:
124
+ - - ~>
125
+ - !ruby/object:Gem::Version
126
+ version: 1.3.0
127
+ - !ruby/object:Gem::Dependency
128
+ name: rubocop
129
+ requirement: !ruby/object:Gem::Requirement
130
+ none: false
131
+ requirements:
132
+ - - ! '>='
133
+ - !ruby/object:Gem::Version
134
+ version: '0'
135
+ type: :development
136
+ prerelease: false
137
+ version_requirements: !ruby/object:Gem::Requirement
138
+ none: false
139
+ requirements:
140
+ - - ! '>='
141
+ - !ruby/object:Gem::Version
142
+ version: '0'
143
+ description: Ruby API Client for FederalRegister.gov that handles searching documents
114
144
  and getting information about agencies
115
145
  email: andrew@criticaljuncture.org
116
146
  executables: []
@@ -120,6 +150,7 @@ extra_rdoc_files:
120
150
  - README.md
121
151
  files:
122
152
  - .document
153
+ - .rubocop.yml
123
154
  - .watchr
124
155
  - Gemfile
125
156
  - Gemfile.lock
@@ -133,16 +164,48 @@ files:
133
164
  - lib/federal_register/article.rb
134
165
  - lib/federal_register/base.rb
135
166
  - lib/federal_register/client.rb
167
+ - lib/federal_register/document.rb
168
+ - lib/federal_register/document_image.rb
169
+ - lib/federal_register/facet.rb
170
+ - lib/federal_register/facet/agency.rb
171
+ - lib/federal_register/facet/document.rb
172
+ - lib/federal_register/facet/document/agency.rb
173
+ - lib/federal_register/facet/document/daily.rb
174
+ - lib/federal_register/facet/document/frequency.rb
175
+ - lib/federal_register/facet/document/monthly.rb
176
+ - lib/federal_register/facet/document/quarterly.rb
177
+ - lib/federal_register/facet/document/section.rb
178
+ - lib/federal_register/facet/document/topic.rb
179
+ - lib/federal_register/facet/document/type.rb
180
+ - lib/federal_register/facet/document/weekly.rb
181
+ - lib/federal_register/facet/document/yearly.rb
182
+ - lib/federal_register/facet/presidential_document_type.rb
183
+ - lib/federal_register/facet/public_inspection_document.rb
184
+ - lib/federal_register/facet/public_inspection_document/agencies.rb
185
+ - lib/federal_register/facet/public_inspection_document/agency.rb
186
+ - lib/federal_register/facet/public_inspection_document/type.rb
187
+ - lib/federal_register/facet/public_inspection_issue.rb
188
+ - lib/federal_register/facet/public_inspection_issue/daily.rb
189
+ - lib/federal_register/facet/public_inspection_issue/daily_filing.rb
190
+ - lib/federal_register/facet/public_inspection_issue/type.rb
191
+ - lib/federal_register/facet/public_inspection_issue/type_filing.rb
192
+ - lib/federal_register/facet/topic.rb
193
+ - lib/federal_register/facet_result_set.rb
194
+ - lib/federal_register/highlighted_document.rb
136
195
  - lib/federal_register/public_inspection_document.rb
196
+ - lib/federal_register/public_inspection_issue_result_set.rb
137
197
  - lib/federal_register/result_set.rb
198
+ - lib/federal_register/section.rb
199
+ - lib/federal_register/suggested_search.rb
200
+ - lib/federal_register/topic.rb
138
201
  - lib/federal_register/utilities.rb
139
202
  - spec/agency_spec.rb
140
- - spec/article_spec.rb
141
203
  - spec/base_spec.rb
204
+ - spec/document_spec.rb
142
205
  - spec/public_inspection_document_spec.rb
143
206
  - spec/result_set_spec.rb
144
207
  - spec/spec_helper.rb
145
- homepage: http://github.com/criticaljuncture/federal_register
208
+ homepage: http://github.com/usnationalarchives/federal_register
146
209
  licenses:
147
210
  - MIT
148
211
  post_install_message:
@@ -155,9 +218,6 @@ required_ruby_version: !ruby/object:Gem::Requirement
155
218
  - - ! '>='
156
219
  - !ruby/object:Gem::Version
157
220
  version: '0'
158
- segments:
159
- - 0
160
- hash: 2337510225236876614
161
221
  required_rubygems_version: !ruby/object:Gem::Requirement
162
222
  none: false
163
223
  requirements:
@@ -166,7 +226,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
166
226
  version: '0'
167
227
  requirements: []
168
228
  rubyforge_project:
169
- rubygems_version: 1.8.11
229
+ rubygems_version: 1.8.29
170
230
  signing_key:
171
231
  specification_version: 3
172
232
  summary: Ruby API Client for FederalRegister.gov