mymedia 0.2.14 → 0.3.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.
Files changed (6) hide show
  1. checksums.yaml +5 -5
  2. checksums.yaml.gz.sig +0 -0
  3. data/lib/mymedia.rb +146 -97
  4. data.tar.gz.sig +0 -0
  5. metadata +52 -47
  6. metadata.gz.sig +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 37eb0d3574ee0d0676653feb8acc58da966e168d
4
- data.tar.gz: 01bb4ada6aa2ee1f111987e596966cfb371b93e2
2
+ SHA256:
3
+ metadata.gz: 6fc78e7e213ed935fdffc733862d520abb3b0c7d1dc3afde43905372e8bfd427
4
+ data.tar.gz: fdae3bd4aeeb04d230dbe95b67700b68fe2ec92a09292124e912bc66285a1937
5
5
  SHA512:
6
- metadata.gz: 0e42a44c6ff7c40a9170c7a157e8e4bac27db46738c6c35bbe32d3b2abc4a5cf3e97183384e18c84dc6050b6a740a34e91d32b00a91b7fcf391dcd057e65f067
7
- data.tar.gz: b09c6d3d9306be235b46fa6e53e63ffa6ae27a665fd3009a5a79b82a46c89b7b7779222721d221eaaf7d70e31c9056d4269b80480278b302b7d82afd12940a92
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.02
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
- @website = c[:website]
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
- def auto_copy_publish(raw_msg='')
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
- dir = DirToXML.new(@media_src, recursive: true)
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 = "%s/%s" % [@home, public_path]
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
- publish_html(@home + '/' + s)
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
- end
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.2.14
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
- MIIDXjCCAkagAwIBAgIBATANBgkqhkiG9w0BAQUFADAsMSowKAYDVQQDDCFnZW1t
14
- YXN0ZXIvREM9amFtZXNyb2JlcnRzb24vREM9ZXUwHhcNMTgwMjE3MjA0OTMwWhcN
15
- MTkwMjE3MjA0OTMwWjAsMSowKAYDVQQDDCFnZW1tYXN0ZXIvREM9amFtZXNyb2Jl
16
- cnRzb24vREM9ZXUwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDbWelJ
17
- +yXHoPRlWOusMFHY5NbvAzeK4PrNygW7BG+wSgVuxv5xst6PBdD3gAQb9W7u0aj/
18
- 8ucJ2GH3FlHOfTb1lfTWuDDmiOOXW6JipiabWU5gPbd7xY9LMH1Z2TRxagB9F9Mc
19
- UZUeSnJHQYuCobqOlNsYnBRCpUmhZCk6SvbtPoI+5YaS3pmD+2ueza7uHFgT8T02
20
- BUBewdrDOG8aMyxxPSibTwwrvwyWSJCLruE2rQX2ZujPsz8FbiwdPSlHpx97mDju
21
- pHmgbMNB6ku/b9ERhavmYovz9/OFoUPaSSu3OUajjzXMZpP4hUbGur6BSThRQ0qS
22
- L+Y5yJHkiWF1keSPAgMBAAGjgYowgYcwCQYDVR0TBAIwADALBgNVHQ8EBAMCBLAw
23
- HQYDVR0OBBYEFAN3vpXgUeUHtifLfcGxfn6sLbeoMCYGA1UdEQQfMB2BG2dlbW1h
24
- c3RlckBqYW1lc3JvYmVydHNvbi5ldTAmBgNVHRIEHzAdgRtnZW1tYXN0ZXJAamFt
25
- ZXNyb2JlcnRzb24uZXUwDQYJKoZIhvcNAQEFBQADggEBAAhvUhzAkk7QNZw76Kbv
26
- DnEs44bq5FGgMHOjGZh2TvAP0J0pe/sW0kWRNIiMGWWDsD3S1RB5lzpcorKZ65R6
27
- 2Po4BkKikNj6+RIAL63/gZbzXkIfbta6BSfl8AByymfhcBrPRUPlflFI3h0olBqf
28
- wh8yh/e6U1J4uOUDvaHIXbTQqUuwCMXvT6GkR18nwqfeU5g0QkxAql2/D/qtYaUf
29
- czLW3gcmQesp/fYOVKrPfX4CLMDuNu4uJR2K8/OXUgLOBD8wVH0mcivm8iHzT44T
30
- XCDues8F9CKrAD7HtYJJOzJ2F9IFeE67Yp46wOTiG6BawRBKp9OYWKmHlZgsdGrf
31
- r9Q=
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: 2018-02-17 00:00:00.000000000 Z
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.2'
46
+ version: '1.9'
42
47
  - - ">="
43
48
  - !ruby/object:Gem::Version
44
- version: 1.3.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.2'
56
+ version: '1.9'
52
57
  - - ">="
53
58
  - !ruby/object:Gem::Version
54
- version: 1.3.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.4'
66
+ version: '0.5'
62
67
  - - ">="
63
68
  - !ruby/object:Gem::Version
64
- version: 0.4.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.4'
76
+ version: '0.5'
72
77
  - - ">="
73
78
  - !ruby/object:Gem::Version
74
- version: 0.4.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.3'
86
+ version: '1.0'
82
87
  - - ">="
83
88
  - !ruby/object:Gem::Version
84
- version: 0.3.3
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.3'
96
+ version: '1.0'
92
97
  - - ">="
93
98
  - !ruby/object:Gem::Version
94
- version: 0.3.3
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.1.14
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.1.14
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.2'
146
+ version: '0.7'
142
147
  - - ">="
143
148
  - !ruby/object:Gem::Version
144
- version: 0.2.1
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.2'
156
+ version: '0.7'
152
157
  - - ">="
153
158
  - !ruby/object:Gem::Version
154
- version: 0.2.1
159
+ version: 0.7.2
155
160
  description:
156
- email: james@jamesrobertson.eu
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.6.13
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