thirteen_f 0.5.1 → 0.5.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c3ed7ebb2e2cfea6d18e3d1d2e299bc4f5f78d55e38125e5b89d95c83d3097db
4
- data.tar.gz: e41f166c32e1c30a6214bd40845a92f7647a9113565ac7293d4b43dd468e1526
3
+ metadata.gz: 89b2921abd3ae773a2d34c3ddb1551eea71708ecaa4218608a520e84a5e3120d
4
+ data.tar.gz: abc9e19a98b164ce1b72a6da225639209b09cef3837ae2ce33f4f9c9c8b96290
5
5
  SHA512:
6
- metadata.gz: 006aadbbaa7b2aa7df79bedefe4966dc9f5bcc9619a0def79901c6f056bbc74ebcf0a5d76ba58cd9c0d9356ab57a49a8178d2da493e6deb3862379b236ff96cf
7
- data.tar.gz: 137a09503b646f92170a836febcab9607fdc2aba2c2f82c656e2b772bc1975970479bd3cd46d07707f462b19c823546a681ad7f9fc5da4749f27478f8b040c04
6
+ metadata.gz: 8fa4cd7362ab9fb3e68b4e1b1657d9de45e763e5d75eb76327391a84c87904d86dfdb65cfa51b9424fdf1215b0e360058e50cbeb738308048f9f0a8304b0c79a
7
+ data.tar.gz: ae1ed7ffca8fb036fbff8cd7419e6f9ef656063587322e23936c682ebdbe324375203c3b9a1d87ee88c9bb83cfedc7af88ad5191da303d6d773d61b500261653
@@ -51,25 +51,29 @@ class ThirteenF
51
51
  id
52
52
  end
53
53
 
54
+ COLUMN_KEYS = %i(
55
+ accessionNumber
56
+ filingDate
57
+ reportDate
58
+ acceptanceDateTime
59
+ act
60
+ form
61
+ fileNumber
62
+ filmNumber
63
+ items
64
+ size
65
+ isXBRL
66
+ isInlineXBRL
67
+ primaryDocument
68
+ primaryDocDescription
69
+ )
70
+
54
71
  def thirteen_f_filing_data(filings_data)
55
72
  indexes = thirteen_f_indexes(filings_data)
56
73
  indexes.map do |index|
57
- columnar_data = [
58
- filings_data[:accessionNumber][index],
59
- filings_data[:filingDate][index],
60
- filings_data[:reportDate][index],
61
- filings_data[:acceptanceDateTime][index],
62
- filings_data[:act][index],
63
- filings_data[:form][index],
64
- filings_data[:fileNumber][index],
65
- filings_data[:filmNumber][index],
66
- filings_data[:items][index],
67
- filings_data[:size][index],
68
- filings_data[:isXBRL][index],
69
- filings_data[:isInlineXBRL][index],
70
- filings_data[:primaryDocument][index],
71
- filings_data[:primaryDocDescription][index]
72
- ]
74
+ columnar_data = COLUMN_KEYS.map do |key|
75
+ filings_data[key][index]
76
+ end
73
77
  Filing.new self, columnar_data
74
78
  end
75
79
  end
@@ -3,19 +3,36 @@ require 'nokogiri'
3
3
 
4
4
  class ThirteenF
5
5
  class SecRequest
