alephant-lookup 2.0.2 → 2.1.0
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 +4 -4
- data/.gitignore +1 -0
- data/.ruby-version +1 -1
- data/.travis.yml +8 -16
- data/alephant-lookup.gemspec +2 -2
- data/lib/alephant/lookup/lookup_query.rb +14 -19
- data/lib/alephant/lookup/lookup_table.rb +9 -13
- data/lib/alephant/lookup/version.rb +1 -1
- data/spec/lookup_spec.rb +15 -32
- data/spec/spec_helper.rb +1 -0
- metadata +97 -97
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a20e83924522b6a80a8042132e7fd59511a7a635
|
4
|
+
data.tar.gz: 651101ad39d0187fba1d05c5d4857ad54d7ce36d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e8d9c2010e6c9b70e20690c38ab6938c0e97c42179d689be18228a776327c3a4deda6f89e1562196537d6f160833e8e8a51a5d8abd7f3a36315ba2a21c9e6439
|
7
|
+
data.tar.gz: 63124e6a099f40062775a0fbd24c72be79e587406e6d4cc6b3fcc162a66fdf0c39c0c5bf67bea3908803cd0a85e967ae8c0597049223713f37145d6911f43cca
|
data/.gitignore
CHANGED
data/.ruby-version
CHANGED
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
2.3.1
|
data/.travis.yml
CHANGED
@@ -1,20 +1,12 @@
|
|
1
|
-
sudo: false
|
2
|
-
cache: bundler
|
3
1
|
language: ruby
|
4
|
-
|
5
|
-
# Ruby build matrix
|
6
2
|
rvm:
|
7
|
-
- 2.
|
8
|
-
-
|
9
|
-
- 2.2
|
10
|
-
- 2.3.0
|
11
|
-
- ruby
|
12
|
-
- jruby
|
13
|
-
|
14
|
-
# Ensure we don't build for *every* commit (doesn't apply to PR builds)
|
15
|
-
branches:
|
16
|
-
only:
|
17
|
-
- master
|
18
|
-
|
3
|
+
- "2.3.1"
|
4
|
+
- "jruby"
|
19
5
|
script:
|
20
6
|
- bundle exec rspec --format documentation
|
7
|
+
notifications:
|
8
|
+
email:
|
9
|
+
recipients:
|
10
|
+
- D&ENewsFrameworksTeam@bbc.co.uk
|
11
|
+
on_failure: change
|
12
|
+
on_success: never
|
data/alephant-lookup.gemspec
CHANGED
@@ -7,7 +7,7 @@ Gem::Specification.new do |spec|
|
|
7
7
|
spec.name = "alephant-lookup"
|
8
8
|
spec.version = Alephant::Lookup::VERSION
|
9
9
|
spec.authors = ["BBC News"]
|
10
|
-
spec.email = ["
|
10
|
+
spec.email = ["D&ENewsFrameworksTeam@bbc.co.uk"]
|
11
11
|
spec.summary = "Lookup a location in S3 using DynamoDB."
|
12
12
|
spec.homepage = "https://github.com/BBC-News/alephant-lookup"
|
13
13
|
spec.license = "MIT"
|
@@ -29,7 +29,7 @@ Gem::Specification.new do |spec|
|
|
29
29
|
spec.add_development_dependency "bundler", "~> 1.5"
|
30
30
|
spec.add_development_dependency "rake"
|
31
31
|
|
32
|
-
spec.add_runtime_dependency "aws-sdk"
|
32
|
+
spec.add_runtime_dependency "aws-sdk-dynamodb"
|
33
33
|
spec.add_runtime_dependency "alephant-logger"
|
34
34
|
spec.add_runtime_dependency "alephant-support"
|
35
35
|
|
@@ -9,9 +9,11 @@ module Alephant
|
|
9
9
|
attr_reader :table_name, :lookup_location
|
10
10
|
|
11
11
|
def initialize(table_name, component_id, opts, batch_version)
|
12
|
-
|
13
|
-
|
14
|
-
@
|
12
|
+
options = {}
|
13
|
+
options[:endpoint] = ENV['AWS_DYNAMO_DB_ENDPOINT'] if ENV['AWS_DYNAMO_DB_ENDPOINT']
|
14
|
+
@client = Aws::DynamoDB::Client.new(options)
|
15
|
+
@table_name = table_name
|
16
|
+
@lookup_location = LookupLocation.new(component_id, opts, batch_version)
|
15
17
|
|
16
18
|
logger.info(
|
17
19
|
"event" => "LookupQueryInitialized",
|
@@ -40,28 +42,21 @@ module Alephant
|
|
40
42
|
private
|
41
43
|
|
42
44
|
def s3_location_from(result)
|
43
|
-
result
|
45
|
+
result.count == 1 ? result.items.first['location'] : nil
|
44
46
|
end
|
45
47
|
|
46
48
|
def to_q
|
47
49
|
{
|
48
50
|
:table_name => table_name,
|
49
51
|
:consistent_read => true,
|
50
|
-
:
|
51
|
-
:
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
},
|
59
|
-
"batch_version" => {
|
60
|
-
:comparison_operator => "EQ",
|
61
|
-
:attribute_value_list => [
|
62
|
-
{ "n" => @lookup_location.batch_version.to_s }
|
63
|
-
]
|
64
|
-
}
|
52
|
+
:projection_expression => '#loc',
|
53
|
+
:expression_attribute_names => {
|
54
|
+
'#loc' => 'location'
|
55
|
+
},
|
56
|
+
:key_condition_expression => 'component_key = :component_key AND batch_version = :batch_version',
|
57
|
+
:expression_attribute_values => {
|
58
|
+
':component_key' => @lookup_location.component_key,
|
59
|
+
':batch_version' => @lookup_location.batch_version.to_i # @TODO: Verify if this is nil as this would be 0
|
65
60
|
}
|
66
61
|
}
|
67
62
|
end
|
@@ -1,4 +1,4 @@
|
|
1
|
-
require "aws-sdk"
|
1
|
+
require "aws-sdk-dynamodb"
|
2
2
|
require "thread"
|
3
3
|
require "timeout"
|
4
4
|
|
@@ -12,8 +12,10 @@ module Alephant
|
|
12
12
|
attr_reader :table_name, :client
|
13
13
|
|
14
14
|
def initialize(table_name)
|
15
|
+
options = {}
|
16
|
+
options.merge!({endpoint: ENV['AWS_DYNAMO_DB_ENDPOINT']}) if ENV['AWS_DYNAMO_DB_ENDPOINT']
|
15
17
|
@mutex = Mutex.new
|
16
|
-
@client =
|
18
|
+
@client = Aws::DynamoDB::Client.new(options)
|
17
19
|
@table_name = table_name
|
18
20
|
logger.info(
|
19
21
|
"event" => "LookupTableInitialized",
|
@@ -24,17 +26,11 @@ module Alephant
|
|
24
26
|
|
25
27
|
def write(component_key, version, location)
|
26
28
|
client.put_item({
|
27
|
-
:
|
28
|
-
:
|
29
|
-
'component_key' =>
|
30
|
-
|
31
|
-
|
32
|
-
'batch_version' => {
|
33
|
-
'N' => version.to_s
|
34
|
-
},
|
35
|
-
'location' => {
|
36
|
-
'S' => location.to_s
|
37
|
-
}
|
29
|
+
table_name: table_name,
|
30
|
+
item: {
|
31
|
+
'component_key' => component_key.to_s,
|
32
|
+
'batch_version' => version,
|
33
|
+
'location' => location.to_s
|
38
34
|
}
|
39
35
|
}).tap do
|
40
36
|
logger.info(
|
data/spec/lookup_spec.rb
CHANGED
@@ -2,9 +2,9 @@ require "spec_helper"
|
|
2
2
|
|
3
3
|
describe Alephant::Lookup do
|
4
4
|
describe ".create" do
|
5
|
-
|
6
|
-
expect_any_instance_of(Alephant::Lookup::LookupHelper).to receive(:initialize)
|
5
|
+
subject { Alephant::Lookup }
|
7
6
|
|
7
|
+
it "returns a lookup" do
|
8
8
|
expect(subject.create(:table_name)).to be_a Alephant::Lookup::LookupHelper
|
9
9
|
end
|
10
10
|
end
|
@@ -23,44 +23,30 @@ describe Alephant::Lookup do
|
|
23
23
|
describe "#read" do
|
24
24
|
let(:expected_query) do
|
25
25
|
{
|
26
|
-
:table_name=>
|
27
|
-
:consistent_read=>true,
|
28
|
-
:
|
29
|
-
:
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
:comparison_operator=>"EQ",
|
37
|
-
:attribute_value_list=>[{"n"=>"0"}]
|
38
|
-
}
|
26
|
+
:table_name => 'table_name',
|
27
|
+
:consistent_read => true,
|
28
|
+
:projection_expression => '#loc',
|
29
|
+
:expression_attribute_names => {
|
30
|
+
'#loc' => 'location'
|
31
|
+
},
|
32
|
+
:key_condition_expression => 'component_key = :component_key AND batch_version = :batch_version',
|
33
|
+
:expression_attribute_values => {
|
34
|
+
':component_key' => 'id/218c835cec343537589dbf1619532e4d',
|
35
|
+
':batch_version' => 0 # @TODO: Verify if this is nil as this would be 0
|
39
36
|
}
|
40
37
|
}
|
41
38
|
end
|
42
39
|
|
43
40
|
it "queries DynamoDb and returns a location when not in cache" do
|
44
|
-
expect_any_instance_of(Dalli::ElastiCache).to receive(:initialize)
|
45
41
|
expect_any_instance_of(Dalli::ElastiCache).to receive(:client).and_return(Dalli::Client.new)
|
46
42
|
|
47
43
|
expect_any_instance_of(Dalli::Client).to receive(:get)
|
48
44
|
expect_any_instance_of(Dalli::Client).to receive(:set)
|
49
45
|
|
50
|
-
expect_any_instance_of(
|
51
|
-
.to receive(:initialize)
|
52
|
-
|
53
|
-
expect_any_instance_of(AWS::DynamoDB::Client::V20120810)
|
46
|
+
expect_any_instance_of(Aws::DynamoDB::Client)
|
54
47
|
.to receive(:query)
|
55
48
|
.with(expected_query)
|
56
|
-
.and_return(
|
57
|
-
{
|
58
|
-
:count => 1,
|
59
|
-
:member => [
|
60
|
-
{ "location" => { :s => "/location" } }
|
61
|
-
]
|
62
|
-
}
|
63
|
-
)
|
49
|
+
.and_return(double(count: 1, items: [{ "location" => "/location"}]))
|
64
50
|
|
65
51
|
table = double().as_null_object
|
66
52
|
expect(table).to receive(:table_name).and_return("table_name").exactly(4).times
|
@@ -76,7 +62,6 @@ describe Alephant::Lookup do
|
|
76
62
|
it "reads location from the cache when in cache" do
|
77
63
|
lookup_location = Alephant::Lookup::LookupLocation.new("id", {:variant => "foo"}, 0, "/location")
|
78
64
|
|
79
|
-
expect_any_instance_of(Dalli::ElastiCache).to receive(:initialize)
|
80
65
|
expect_any_instance_of(Dalli::ElastiCache).to receive(:client).and_return(Dalli::Client.new)
|
81
66
|
|
82
67
|
expect_any_instance_of(Dalli::Client).to receive(:get)
|
@@ -84,9 +69,7 @@ describe Alephant::Lookup do
|
|
84
69
|
.and_return(lookup_location)
|
85
70
|
expect_any_instance_of(Dalli::Client).to_not receive(:set)
|
86
71
|
|
87
|
-
expect_any_instance_of(
|
88
|
-
|
89
|
-
expect_any_instance_of(AWS::DynamoDB::Client::V20120810).to_not receive(:query)
|
72
|
+
expect_any_instance_of(Aws::DynamoDB::Client).to_not receive(:query)
|
90
73
|
|
91
74
|
table = double().as_null_object
|
92
75
|
expect(table).to receive(:table_name).and_return("table_name").twice
|
data/spec/spec_helper.rb
CHANGED
metadata
CHANGED
@@ -1,236 +1,236 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: alephant-lookup
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0
|
4
|
+
version: 2.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- BBC News
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2018-05-16 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rspec
|
15
|
-
version_requirements: !ruby/object:Gem::Requirement
|
16
|
-
requirements:
|
17
|
-
- - '>='
|
18
|
-
- !ruby/object:Gem::Version
|
19
|
-
version: '0'
|
20
15
|
requirement: !ruby/object:Gem::Requirement
|
21
16
|
requirements:
|
22
|
-
- -
|
17
|
+
- - ">="
|
23
18
|
- !ruby/object:Gem::Version
|
24
19
|
version: '0'
|
25
|
-
prerelease: false
|
26
20
|
type: :development
|
27
|
-
|
28
|
-
name: rspec-nc
|
21
|
+
prerelease: false
|
29
22
|
version_requirements: !ruby/object:Gem::Requirement
|
30
23
|
requirements:
|
31
|
-
- -
|
24
|
+
- - ">="
|
32
25
|
- !ruby/object:Gem::Version
|
33
26
|
version: '0'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: rspec-nc
|
34
29
|
requirement: !ruby/object:Gem::Requirement
|
35
30
|
requirements:
|
36
|
-
- -
|
31
|
+
- - ">="
|
37
32
|
- !ruby/object:Gem::Version
|
38
33
|
version: '0'
|
39
|
-
prerelease: false
|
40
34
|
type: :development
|
41
|
-
|
42
|
-
name: guard
|
35
|
+
prerelease: false
|
43
36
|
version_requirements: !ruby/object:Gem::Requirement
|
44
37
|
requirements:
|
45
|
-
- -
|
38
|
+
- - ">="
|
46
39
|
- !ruby/object:Gem::Version
|
47
40
|
version: '0'
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: guard
|
48
43
|
requirement: !ruby/object:Gem::Requirement
|
49
44
|
requirements:
|
50
|
-
- -
|
45
|
+
- - ">="
|
51
46
|
- !ruby/object:Gem::Version
|
52
47
|
version: '0'
|
53
|
-
prerelease: false
|
54
48
|
type: :development
|
55
|
-
|
56
|
-
name: guard-rspec
|
49
|
+
prerelease: false
|
57
50
|
version_requirements: !ruby/object:Gem::Requirement
|
58
51
|
requirements:
|
59
|
-
- -
|
52
|
+
- - ">="
|
60
53
|
- !ruby/object:Gem::Version
|
61
54
|
version: '0'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: guard-rspec
|
62
57
|
requirement: !ruby/object:Gem::Requirement
|
63
58
|
requirements:
|
64
|
-
- -
|
59
|
+
- - ">="
|
65
60
|
- !ruby/object:Gem::Version
|
66
61
|
version: '0'
|
67
|
-
prerelease: false
|
68
62
|
type: :development
|
69
|
-
|
70
|
-
name: pry
|
63
|
+
prerelease: false
|
71
64
|
version_requirements: !ruby/object:Gem::Requirement
|
72
65
|
requirements:
|
73
|
-
- -
|
66
|
+
- - ">="
|
74
67
|
- !ruby/object:Gem::Version
|
75
68
|
version: '0'
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: pry
|
76
71
|
requirement: !ruby/object:Gem::Requirement
|
77
72
|
requirements:
|
78
|
-
- -
|
73
|
+
- - ">="
|
79
74
|
- !ruby/object:Gem::Version
|
80
75
|
version: '0'
|
81
|
-
prerelease: false
|
82
76
|
type: :development
|
83
|
-
|
84
|
-
name: pry-remote
|
77
|
+
prerelease: false
|
85
78
|
version_requirements: !ruby/object:Gem::Requirement
|
86
79
|
requirements:
|
87
|
-
- -
|
80
|
+
- - ">="
|
88
81
|
- !ruby/object:Gem::Version
|
89
82
|
version: '0'
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: pry-remote
|
90
85
|
requirement: !ruby/object:Gem::Requirement
|
91
86
|
requirements:
|
92
|
-
- -
|
87
|
+
- - ">="
|
93
88
|
- !ruby/object:Gem::Version
|
94
89
|
version: '0'
|
95
|
-
prerelease: false
|
96
90
|
type: :development
|
97
|
-
|
98
|
-
name: pry-nav
|
91
|
+
prerelease: false
|
99
92
|
version_requirements: !ruby/object:Gem::Requirement
|
100
93
|
requirements:
|
101
|
-
- -
|
94
|
+
- - ">="
|
102
95
|
- !ruby/object:Gem::Version
|
103
96
|
version: '0'
|
97
|
+
- !ruby/object:Gem::Dependency
|
98
|
+
name: pry-nav
|
104
99
|
requirement: !ruby/object:Gem::Requirement
|
105
100
|
requirements:
|
106
|
-
- -
|
101
|
+
- - ">="
|
107
102
|
- !ruby/object:Gem::Version
|
108
103
|
version: '0'
|
109
|
-
prerelease: false
|
110
104
|
type: :development
|
111
|
-
|
112
|
-
name: listen
|
105
|
+
prerelease: false
|
113
106
|
version_requirements: !ruby/object:Gem::Requirement
|
114
107
|
requirements:
|
115
|
-
- -
|
108
|
+
- - ">="
|
116
109
|
- !ruby/object:Gem::Version
|
117
|
-
version:
|
110
|
+
version: '0'
|
111
|
+
- !ruby/object:Gem::Dependency
|
112
|
+
name: listen
|
118
113
|
requirement: !ruby/object:Gem::Requirement
|
119
114
|
requirements:
|
120
|
-
- - <=
|
115
|
+
- - "<="
|
121
116
|
- !ruby/object:Gem::Version
|
122
117
|
version: 3.0.8
|
123
|
-
prerelease: false
|
124
118
|
type: :development
|
125
|
-
|
126
|
-
name: bundler
|
119
|
+
prerelease: false
|
127
120
|
version_requirements: !ruby/object:Gem::Requirement
|
128
121
|
requirements:
|
129
|
-
- -
|
122
|
+
- - "<="
|
130
123
|
- !ruby/object:Gem::Version
|
131
|
-
version:
|
124
|
+
version: 3.0.8
|
125
|
+
- !ruby/object:Gem::Dependency
|
126
|
+
name: bundler
|
132
127
|
requirement: !ruby/object:Gem::Requirement
|
133
128
|
requirements:
|
134
|
-
- - ~>
|
129
|
+
- - "~>"
|
135
130
|
- !ruby/object:Gem::Version
|
136
131
|
version: '1.5'
|
137
|
-
prerelease: false
|
138
132
|
type: :development
|
139
|
-
|
140
|
-
name: rake
|
133
|
+
prerelease: false
|
141
134
|
version_requirements: !ruby/object:Gem::Requirement
|
142
135
|
requirements:
|
143
|
-
- -
|
136
|
+
- - "~>"
|
144
137
|
- !ruby/object:Gem::Version
|
145
|
-
version: '
|
138
|
+
version: '1.5'
|
139
|
+
- !ruby/object:Gem::Dependency
|
140
|
+
name: rake
|
146
141
|
requirement: !ruby/object:Gem::Requirement
|
147
142
|
requirements:
|
148
|
-
- -
|
143
|
+
- - ">="
|
149
144
|
- !ruby/object:Gem::Version
|
150
145
|
version: '0'
|
151
|
-
prerelease: false
|
152
146
|
type: :development
|
153
|
-
|
154
|
-
name: aws-sdk
|
147
|
+
prerelease: false
|
155
148
|
version_requirements: !ruby/object:Gem::Requirement
|
156
149
|
requirements:
|
157
|
-
- -
|
150
|
+
- - ">="
|
158
151
|
- !ruby/object:Gem::Version
|
159
|
-
version: '
|
152
|
+
version: '0'
|
153
|
+
- !ruby/object:Gem::Dependency
|
154
|
+
name: aws-sdk-dynamodb
|
160
155
|
requirement: !ruby/object:Gem::Requirement
|
161
156
|
requirements:
|
162
|
-
- -
|
157
|
+
- - ">="
|
163
158
|
- !ruby/object:Gem::Version
|
164
|
-
version: '
|
165
|
-
prerelease: false
|
159
|
+
version: '0'
|
166
160
|
type: :runtime
|
167
|
-
|
168
|
-
name: alephant-logger
|
161
|
+
prerelease: false
|
169
162
|
version_requirements: !ruby/object:Gem::Requirement
|
170
163
|
requirements:
|
171
|
-
- -
|
164
|
+
- - ">="
|
172
165
|
- !ruby/object:Gem::Version
|
173
166
|
version: '0'
|
167
|
+
- !ruby/object:Gem::Dependency
|
168
|
+
name: alephant-logger
|
174
169
|
requirement: !ruby/object:Gem::Requirement
|
175
170
|
requirements:
|
176
|
-
- -
|
171
|
+
- - ">="
|
177
172
|
- !ruby/object:Gem::Version
|
178
173
|
version: '0'
|
179
|
-
prerelease: false
|
180
174
|
type: :runtime
|
181
|
-
|
182
|
-
name: alephant-support
|
175
|
+
prerelease: false
|
183
176
|
version_requirements: !ruby/object:Gem::Requirement
|
184
177
|
requirements:
|
185
|
-
- -
|
178
|
+
- - ">="
|
186
179
|
- !ruby/object:Gem::Version
|
187
180
|
version: '0'
|
181
|
+
- !ruby/object:Gem::Dependency
|
182
|
+
name: alephant-support
|
188
183
|
requirement: !ruby/object:Gem::Requirement
|
189
184
|
requirements:
|
190
|
-
- -
|
185
|
+
- - ">="
|
191
186
|
- !ruby/object:Gem::Version
|
192
187
|
version: '0'
|
193
|
-
prerelease: false
|
194
188
|
type: :runtime
|
195
|
-
|
196
|
-
name: dalli-elasticache
|
189
|
+
prerelease: false
|
197
190
|
version_requirements: !ruby/object:Gem::Requirement
|
198
191
|
requirements:
|
199
|
-
- -
|
192
|
+
- - ">="
|
200
193
|
- !ruby/object:Gem::Version
|
201
194
|
version: '0'
|
195
|
+
- !ruby/object:Gem::Dependency
|
196
|
+
name: dalli-elasticache
|
202
197
|
requirement: !ruby/object:Gem::Requirement
|
203
198
|
requirements:
|
204
|
-
- -
|
199
|
+
- - ">="
|
205
200
|
- !ruby/object:Gem::Version
|
206
201
|
version: '0'
|
207
|
-
prerelease: false
|
208
202
|
type: :runtime
|
209
|
-
|
210
|
-
name: crimp
|
203
|
+
prerelease: false
|
211
204
|
version_requirements: !ruby/object:Gem::Requirement
|
212
205
|
requirements:
|
213
|
-
- -
|
206
|
+
- - ">="
|
214
207
|
- !ruby/object:Gem::Version
|
215
208
|
version: '0'
|
209
|
+
- !ruby/object:Gem::Dependency
|
210
|
+
name: crimp
|
216
211
|
requirement: !ruby/object:Gem::Requirement
|
217
212
|
requirements:
|
218
|
-
- -
|
213
|
+
- - ">="
|
219
214
|
- !ruby/object:Gem::Version
|
220
215
|
version: '0'
|
221
|
-
prerelease: false
|
222
216
|
type: :runtime
|
223
|
-
|
217
|
+
prerelease: false
|
218
|
+
version_requirements: !ruby/object:Gem::Requirement
|
219
|
+
requirements:
|
220
|
+
- - ">="
|
221
|
+
- !ruby/object:Gem::Version
|
222
|
+
version: '0'
|
223
|
+
description:
|
224
224
|
email:
|
225
|
-
-
|
225
|
+
- D&ENewsFrameworksTeam@bbc.co.uk
|
226
226
|
executables: []
|
227
227
|
extensions: []
|
228
228
|
extra_rdoc_files: []
|
229
229
|
files:
|
230
|
-
- .gitignore
|
231
|
-
- .hound.yml
|
232
|
-
- .ruby-version
|
233
|
-
- .travis.yml
|
230
|
+
- ".gitignore"
|
231
|
+
- ".hound.yml"
|
232
|
+
- ".ruby-version"
|
233
|
+
- ".travis.yml"
|
234
234
|
- Gemfile
|
235
235
|
- Guardfile
|
236
236
|
- LICENSE.txt
|
@@ -250,24 +250,24 @@ homepage: https://github.com/BBC-News/alephant-lookup
|
|
250
250
|
licenses:
|
251
251
|
- MIT
|
252
252
|
metadata: {}
|
253
|
-
post_install_message:
|
253
|
+
post_install_message:
|
254
254
|
rdoc_options: []
|
255
255
|
require_paths:
|
256
256
|
- lib
|
257
257
|
required_ruby_version: !ruby/object:Gem::Requirement
|
258
258
|
requirements:
|
259
|
-
- -
|
259
|
+
- - ">="
|
260
260
|
- !ruby/object:Gem::Version
|
261
261
|
version: '0'
|
262
262
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
263
263
|
requirements:
|
264
|
-
- -
|
264
|
+
- - ">="
|
265
265
|
- !ruby/object:Gem::Version
|
266
266
|
version: '0'
|
267
267
|
requirements: []
|
268
|
-
rubyforge_project:
|
269
|
-
rubygems_version: 2.
|
270
|
-
signing_key:
|
268
|
+
rubyforge_project:
|
269
|
+
rubygems_version: 2.6.12
|
270
|
+
signing_key:
|
271
271
|
specification_version: 4
|
272
272
|
summary: Lookup a location in S3 using DynamoDB.
|
273
273
|
test_files:
|