mymedia 0.5.5 → 0.6.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (6) hide show
  1. checksums.yaml +4 -4
  2. checksums.yaml.gz.sig +0 -0
  3. data/lib/mymedia.rb +119 -108
  4. data.tar.gz.sig +0 -0
  5. metadata +30 -29
  6. metadata.gz.sig +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 9524fd31dc71743e9163c15572ccb65ee1d3cad4a9e9753a4e7bea39cf2caf1b
4
- data.tar.gz: a60ca935a57e95a523182a7ad2fc43f35289dc5cb25210b98084e4455c6e982e
3
+ metadata.gz: e0e73232af677ec81115b33b8c13c8df4b5eb54c79f0af3c063afd7169db3c9c
4
+ data.tar.gz: e12bf14b0cedfb4689f58ab44cad8213e7f70f4e7859b72ce3301d2e5a1a8554
5
5
  SHA512:
6
- metadata.gz: 9c26f58519f36dd058cd791002217404c6710479c1255e4217885d8aaff0d04820b11e5313b1f65d1c8a6284bcba3a49a7f61b39edf8a08d10d731fa73897f6c
7
- data.tar.gz: d0c6a852d647c5caf91bc282814f40ff718edf53815f0404f390e120bcbcc38b4f4d0e6d7cbc395e45490378d34cedfd5fdc4c493603289962d90748efba8014
6
+ metadata.gz: 35a2248a7b2ac7cb7007d7d349d2cfd223324597ae1cc67b7282804a948c78b21b602bb60ab2783f2bec13074f59aa538f1bbb644ba200224d8463b998176123
7
+ data.tar.gz: 90a8cfb9aece78804c4812b3d6f7c2861e9296d8fd756bfabcba27609da5e0019dd0c928c53cad9f826e160878a8810cb43db8ba873f5b18f36c712fe209218c
checksums.yaml.gz.sig CHANGED
Binary file
data/lib/mymedia.rb CHANGED
@@ -14,12 +14,24 @@ require 'rxfileio'
14
14
  require 'wordsdotdat'
15
15
 
16
16
 