6
- HEADERS = {
7
- 'User-Agent' => 'ThirteenF/v0.5.0 (Open Source Ruby Gem)',
6
+ DATA_HEADERS = {
7
+ 'User-Agent' => 'ThirteenF/v0.5.0 (Open Source Ruby Gem) savannah.fischer@hey.com',
8
+ 'Host' => 'data.sec.gov',
9
+ 'Accept-Encoding' => 'gzip, deflate'
10
+ }
11
+
12
+ WWW_HEADERS = {
13
+ 'User-Agent' => 'ThirteenF/v0.5.0 (Open Source Ruby Gem) savannah.fischer@hey.com',
14
+ 'Host' => 'www.sec.gov'
15
+ }
16
+
17
+ EFTS_HEADERS = {
18
+ 'User-Agent' => 'S Fischer sfischer@fischercompany.com',
8
19
  'Accept-Encoding' => 'gzip, deflate',
9
- 'Accept' => '*/*'
20
+ 'Host' => 'efts.sec.gov'
10
21
  }
11
22
 
12
23
  def self.get(url, response_type: :json)
13
- response = HTTP.use(:auto_inflate).headers(HEADERS).get(url)
14
- handle_response response, response_type: response_type
24
+ case response_type
25
+ when :json
26
+ response = HTTP.use(:auto_inflate).headers(DATA_HEADERS).get(url)
27
+ handle_response response, response_type: response_type
28
+ else
29
+ response = HTTP.use(:auto_inflate).headers(WWW_HEADERS).get(url)
30
+ handle_response response, response_type: response_type
31
+ end
15
32
  end
16
33
 
17
34
  def self.post(url, json)
18
- response = HTTP.use(:auto_inflate).headers(HEADERS).post(url, json: json)
35
+ response = HTTP.use(:auto_inflate).headers(EFTS_HEADERS).post(url, json: json)
19
36
  handle_response response
20
37
  end
21
38
 
@@ -1,3 +1,3 @@
1
1
  class ThirteenF
2
- VERSION = "0.5.1"
2
+ VERSION = "0.5.2"
3
3
  end
data/thirteen_f.gemspec CHANGED
@@ -15,7 +15,7 @@ Gem::Specification.new do |spec|
15
15
  different investors have been doing in US regulated equity markets.}
16
16
  spec.homepage = "https://github.com/savfischer/thirteen_f"
17
17
  spec.license = "MIT"
18
- spec.required_ruby_version = Gem::Requirement.new(">= 2.6.0")
18
+ spec.required_ruby_version = Gem::Requirement.new(">= 3.0")
19
19
 
20
20
  spec.metadata["homepage_uri"] = spec.homepage
21
21
  spec.metadata["source_code_uri"] = "https://github.com/savfischer/thirteen_f"
@@ -34,6 +34,6 @@ Gem::Specification.new do |spec|
34
34
  spec.add_development_dependency "pry"
35
35
 
36
36
  spec.add_runtime_dependency "http", ">= 5.0"
37
- spec.add_runtime_dependency "nokogiri", ">= 1.10"
38
- spec.add_runtime_dependency "pdf-reader", ">= 2.2"
37
+ spec.add_runtime_dependency "nokogiri", ">= 1.13"
38
+ spec.add_runtime_dependency "pdf-reader", ">= 2.10"
39
39
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: thirteen_f
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.1
4
+ version: 0.5.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Savannah Fischer
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2021-07-03 00:00:00.000000000 Z
11
+ date: 2022-06-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: minitest
@@ -58,28 +58,28 @@ dependencies:
58
58
  requirements:
59
59
  - - ">="
60
60
  - !ruby/object:Gem::Version
61
- version: '1.10'
61
+ version: '1.13'
62
62
  type: :runtime
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - ">="
67
67
  - !ruby/object:Gem::Version
68
- version: '1.10'
68
+ version: '1.13'
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: pdf-reader
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
73
  - - ">="
74
74
  - !ruby/object:Gem::Version
75
- version: '2.2'
75
+ version: '2.10'
76
76
  type: :runtime
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
80
  - - ">="
81
81
  - !ruby/object:Gem::Version
82
- version: '2.2'
82
+ version: '2.10'
83
83
  description: |-
84
84
  thirteen_f lets you easily search and retrieve SEC 13F
85
85
  filing data. The SEC is the U.S. Securities and Exchange Commission. 13F
@@ -128,14 +128,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
128
128
  requirements:
129
129
  - - ">="
130
130
  - !ruby/object:Gem::Version
131
- version: 2.6.0
131
+ version: '3.0'
132
132
  required_rubygems_version: !ruby/object:Gem::Requirement
133
133
  requirements:
134
134
  - - ">="
135
135
  - !ruby/object:Gem::Version
136
136
  version: '0'
137
137
  requirements: []
138
- rubygems_version: 3.2.15
138
+ rubygems_version: 3.3.7
139
139
  signing_key:
140
140
  specification_version: 4
141
141
  summary: A ruby interface for S.E.C. 13F Data.