mymedia 0.2.14 → 0.3.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- checksums.yaml.gz.sig +0 -0
- data/lib/mymedia.rb +146 -97
- data.tar.gz.sig +0 -0
- metadata +52 -47
- metadata.gz.sig +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 6fc78e7e213ed935fdffc733862d520abb3b0c7d1dc3afde43905372e8bfd427
|
4
|
+
data.tar.gz: fdae3bd4aeeb04d230dbe95b67700b68fe2ec92a09292124e912bc66285a1937
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ee00e96ba62317e509b44024544885deae61cebbc973fd62417106bd56f6c025eba8aac5c6baa658ad965bff9be1d37501a8a8be2716e5d36f37b21d4cf88692
|
7
|
+
data.tar.gz: 0a4ed8e0eb86dccf1e6603d9f6a0b7bc78acbb3e864706c2e61724d46d1a925e520e84d94dfb111f4193b46615af9cc5132868f93f2c9d79c0c47272e0edd44b
|
checksums.yaml.gz.sig
CHANGED
Binary file
|
data/lib/mymedia.rb
CHANGED
@@ -17,20 +17,20 @@ module MyMedia
|
|
17
17
|
|
18
18
|
class MyMediaPublisherException < Exception
|
19
19
|
end
|
20
|
-
|
21
|
-
|
20
|
+
|
21
|
+
|
22
22
|
class Publisher
|
23
|
-
|
23
|
+
|
24
24
|
def initialize(opts={})
|
25
25
|
@index_page = true
|
26
26
|
@opts = opts
|
27
27
|
end
|
28
|
-
|
28
|
+
|
29
29
|
protected
|
30
|
-
|
30
|
+
|
31
31
|
def publish_dynarex(dynarex_filepath='', \
|
32
32
|
record={title: '',url: '', raw_url: ''}, options={})
|
33
|
-
|
33
|
+
|
34
34
|
opt = {id: nil, rss: false}.merge(options)
|
35
35
|
|
36
36
|
dynarex = if File.exists? dynarex_filepath then
|
@@ -43,143 +43,190 @@ module MyMedia
|
|
43
43
|
dynarex.save dynarex_filepath
|
44
44
|
publish_html(dynarex_filepath) if @index_page == true
|
45
45
|
|
46
|
-
|
46
|
+
|
47
47
|
if opt[:rss] == true then
|
48
48
|
|
49
49
|
dynarex.xslt_schema = dynarex.summary[:xslt_schema]
|
50
50
|
rss_filepath = dynarex_filepath.sub(/\.xml$/,'_rss.xml')
|
51
|
-
File.open(rss_filepath, 'w'){|f| f.write dynarex.to_rss }
|
51
|
+
File.open(rss_filepath, 'w'){|f| f.write dynarex.to_rss }
|
52
52
|
end
|
53
53
|
|
54
54
|
end
|
55
55
|
|
56
56
|
def publish_html(filepath)
|
57
57
|
|
58
|
-
path2 = File.dirname(filepath)
|
58
|
+
path2 = File.dirname(filepath)
|
59
59
|
template_path = File.join path2, 'index-template.html'
|
60
60
|
|
61
|
-
return unless @index_page == true
|
61
|
+
return unless @index_page == true
|
62
62
|
raise MyMediaPublisherException, \
|
63
63
|
"template path: #{template_path} not found" unless \
|
64
64
|
File.exists?(template_path)
|
65
|
-
=begin jr 040916
|
65
|
+
=begin jr 040916
|
66
66
|
dataisland = DataIsland.new(template_path, @opts)
|
67
67
|
|
68
68
|
File.open(path2 + '/index.html','w'){|f| f.write dataisland.html_doc.xml pretty: true}
|
69
|
-
=end
|
70
|
-
end
|
69
|
+
=end
|
70
|
+
end
|
71
|
+
|
72
|
+
def publish_dxlite(dynarex_filepath='', record={title: '',url: ''})
|
73
|
+
|
74
|
+
dynarex = if File.exists? dynarex_filepath then
|
75
|
+
DxLite.new(dynarex_filepath)
|
76
|
+
else
|
77
|
+
DxLite.new(@schema)
|
78
|
+
end
|
79
|
+
|
80
|
+
dynarex.create record
|
81
|
+
dynarex.save dynarex_filepath
|
82
|
+
end
|
71
83
|
|
72
84
|
def send_message(topic: @sps[:default_subscriber], msg: '')
|
73
85
|
|
74
|
-
fqm = "%s: %s" % [topic, msg]
|
86
|
+
fqm = "%s: %s" % [topic, msg]
|
75
87
|
|
76
88
|
SPSPub.notice fqm, address: @sps[:address]
|
77
|
-
sleep 0.
|
78
|
-
end
|
79
|
-
|
89
|
+
sleep 0.3
|
90
|
+
end
|
91
|
+
|
92
|
+
end
|
93
|
+
|
94
|
+
module IndexReader
|
95
|
+
|
96
|
+
def browse()
|
97
|
+
|
98
|
+
json_filepath = "%s/%s/dynarex.json" % [@home, @public_type]
|
99
|
+
|
100
|
+
if File.exists? json_filepath then
|
101
|
+
|
102
|
+
dx = DxLite.new(json_filepath)
|
103
|
+
return dx.all
|
104
|
+
|
105
|
+
end
|
106
|
+
|
107
|
+
end
|
108
|
+
|
109
|
+
def search(keyword)
|
110
|
+
|
111
|
+
json_filepath = "%s/%s/dynarex.json" % [@home, @public_type]
|
112
|
+
|
113
|
+
if File.exists? json_filepath then
|
114
|
+
|
115
|
+
dx = DxLite.new(json_filepath)
|
116
|
+
return dx.all.select {|x| x.title =~ /#{keyword}/i}
|
117
|
+
|
118
|
+
end
|
119
|
+
|
120
|
+
end
|
80
121
|
end
|
81
|
-
|
122
|
+
|
82
123
|
class BaseException < Exception
|
83
124
|
end
|
84
|
-
|
125
|
+
|
85
126
|
class Base < Publisher
|
86
127
|
|
87
128
|
attr_reader :to_s
|
88
129
|
|
89
|
-
def initialize(media_type: 'blog', public_type: 'blog',
|
90
|
-
ext: 'txt', config: nil, log: nil)
|
130
|
+
def initialize(media_type: 'blog', public_type: 'blog',
|
131
|
+
ext: 'txt', config: nil, log: nil, debug: false)
|
91
132
|
|
92
|
-
super()
|
133
|
+
super()
|
93
134
|
|
94
|
-
@schema = 'posts/post(title, url, raw_url)'
|
135
|
+
@schema = 'posts/post(title, url, raw_url)'
|
95
136
|
|
96
137
|
raise BaseException, "no config found" if config.nil?
|
97
138
|
|
98
139
|
c = SimpleConfig.new(config).to_h
|
99
|
-
|
140
|
+
|
100
141
|
@home = c[:home]
|
101
|
-
@
|
142
|
+
@media_src = "%s/media/%s" % [@home, media_type]
|
143
|
+
@website = c[:website]
|
102
144
|
|
103
145
|
@dynamic_website = c[:dynamic_website]
|
104
146
|
@www = c[:www]
|
105
147
|
@domain = @website[/[^\.]+\.[^\.]+$/]
|
106
148
|
|
107
149
|
@sps = c[:sps]
|
108
|
-
|
150
|
+
|
109
151
|
@log = log
|
110
152
|
|
111
153
|
|
112
154
|
@media_type = media_type
|
113
155
|
@public_type = public_type ||= @media_type
|
114
|
-
|
156
|
+
|
115
157
|
@xslt_schema = 'channel[title:title,description:desc]/' + \
|
116
158
|
'item(title:title,link:url)'
|
117
159
|
@ext = ext
|
118
160
|
@rss = false
|
119
|
-
|
161
|
+
@debug = debug
|
162
|
+
|
120
163
|
Dir.chdir @home
|
121
164
|
|
122
165
|
end
|
123
|
-
|
166
|
+
|
124
167
|
def add_feed_item(raw_msg, record, options={})
|
125
|
-
|
126
|
-
dynarex_filepath = File.join([@home, @public_type, 'dynarex.xml'])
|
127
|
-
id = Increment.update(File.join([@home, @public_type, 'counter.txt']))
|
168
|
+
|
169
|
+
dynarex_filepath = File.join([@home, @public_type, 'dynarex.xml'])
|
170
|
+
id = Increment.update(File.join([@home, @public_type, 'counter.txt']))
|
128
171
|
static_url = @static_baseurl + id
|
129
172
|
record[:uri] = static_url
|
130
|
-
|
131
|
-
publish_dynarex(dynarex_filepath, record, {id: id}.merge(options))
|
132
|
-
publish_timeline(raw_msg, static_url)
|
133
|
-
publish_html(@home + '/index.html')
|
134
|
-
end
|
135
173
|
|
136
|
-
|
174
|
+
publish_dynarex(dynarex_filepath, record, {id: id}.merge(options))
|
175
|
+
publish_timeline(raw_msg, static_url)
|
176
|
+
publish_html(@home + '/index.html')
|
177
|
+
end
|
137
178
|
|
138
|
-
|
179
|
+
def auto_copy_publish(raw_msg='', &blk)
|
139
180
|
|
181
|
+
@log.info 'Base inside auto_copy_publish' if @log
|
182
|
+
puts '@media_src: ' + @media_src.inspect if @debug
|
183
|
+
#exit
|
184
|
+
dir = DirToXML.new(@media_src, recursive: true, debug: false)
|
185
|
+
puts 'before dir.last_modified' if @debug
|
140
186
|
r = dir.last_modified
|
187
|
+
puts 'r: ' + r.inspect if @debug
|
141
188
|
|
142
189
|
filename = r.is_a?(Hash) ? r[:name] : File.join(r.map {|x| x[:name]})
|
143
190
|
|
144
|
-
copy_publish( filename ,raw_msg)
|
191
|
+
copy_publish( filename ,raw_msg, &blk)
|
145
192
|
|
146
193
|
end
|
147
|
-
|
194
|
+
|
148
195
|
def basename(s1, s2)
|
149
196
|
|
150
197
|
(s2.split('/') - s1.split('/')).join('/')
|
151
198
|
|
152
|
-
end
|
153
|
-
|
154
|
-
def copy_publish(filename, raw_msg='')
|
199
|
+
end
|
200
|
+
|
201
|
+
def copy_publish(filename, raw_msg='', &blk)
|
155
202
|
file_publish(File.join(@media_src,filename), raw_msg)
|
156
203
|
end
|
157
|
-
|
204
|
+
|
158
205
|
|
159
206
|
private
|
160
|
-
|
207
|
+
|
161
208
|
def file_publish(src_path, raw_msg='')
|
162
209
|
|
163
210
|
#raise @logger.debug("source file '%s' not found" % src_path) unless File.exists? src_path
|
164
211
|
ext = File.extname(src_path)
|
165
212
|
@target_ext ||= ext
|
166
|
-
|
213
|
+
|
167
214
|
public_path = "%s/%s/%shrs%s" % [@public_type, \
|
168
|
-
Time.now.strftime('%Y/%b/%d').downcase, Time.now.strftime('%H%M'),
|
215
|
+
Time.now.strftime('%Y/%b/%d').downcase, Time.now.strftime('%H%M'),
|
169
216
|
@target_ext]
|
170
217
|
|
171
218
|
public_path2 = "%s/%s/%shrs%s%s" % [@public_type, \
|
172
|
-
Time.now.strftime('%Y/%b/%d').downcase, Time.now.strftime('%H%M'),
|
219
|
+
Time.now.strftime('%Y/%b/%d').downcase, Time.now.strftime('%H%M'),
|
173
220
|
Time.now.strftime('%S%2N'), @target_ext]
|
174
|
-
|
221
|
+
|
175
222
|
raw_destination = "%s/%s/%s" % [@home, 'r', public_path]
|
176
|
-
|
223
|
+
|
177
224
|
if File.exists? raw_destination then
|
178
225
|
raw_destination = "%s/%s/%s" % [@home, 'r', public_path2]
|
179
226
|
public_path = public_path2
|
180
227
|
end
|
181
228
|
|
182
|
-
destination =
|
229
|
+
destination = File.join(@home, public_path)
|
183
230
|
FileUtils.mkdir_p File.dirname(raw_destination)
|
184
231
|
FileUtils.mkdir_p File.dirname(destination)
|
185
232
|
|
@@ -187,31 +234,31 @@ module MyMedia
|
|
187
234
|
|
188
235
|
raw_msg = src_path[/([^\/]+)\.\w+$/,1] + ' ' + raw_msg if raw_msg[/^#/]
|
189
236
|
|
190
|
-
|
237
|
+
|
191
238
|
if block_given? then
|
192
|
-
raw_msg, target_url = yield(destination, raw_destination)
|
239
|
+
raw_msg, target_url = yield(destination, raw_destination)
|
193
240
|
static_url = target_url
|
194
241
|
else
|
195
242
|
FileUtils.cp src_path, destination
|
196
243
|
FileUtils.cp src_path, raw_destination
|
197
244
|
end
|
198
245
|
|
199
|
-
raw_msg = raw_msg.join if raw_msg.is_a? Array
|
246
|
+
raw_msg = raw_msg.join if raw_msg.is_a? Array
|
200
247
|
|
201
248
|
static_filename = if raw_msg.to_s.length > 0 then
|
202
249
|
normalize(raw_msg) + File.extname(destination)
|
203
250
|
else
|
204
|
-
|
251
|
+
|
205
252
|
basename(@media_src, src_path)
|
206
|
-
|
207
|
-
end
|
208
|
-
|
253
|
+
|
254
|
+
end
|
255
|
+
|
209
256
|
static_path = "%s/%s/%s" % [@public_type, \
|
210
257
|
Time.now.strftime('%Y/%b/%d').downcase, static_filename]
|
211
|
-
|
258
|
+
|
212
259
|
raw_static_destination = "%s/%s/%s" % [@home, 'r',static_path]
|
213
260
|
|
214
|
-
static_destination = "%s/%s" % [@home, static_path]
|
261
|
+
static_destination = "%s/%s" % [@home, static_path]
|
215
262
|
|
216
263
|
#FileUtils.mkdir_p File.dirname(static_destination)
|
217
264
|
FileUtils.cp destination, static_destination
|
@@ -222,46 +269,46 @@ module MyMedia
|
|
222
269
|
if File.extname(static_destination) == '.html' then
|
223
270
|
|
224
271
|
xmlfilepath = destination.sub('.html','.xml')
|
225
|
-
|
272
|
+
|
226
273
|
if File.exists?(xmlfilepath) then
|
227
274
|
FileUtils.cp xmlfilepath, static_destination.sub('.html','.xml')
|
228
275
|
end
|
229
276
|
|
230
277
|
end
|
231
|
-
|
278
|
+
|
232
279
|
target_url ||= "%s/%s" % [@website, public_path]
|
233
280
|
static_url ||= "%s/%s" % [@website, static_path]
|
234
281
|
|
235
282
|
msg = "%s %s" % [target_url, raw_msg ]
|
236
|
-
|
237
|
-
sps_message = ['publish', @public_type,
|
283
|
+
|
284
|
+
sps_message = ['publish', @public_type,
|
238
285
|
target_url, static_url, raw_msg]
|
239
286
|
|
240
287
|
send_message(msg: sps_message.join(' '))
|
241
288
|
|
242
289
|
static_url
|
243
|
-
|
290
|
+
|
244
291
|
end
|
245
|
-
|
292
|
+
|
246
293
|
def normalize(s)
|
247
294
|
|
248
295
|
r = s.downcase.gsub(/\s#\w+/,'').strip.gsub(/\W/,'-').gsub(/-{2,}/,'-').gsub(/^-|-$/,'')
|
249
296
|
return s.scan(/#(\w+)/)[0..1].join('_').downcase if r.empty?
|
250
|
-
return r
|
251
|
-
end
|
297
|
+
return r
|
298
|
+
end
|
252
299
|
|
253
300
|
end
|
254
|
-
|
255
|
-
|
301
|
+
|
302
|
+
|
256
303
|
class FrontpageException < Exception
|
257
304
|
end
|
258
|
-
|
305
|
+
|
259
306
|
class Frontpage < Publisher
|
260
|
-
|
307
|
+
|
261
308
|
def initialize(config: nil, public_type: '', rss: nil)
|
262
|
-
|
309
|
+
|
263
310
|
raise FrontpageException, "no config found" if config.nil?
|
264
|
-
|
311
|
+
|
265
312
|
c = SimpleConfig.new(config).to_h
|
266
313
|
|
267
314
|
@home = c[:home]
|
@@ -270,18 +317,20 @@ module MyMedia
|
|
270
317
|
@rss = rss
|
271
318
|
@sps = c[:sps]
|
272
319
|
@opts = {username: c[:username], password: c[:password]}
|
273
|
-
|
320
|
+
|
274
321
|
end
|
275
|
-
|
276
|
-
def publish_frontpage(s='index.html')
|
277
322
|
|
278
|
-
|
323
|
+
def publish_frontpage(s='index.html')
|
324
|
+
|
325
|
+
publish_html(@home + '/' + s)
|
279
326
|
'frontpage published'
|
280
|
-
end
|
327
|
+
end
|
328
|
+
|
281
329
|
|
282
|
-
|
283
330
|
def publish_to_lists(record={}, public_type=nil)
|
284
|
-
|
331
|
+
|
332
|
+
@log.info 'inside publish_to_lists' if @log
|
333
|
+
|
285
334
|
@public_type = public_type if public_type
|
286
335
|
|
287
336
|
raw_msg, static_url, target_url = \
|
@@ -291,33 +340,33 @@ module MyMedia
|
|
291
340
|
raw_dynarex_filepath = "%s/r/%s/dynarex.xml" % [@home, @public_type]
|
292
341
|
|
293
342
|
|
294
|
-
publish_dynarex(dynarex_filepath, record, {rss: @rss || false})
|
295
|
-
publish_dynarex(raw_dynarex_filepath, record, {rss: @rss || false})
|
343
|
+
publish_dynarex(dynarex_filepath, record, {rss: @rss || false})
|
344
|
+
publish_dynarex(raw_dynarex_filepath, record, {rss: @rss || false})
|
296
345
|
|
297
|
-
publish_timeline(raw_msg, static_url, target_url)
|
346
|
+
publish_timeline(raw_msg, static_url, target_url)
|
298
347
|
send_message(msg: 'publish_to_lists completed')
|
299
|
-
|
348
|
+
|
300
349
|
end
|
301
350
|
|
302
|
-
|
351
|
+
|
303
352
|
def publish_timeline(raw_msg, static_url, target_url='')
|
304
353
|
|
305
|
-
timeline_filepath = "%s/timeline/dynarex.xml" % @home
|
306
|
-
record = Dynarex.new(@home + '/dynarex/main-directory.xml').find_by_title(@public_type)
|
354
|
+
timeline_filepath = "%s/timeline/dynarex.xml" % @home
|
355
|
+
record = Dynarex.new(@home + '/dynarex/main-directory.xml').find_by_title(@public_type)
|
307
356
|
|
308
357
|
thumbnail, subject_url = record.thumbnail, record.url
|
309
|
-
|
358
|
+
|
310
359
|
content = {
|
311
|
-
title: raw_msg,
|
360
|
+
title: raw_msg,
|
312
361
|
url: static_url,
|
313
|
-
thumbnail: thumbnail,
|
314
|
-
subject_url: subject_url,
|
315
|
-
raw_url: target_url
|
362
|
+
thumbnail: thumbnail,
|
363
|
+
subject_url: subject_url,
|
364
|
+
raw_url: target_url
|
316
365
|
}
|
317
|
-
|
318
|
-
publish_dynarex(timeline_filepath, content, rss: true)
|
319
366
|
|
320
|
-
|
367
|
+
publish_dynarex(timeline_filepath, content, rss: true)
|
368
|
+
|
369
|
+
end
|
321
370
|
|
322
371
|
end
|
323
372
|
end
|
data.tar.gz.sig
CHANGED
Binary file
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: mymedia
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- James Robertson
|
@@ -10,27 +10,32 @@ bindir: bin
|
|
10
10
|
cert_chain:
|
11
11
|
- |
|
12
12
|
-----BEGIN CERTIFICATE-----
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
+
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
13
|
+
MIIEXjCCAsagAwIBAgIBATANBgkqhkiG9w0BAQsFADAsMSowKAYDVQQDDCFnZW1t
|
14
|
+
YXN0ZXIvREM9amFtZXNyb2JlcnRzb24vREM9ZXUwHhcNMjIwMjAzMjE0MDM4WhcN
|
15
|
+
MjMwMjAzMjE0MDM4WjAsMSowKAYDVQQDDCFnZW1tYXN0ZXIvREM9amFtZXNyb2Jl
|
16
|
+
cnRzb24vREM9ZXUwggGiMA0GCSqGSIb3DQEBAQUAA4IBjwAwggGKAoIBgQDLhnus
|
17
|
+
EmCSf8Mh4kdpLThgpsLS0N/kupJ35qxUqlluM0Treka8rn+Xv+su5eGY7bwT1lis
|
18
|
+
4rNk+H/YxNqm+7JoleqcdygCSMJju75WILEAuPtaZJbIlHiwlboe2P1Q/Q0qjYV4
|
19
|
+
5Hod6xYAFzjx4NRTCfRwvFjyXrvUJK/CgUWgDLraQEM4iQTWpxp+oIDsQIV5DLn7
|
20
|
+
wv4u+RKVrcHZkeu1r+vt/KBm9qNh2cK/kGw96tylW4/6sSTaPNNY9dvYx2Ee04jf
|
21
|
+
GTuxXBqtyvDKOfQAI/sWQ5J94+uIppx2dDL3eSEYfl2V8CwWVZxx3dETJ8M1fG6M
|
22
|
+
CMA+15zld92rCvGYsLh4jkZnyCt2l1O6IYMW/gAScwgzvlC01U2vV2P+8bwm17Un
|
23
|
+
pWP2FbNiihwZD7mdyKbi8noCeWrompgX5+hJZumFlsqld5XhoaPwQB6VNgVCxtOG
|
24
|
+
ZHXdP6MiTPhH0t6XVmRSMX+zEedaoL2Z2OxaBAM9abkOJ8kNtI3pqqVkQmkCAwEA
|
25
|
+
AaOBijCBhzAJBgNVHRMEAjAAMAsGA1UdDwQEAwIEsDAdBgNVHQ4EFgQUTUv11jAO
|
26
|
+
mX0Ta1tkNdz9cHZLKZowJgYDVR0RBB8wHYEbZ2VtbWFzdGVyQGphbWVzcm9iZXJ0
|
27
|
+
c29uLmV1MCYGA1UdEgQfMB2BG2dlbW1hc3RlckBqYW1lc3JvYmVydHNvbi5ldTAN
|
28
|
+
BgkqhkiG9w0BAQsFAAOCAYEARdXjjSCHczpSquJFR7p/1Xovom9aQAmp8aCgZJg4
|
29
|
+
9oln3FIyBnk3W/LTUJVGS5a3u8JcVMxLTEJqkUMrBVGa8AcJzsPEU8XAG9R2360z
|
30
|
+
iZxVyGiFdi+DUOo++vjbiBRvgl2o3gKEwp8RPFj+OUemVDeFexBHKukDDdk7MJNp
|
31
|
+
WmLLvRyAmB+grz7eMPFjTxfRcV4/6WHNS5MFdXZ0ZioAKUatCNYIpDS7NqnT/nhD
|
32
|
+
CSEqt9HQknjKDK8LFS8Ostfbn0wZxYdh7Gxy6TKEh9dt0mMkIdzKxOJW70N+6bPP
|
33
|
+
CDRYB4NTKybJ2XnbEbJsUBezXDF8p+dmOEhygIAcNrjY9OyorRiZD3m60O+UuqXx
|
34
|
+
jumKCvffqUahjzaQRcW0r0OkF8v087BT7xUdq+K9Iza2Vuc3Qj2YxrFskE7gUhgB
|
35
|
+
bL55NDdi8BFHkNVohRBak7aqxsw41LJKy3UTP+4TzU5vyluDJMiscK6JJFaM4JiS
|
36
|
+
xtlAM0O5ZFe9QflatP+P8JnB
|
32
37
|
-----END CERTIFICATE-----
|
33
|
-
date:
|
38
|
+
date: 2022-02-03 00:00:00.000000000 Z
|
34
39
|
dependencies:
|
35
40
|
- !ruby/object:Gem::Dependency
|
36
41
|
name: dynarex
|
@@ -38,80 +43,80 @@ dependencies:
|
|
38
43
|
requirements:
|
39
44
|
- - "~>"
|
40
45
|
- !ruby/object:Gem::Version
|
41
|
-
version: '1.
|
46
|
+
version: '1.9'
|
42
47
|
- - ">="
|
43
48
|
- !ruby/object:Gem::Version
|
44
|
-
version: 1.
|
49
|
+
version: 1.9.2
|
45
50
|
type: :runtime
|
46
51
|
prerelease: false
|
47
52
|
version_requirements: !ruby/object:Gem::Requirement
|
48
53
|
requirements:
|
49
54
|
- - "~>"
|
50
55
|
- !ruby/object:Gem::Version
|
51
|
-
version: '1.
|
56
|
+
version: '1.9'
|
52
57
|
- - ">="
|
53
58
|
- !ruby/object:Gem::Version
|
54
|
-
version: 1.
|
59
|
+
version: 1.9.2
|
55
60
|
- !ruby/object:Gem::Dependency
|
56
61
|
name: sps-pub
|
57
62
|
requirement: !ruby/object:Gem::Requirement
|
58
63
|
requirements:
|
59
64
|
- - "~>"
|
60
65
|
- !ruby/object:Gem::Version
|
61
|
-
version: '0.
|
66
|
+
version: '0.5'
|
62
67
|
- - ">="
|
63
68
|
- !ruby/object:Gem::Version
|
64
|
-
version: 0.
|
69
|
+
version: 0.5.5
|
65
70
|
type: :runtime
|
66
71
|
prerelease: false
|
67
72
|
version_requirements: !ruby/object:Gem::Requirement
|
68
73
|
requirements:
|
69
74
|
- - "~>"
|
70
75
|
- !ruby/object:Gem::Version
|
71
|
-
version: '0.
|
76
|
+
version: '0.5'
|
72
77
|
- - ">="
|
73
78
|
- !ruby/object:Gem::Version
|
74
|
-
version: 0.
|
79
|
+
version: 0.5.5
|
75
80
|
- !ruby/object:Gem::Dependency
|
76
81
|
name: dir-to-xml
|
77
82
|
requirement: !ruby/object:Gem::Requirement
|
78
83
|
requirements:
|
79
84
|
- - "~>"
|
80
85
|
- !ruby/object:Gem::Version
|
81
|
-
version: '0
|
86
|
+
version: '1.0'
|
82
87
|
- - ">="
|
83
88
|
- !ruby/object:Gem::Version
|
84
|
-
version: 0.
|
89
|
+
version: 1.0.8
|
85
90
|
type: :runtime
|
86
91
|
prerelease: false
|
87
92
|
version_requirements: !ruby/object:Gem::Requirement
|
88
93
|
requirements:
|
89
94
|
- - "~>"
|
90
95
|
- !ruby/object:Gem::Version
|
91
|
-
version: '0
|
96
|
+
version: '1.0'
|
92
97
|
- - ">="
|
93
98
|
- !ruby/object:Gem::Version
|
94
|
-
version: 0.
|
99
|
+
version: 1.0.8
|
95
100
|
- !ruby/object:Gem::Dependency
|
96
101
|
name: dataisland
|
97
102
|
requirement: !ruby/object:Gem::Requirement
|
98
103
|
requirements:
|
99
|
-
- - "~>"
|
100
|
-
- !ruby/object:Gem::Version
|
101
|
-
version: '0.1'
|
102
104
|
- - ">="
|
103
105
|
- !ruby/object:Gem::Version
|
104
|
-
version: 0.
|
106
|
+
version: 0.3.0
|
107
|
+
- - "~>"
|
108
|
+
- !ruby/object:Gem::Version
|
109
|
+
version: '0.3'
|
105
110
|
type: :runtime
|
106
111
|
prerelease: false
|
107
112
|
version_requirements: !ruby/object:Gem::Requirement
|
108
113
|
requirements:
|
109
|
-
- - "~>"
|
110
|
-
- !ruby/object:Gem::Version
|
111
|
-
version: '0.1'
|
112
114
|
- - ">="
|
113
115
|
- !ruby/object:Gem::Version
|
114
|
-
version: 0.
|
116
|
+
version: 0.3.0
|
117
|
+
- - "~>"
|
118
|
+
- !ruby/object:Gem::Version
|
119
|
+
version: '0.3'
|
115
120
|
- !ruby/object:Gem::Dependency
|
116
121
|
name: increment
|
117
122
|
requirement: !ruby/object:Gem::Requirement
|
@@ -138,22 +143,22 @@ dependencies:
|
|
138
143
|
requirements:
|
139
144
|
- - "~>"
|
140
145
|
- !ruby/object:Gem::Version
|
141
|
-
version: '0.
|
146
|
+
version: '0.7'
|
142
147
|
- - ">="
|
143
148
|
- !ruby/object:Gem::Version
|
144
|
-
version: 0.2
|
149
|
+
version: 0.7.2
|
145
150
|
type: :runtime
|
146
151
|
prerelease: false
|
147
152
|
version_requirements: !ruby/object:Gem::Requirement
|
148
153
|
requirements:
|
149
154
|
- - "~>"
|
150
155
|
- !ruby/object:Gem::Version
|
151
|
-
version: '0.
|
156
|
+
version: '0.7'
|
152
157
|
- - ">="
|
153
158
|
- !ruby/object:Gem::Version
|
154
|
-
version: 0.2
|
159
|
+
version: 0.7.2
|
155
160
|
description:
|
156
|
-
email:
|
161
|
+
email: digital.robertson@gmail.com
|
157
162
|
executables: []
|
158
163
|
extensions: []
|
159
164
|
extra_rdoc_files: []
|
@@ -179,7 +184,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
179
184
|
version: '0'
|
180
185
|
requirements: []
|
181
186
|
rubyforge_project:
|
182
|
-
rubygems_version: 2.
|
187
|
+
rubygems_version: 2.7.10
|
183
188
|
signing_key:
|
184
189
|
specification_version: 4
|
185
190
|
summary: Makes publishing to the web easier
|
metadata.gz.sig
CHANGED
Binary file
|