17
+ module StringFilter
18
+
19
+ def normalize(s)
20
+
21
+ r = s.downcase.gsub(/\s#\w+/,'').strip.gsub(/\W/,'-').gsub(/-{2,}/,'-')\
22
+ .gsub(/^-|-$/,'')
23
+ return s.scan(/#(\w+)/)[0..1].join('_').downcase if r.empty?
24
+ return r
25
+ end
26
+
27
+ end
28
+
17
29
  module MyMedia
18
30
 
19
31
  class MyMediaPublisherException < Exception
20
32
  end
21
-
22
-
33
+
34
+
23
35
  class Publisher
24
36
  include RXFReadWriteModule
25
37
 
@@ -27,12 +39,12 @@ module MyMedia
27
39
  @index_page = true
28
40
  @opts = opts
29
41
  end
30
-
42
+
31
43
  protected
32
-
44
+
33
45
  def publish_dynarex(dynarex_filepath='', \
34
46
  record={title: '',url: '', raw_url: ''}, options={})
35
-
47
+
36
48
  opt = {id: nil, rss: false}.merge(options)
37
49
 
38
50
  dynarex = if FileX.exists? dynarex_filepath then
@@ -45,7 +57,7 @@ module MyMedia
45
57
  dynarex.save dynarex_filepath
46
58
  publish_html(dynarex_filepath) if @index_page == true
47
59
 
48
-
60
+
49
61
  if opt[:rss] == true then
50
62
 
51
63
  dynarex.xslt_schema = dynarex.summary[:xslt_schema]
@@ -57,19 +69,19 @@ module MyMedia
57
69
 
58
70
  def publish_html(filepath)
59
71
 
60
- path2 = File.dirname(filepath)
72
+ path2 = File.dirname(filepath)
61
73
  template_path = File.join path2, 'index-template.html'
62
74
 
63
- return unless @index_page == true
75
+ return unless @index_page == true
64
76
  raise MyMediaPublisherException, \
65
77
  "template path: #{template_path} not found" unless \
66
78
  FileX.exists?(template_path)
67
- =begin jr 040916
79
+ =begin jr 040916
68
80
  dataisland = DataIsland.new(template_path, @opts)
69
81
 
70
82
  File.open(path2 + '/index.html','w'){|f| f.write dataisland.html_doc.xml pretty: true}
71
- =end
72
- end
83
+ =end
84
+ end
73
85
 
74
86
  def publish_dxlite(dynarex_filepath='', record={title: '',url: ''})
75
87
 
@@ -85,12 +97,12 @@ module MyMedia
85
97
 
86
98
  def send_message(topic: @sps[:default_subscriber], msg: '')
87
99
 
88
- fqm = "%s: %s" % [topic, msg]
100
+ fqm = "%s: %s" % [topic, msg]
89
101
 
90
102
  SPSPub.notice fqm, address: @sps[:address]
91
103
  sleep 0.3
92
- end
93
-
104
+ end
105
+
94
106
  end
95
107
 
96
108
  module IndexReader
@@ -98,7 +110,7 @@ module MyMedia
98
110
 
99
111
  def browse(startswith=nil)
100
112
 
101
- json_filepath = "%s/%s/dynarex.json" % [@home, @public_type]
113
+ json_filepath = "%s/%s/%s/dynarex.json" % [@home, @www, @public_type]
102
114
 
103
115
  if FileX.exists? json_filepath then
104
116
 
@@ -183,30 +195,35 @@ module MyMedia
183
195
 
184
196
  end
185
197
  end
198
+
199
+
186
200
 
187
201
  class BaseException < Exception
188
202
  end
189
-
203
+
190
204
  class Base < Publisher
191
205
  include RXFileIOModule
206
+ include StringFilter
192
207
 
193
- attr_reader :to_s
208
+ attr_reader :to_s, :destination
194
209
 
195
210
  def initialize(media_type: 'blog', public_type: media_type,
196
- ext: 'txt', config: nil, log: nil, debug: false)
211
+ ext: 'txt', config: nil, log: nil, now: Time.now,
212
+ debug: false)
197
213
 
198
- super()
214
+ super()
199
215
 
200
- @schema = 'posts/post(title, url, raw_url)'
216
+ @now = now
217
+ @schema = 'posts/post(title, url, raw_url)'
201
218
 
202
- raise BaseException, "no config found" if config.nil?
219
+ raise BaseException, "no config found" unless config
203
220
 
204
221
  c = SimpleConfig.new(config).to_h
205
-
222
+
206
223
  @home = c[:home]
207
224
  puts '@home: ' + @home.inspect if @debug
208
225
  @media_src = "%s/media/%s" % [@home, media_type]
209
- @website = c[:website]
226
+ @website = c[:website]
210
227
 
211
228
  @dynamic_website = c[:dynamic_website]
212
229
  @www = c[:www]
@@ -214,33 +231,33 @@ module MyMedia
214
231
 
215
232
  @sps = c[:sps]
216
233
  @omit_html_ext = c[:omit_html_ext]
217
-
234
+
218
235
  @log = log
219
236
 
220
237
 
221
238
  @media_type = media_type
222
239
  @public_type = public_type ||= @media_type
223
-
240
+
224
241
  @xslt_schema = 'channel[title:title,description:desc]/' + \
225
242
  'item(title:title,link:url)'
226
243
  @ext = ext
227
244
  @rss = false
228
245
  @debug = debug
229
-
246
+
230
247
  DirX.chdir @home
231
248
 
232
249
  end
233
-
250
+
234
251
  def add_feed_item(raw_msg, record, options={})
235
-
236
- dynarex_filepath = File.join([@home, @public_type, 'dynarex.xml'])
237
- id = Increment.update(File.join([@home, @public_type, 'counter.txt']))
252
+
253
+ dynarex_filepath = File.join([@home, @public_type, 'dynarex.xml'])
254
+ id = Increment.update(File.join([@home, @public_type, 'counter.txt']))
238
255
  static_url = @static_baseurl + id
239
256
  record[:uri] = static_url
240
-
241
- publish_dynarex(dynarex_filepath, record, {id: id}.merge(options))
242
- publish_timeline(raw_msg, static_url)
243
- publish_html(@home + '/index.html')
257
+
258
+ publish_dynarex(dynarex_filepath, record, {id: id}.merge(options))
259
+ publish_timeline(raw_msg, static_url)
260
+ publish_html(@home + '/index.html')
244
261
  end
245
262
 
246
263
  def auto_copy_publish(raw_msg='', &blk)
@@ -260,7 +277,7 @@ module MyMedia
260
277
  end
261
278
 
262
279
  end
263
-
280
+
264
281
  def basename(raw_s1, raw_s2)
265
282
 
266
283
  s1 = raw_s1.sub(/dfs:\/\/[^\/]+/,'')
@@ -268,38 +285,40 @@ module MyMedia
268
285
 
269
286
  (s2.split('/') - s1.split('/')).join('/')
270
287
 
271
- end
272
-
288
+ end
289
+
273
290
  def copy_publish(filename, raw_msg='', &blk)
274
291
  file_publish(filename, raw_msg)
275
292
  end
276
-
293
+
277
294
 
278
295
  private
296
+
297
+ def file_publish(src_path, raw_msg='', sps: true)
279
298
 
280
- def file_publish(src_path, raw_msg='')
281
-
282
- #raise @logger.debug("source file '%s' not found" % src_path) unless File.exists? src_path
283
299
  ext = File.extname(src_path)
284
300
  @target_ext ||= ext
285
-
301
+
286
302
  public_path = "%s/%s/%shrs%s" % [@public_type, \
287
- Time.now.strftime('%Y/%b/%d').downcase, Time.now.strftime('%H%M'),
303
+ @now.strftime('%Y/%b/%d').downcase, @now.strftime('%H%M'),
288
304
  @target_ext]
289
305
 
290
306
  public_path2 = "%s/%s/%shrs%s%s" % [@public_type, \
291
- Time.now.strftime('%Y/%b/%d').downcase, Time.now.strftime('%H%M'),
292
- Time.now.strftime('%S%2N'), @target_ext]
293
-
294
- raw_destination = "%s/%s/%s" % [@home, 'r', public_path]
295
-
307
+ @now.strftime('%Y/%b/%d').downcase, @now.strftime('%H%M'),
308
+ @now.strftime('%S%2N'), @target_ext]
309
+
310
+ raw_destination = File.join(@home, @www, 'r', public_path)
311
+
296
312
  if FileX.exists? raw_destination then
297
- raw_destination = "%s/%s/%s" % [@home, 'r', public_path2]
313
+ raw_destination = File.join(@home, @www, 'r', public_path2)
298
314
  public_path = public_path2
299
315
  end
300
316
 
301
- destination = File.join(@home, public_path)
317
+ destination = File.join(@home, @www, public_path)
318
+ puts 'before raw_destination: ' + raw_destination.inspect if @debug
302
319
  FileX.mkdir_p File.dirname(raw_destination)
320
+
321
+ puts 'before destination: ' + destination.inspect if @debug
303
322
  FileX.mkdir_p File.dirname(destination)
304
323
 
305
324
  if @debug then
@@ -311,9 +330,9 @@ module MyMedia
311
330
 
312
331
  raw_msg = src_path[/([^\/]+)\.\w+$/,1] + ' ' + raw_msg if raw_msg[/^#/]
313
332
 
314
-
333
+
315
334
  if block_given? then
316
- raw_msg, target_url = yield(destination, raw_destination)
335
+ raw_msg, target_url = yield(destination, raw_destination)
317
336
  static_url = target_url
318
337
  else
319
338
 
@@ -333,22 +352,21 @@ module MyMedia
333
352
 
334
353
  end
335
354
 
336
- raw_msg = raw_msg.join if raw_msg.is_a? Array
355
+ raw_msg = raw_msg.join if raw_msg.is_a? Array
337
356
 
338
357
  static_filename = if raw_msg.to_s.length > 0 then
339
358
  normalize(raw_msg) + File.extname(destination)
340
359
  else
341
-
360
+
342
361
  basename(@media_src, src_path)
343
-
344
- end
345
-
362
+
363
+ end
364
+
346
365
  static_path = "%s/%s/%s" % [@public_type, \
347
- Time.now.strftime('%Y/%b/%d').downcase, static_filename]
348
-
349
- raw_static_destination = "%s/%s/%s" % [@home, 'r',static_path]
350
-
351
- static_destination = "%s/%s" % [@home, static_path]
366
+ @now.strftime('%Y/%b/%d').downcase, static_filename]
367
+
368
+ raw_static_destination = File.join(@home, @www, 'r',static_path)
369
+ static_destination = File.join(@home, @www, static_path)
352
370
 
353
371
  #FileUtils.mkdir_p File.dirname(static_destination)
354
372
 
@@ -365,7 +383,7 @@ module MyMedia
365
383
  if File.extname(static_destination) == '.html' then
366
384
 
367
385
  xmlfilepath = destination.sub('.html','.xml')
368
-
386
+
369
387
  if FileX.exists?(xmlfilepath) then
370
388
 
371
389
  FileX.cp xmlfilepath, static_destination.sub('.html','.xml')
@@ -377,40 +395,33 @@ module MyMedia
377
395
  end
378
396
 
379
397
  end
380
-
398
+
381
399
  target_url ||= "%s/%s" % [@website, public_path]
382
400
  static_url ||= "%s/%s" % [@website, static_path]
383
401
 
384
402
  msg = "%s %s" % [target_url, raw_msg ]
385
-
386
- sps_message = ['publish', @public_type,
403
+
404
+ sps_message = ['publish', @public_type,
387
405
  target_url, static_url, raw_msg]
388
406
 
389
- send_message(msg: sps_message.join(' '))
407
+ send_message(msg: sps_message.join(' ')) if sps
390
408
 
391
409
  static_url
392
-
393
- end
394
-
395
- def normalize(s)
396
-
397
- r = s.downcase.gsub(/\s#\w+/,'').strip.gsub(/\W/,'-').gsub(/-{2,}/,'-').gsub(/^-|-$/,'')
398
- return s.scan(/#(\w+)/)[0..1].join('_').downcase if r.empty?
399
- return r
400
- end
410
+
411
+ end
401
412
 
402
413
  end
403
-
404
-
414
+
415
+
405
416
  class FrontpageException < Exception
406
417
  end
407
-
418
+
408
419
  class Frontpage < Publisher
409
-
420
+
410
421
  def initialize(config: nil, public_type: '', rss: nil)
411
-
422
+
412
423
  raise FrontpageException, "no config found" if config.nil?
413
-
424
+
414
425
  c = SimpleConfig.new(config).to_h
415
426
 
416
427
  @home = c[:home]
@@ -419,56 +430,56 @@ module MyMedia
419
430
  @rss = rss
420
431
  @sps = c[:sps]
421
432
  @opts = {username: c[:username], password: c[:password]}
422
-
433
+
423
434
  end
435
+
436
+ def publish_frontpage(s='index.html')
424
437
 
425
- def publish_frontpage(s='index.html')
426
-
427
- publish_html(@home + '/' + s)
438
+ publish_html(@home + '/' + s)
428
439
  'frontpage published'
429
- end
430
-
440
+ end
431
441
 
442
+
432
443
  def publish_to_lists(record={}, public_type=nil)
433
-
444
+
434
445
  @log.info 'inside publish_to_lists' if @log
435
-
446
+
436
447
  @public_type = public_type if public_type
437
448
 
438
449
  raw_msg, static_url, target_url = \
439
450
  record[:title], record[:url], record[:static_url]
440
451
 
441
- dynarex_filepath = "%s/%s/dynarex.xml" % [@home, @public_type]
442
- raw_dynarex_filepath = "%s/r/%s/dynarex.xml" % [@home, @public_type]
443
-
452
+ dynarex_filepath = File.join(@home, @www, @public_type, 'dynarex.xml')
453
+ raw_dynarex_filepath = File.join(@home, @www, 'r', @public_type, 'dynarex.xml')
444
454
 
445
- publish_dynarex(dynarex_filepath, record, {rss: @rss || false})
446
- publish_dynarex(raw_dynarex_filepath, record, {rss: @rss || false})
455
+ publish_dynarex(dynarex_filepath, record, {rss: @rss || false})
456
+ publish_dynarex(raw_dynarex_filepath, record, {rss: @rss || false})
447
457
 
448
- publish_timeline(raw_msg, static_url, target_url)
458
+ publish_timeline(raw_msg, static_url, target_url)
449
459
  send_message(msg: 'publish_to_lists completed')
450
-
460
+
451
461
  end
452
462
 
453
-
463
+
454
464
  def publish_timeline(raw_msg, static_url, target_url='')
455
465
 
456
- timeline_filepath = "%s/timeline/dynarex.xml" % @home
457
- record = Dynarex.new(@home + '/dynarex/main-directory.xml').find_by_title(@public_type)
466
+ timeline_filepath = File.join(@home, @www, 'timeline', 'dynarex.xml')
467
+ main_dir = File.join(@home, @www, 'dynarex', 'main-directory.xml')
468
+ record = Dynarex.new(main_dir).find_by_title(@public_type)
458
469
 
459
470
  thumbnail, subject_url = record.thumbnail, record.url
460
-
471
+
461
472
  content = {
462
- title: raw_msg,
473
+ title: raw_msg,
463
474
  url: static_url,
464
- thumbnail: thumbnail,
465
- subject_url: subject_url,
466
- raw_url: target_url
475
+ thumbnail: thumbnail,
476
+ subject_url: subject_url,
477
+ raw_url: target_url
467
478
  }
479
+
480
+ publish_dynarex(timeline_filepath, content, rss: true)
468
481
 
469
- publish_dynarex(timeline_filepath, content, rss: true)
470
-
471
- end
482
+ end
472
483
 
473
484
  end
474
485
  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.5.5
4
+ version: 0.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - James Robertson
@@ -10,32 +10,33 @@ bindir: bin
10
10
  cert_chain:
11
11
  - |
12
12
  -----BEGIN CERTIFICATE-----
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
13
+ MIIEljCCAv6gAwIBAgIBATANBgkqhkiG9w0BAQsFADBIMRIwEAYDVQQDDAlnZW1t
14
+ YXN0ZXIxHjAcBgoJkiaJk/IsZAEZFg5qYW1lc3JvYmVydHNvbjESMBAGCgmSJomT
15
+ 8ixkARkWAmV1MB4XDTIzMDIyMjE4NTk1MFoXDTI0MDIyMjE4NTk1MFowSDESMBAG
16
+ A1UEAwwJZ2VtbWFzdGVyMR4wHAYKCZImiZPyLGQBGRYOamFtZXNyb2JlcnRzb24x
17
+ EjAQBgoJkiaJk/IsZAEZFgJldTCCAaIwDQYJKoZIhvcNAQEBBQADggGPADCCAYoC
18
+ ggGBAKA1cGKoDX7bTA9dtbjHRNKdTDV446tBLwevBBPFeSsIibVRYf8XmKeZcuIu
19
+ ZYcKaCBBFebaZGeFxx96zJUARg93CTF3AzKcelUkwHZKqDUmv7rHGZ2aGVqAeBUo
20
+ nXOTYkg0krKse5rhqvfd0L3/SsEPWoVNVIdbGlN9piASAreuTRp58ZrqyquaZPwj
21
+ qKrb8LLalBE5sPWF6cgUuUscbg9FLNSBPaW01HeD2XiVcLlT6jl0BgpW9nzKgwQw
22
+ 0GI8jU6mCTHnwzzmK3A/TgaNXxJtmoRnHZJ/GqnTe3QEgRACey6PTTI2v80LJ0iO
23
+ 6Y0uNLbxCCH4+NLsdigKImYParvE017VjsQt7/SUNL0gHhvtfC9X3Vy+25Rtpz9M
24
+ AHmMm1f1c9eanxkc+4uivKhkUKY1TI4eGL/CW/VkUJ+rScspqESUty21NGBWJIjZ
25
+ UhjbYh7HXoGZW7Q+qs3HZNSh5e9ZR6uS/Z89c5xliMGLSzGwvFlMsOTBKh7e+Li8
26
+ HW8qbQIDAQABo4GKMIGHMAkGA1UdEwQCMAAwCwYDVR0PBAQDAgSwMB0GA1UdDgQW
27
+ BBQO6GN9hFPUtZm9hXSHjrK0vDYuyTAmBgNVHREEHzAdgRtnZW1tYXN0ZXJAamFt
28
+ ZXNyb2JlcnRzb24uZXUwJgYDVR0SBB8wHYEbZ2VtbWFzdGVyQGphbWVzcm9iZXJ0
29
+ c29uLmV1MA0GCSqGSIb3DQEBCwUAA4IBgQBi7zH6cYWgeoNoOD/Az2Q1WMbhgoV5
30
+ HOxqGqnwBsXX33P53WjRrAt0J9sIdplU6lhb/ZYpvPiAKBHO4Ky+SPNQcF7hBKdj
31
+ U+9uJLikOA8z14ek4z2CJqNiBO7ouZ14PiLPCDBKcEph6pve6OYQG7x5bnS5UmOP
32
+ coSFSo+bCwu15iBoQDgTSZSY7RDD5HNRL/klat8SaKrFwp0XXfUiRi8LTHRWxswe
33
+ QcpshuyUHnpaGJ3XftwGw2FZGCAGSqIoSsVpAtazx3/ycK7JfwvATOS8l/7VWs3O
34
+ DsvPtPbxt2RLMp8hushLA4zXRYPIG6J1oey40opKxQks1SJX3tDiyk5jebwsT/ZB
35
+ 0EzYO3shlM98rrWiiFxLwv+ebOPV9SrDbivLfXs8VMxYD0rOF3ap53AfBiElvszL
36
+ XV2ORsrE0BA5hbgbfiQFazW2d62rWKrt3CTi36GNST95GXGBpapX9CyezadYE+5i
37
+ D3/VNb1+lseG5sGSOWMV8J01/J89XOfp5Gk=
37
38
  -----END CERTIFICATE-----
38
- date: 2022-05-05 00:00:00.000000000 Z
39
+ date: 2023-02-26 00:00:00.000000000 Z
39
40
  dependencies:
40
41
  - !ruby/object:Gem::Dependency
41
42
  name: dir-to-xml
@@ -106,7 +107,7 @@ dependencies:
106
107
  version: '0.7'
107
108
  - - ">="
108
109
  - !ruby/object:Gem::Version
109
- version: 0.7.2
110
+ version: 0.7.3
110
111
  type: :runtime
111
112
  prerelease: false
112
113
  version_requirements: !ruby/object:Gem::Requirement
@@ -116,7 +117,7 @@ dependencies:
116
117
  version: '0.7'
117
118
  - - ">="
118
119
  - !ruby/object:Gem::Version
119
- version: 0.7.2
120
+ version: 0.7.3
120
121
  - !ruby/object:Gem::Dependency
121
122
  name: wordsdotdat
122
123
  requirement: !ruby/object:Gem::Requirement
@@ -163,7 +164,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
163
164
  - !ruby/object:Gem::Version
164
165
  version: '0'
165
166
  requirements: []
166
- rubygems_version: 3.2.22
167
+ rubygems_version: 3.4.4
167
168
  signing_key:
168
169
  specification_version: 4
169
170
  summary: Makes publishing to the web easier
metadata.gz.sig CHANGED
Binary file