dor-services 4.17.2 → 4.18.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,15 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 86b97f4dd5c26552ed7d95e3febad6ed535ff697
4
- data.tar.gz: 5607ffba2887839f9715917b5649ae80fd5b992c
2
+ !binary "U0hBMQ==":
3
+ metadata.gz: !binary |-
4
+ YzQwY2Q2NTlhNDM2OWZjOTVjMWNkOTcyYmUxYjJlYzY5NDk4NGYyYQ==
5
+ data.tar.gz: !binary |-
6
+ YTJlNDFlYzUxMTc2ZDQzMWM5MWRiNTU0MzFkZjFjZGQ3MTNkNDBmMQ==
5
7
  SHA512:
6
- metadata.gz: 7514fd4a16e0ab9130bd834c1b82e7f474bcee3091d49afb66b111bcbb9e9dac607d48ec245162cbb6b659bbb8faefc4fe988729a1f97be378bd9e463376ef6e
7
- data.tar.gz: 36bb2eb542150e1628ed49972787cef388b9e6482b1db8c873f5ffbe803e64a91493aa14d16ba2faf09f425cab2dc1a0885e28b76b4d47e54d72c0bbb69f08db
8
+ metadata.gz: !binary |-
9
+ YzAyNWY4Yjc5N2RjZDlhZjIxMGM5OWQ5YjZmODljMWQzYTU0MDZjYTM5MmFh
10
+ NTJmY2UxZDE3Yjc1YjBhYjQ3MjVkOTMwNGNiYzEzMGQ5ZjhjYWEwZjJiODBi
11
+ ZmE4ZTI0ZWE0N2M3ZjNjZmVmOWU0OTFhODkzMWFjYzg2OTJiNGE=
12
+ data.tar.gz: !binary |-
13
+ ZjcwNmY0Y2QzNWIxN2NiODNkMjNhMWE3MmZmMjE1MGU3OGMxODgyMTc0Yjdh
14
+ NWJhYjZhOWQ3M2FhMTNmYjI4OTJlOWU1ZThiNGMzYTljNmE3NWRkMTA5Njk4
15
+ MjY0YTliMzZjNTUwNGQzZDNiN2NhZDZjOWEwZGI5M2U5MjRmYzc=
@@ -32,48 +32,6 @@ module Dor
32
32
  self.identityMetadata.tag
33
33
  end
34
34
 
35
- #helper method to get the release tags as a nodeset
36
- #
37
- #@return [Nokogiri::XML::NodeSet] of all release tags and their attributes
38
- def release_tags
39
- release_tags = self.identityMetadata.ng_xml.xpath('//release')
40
- return_hash = {}
41
- release_tags.each do |release_tag|
42
- hashed_node = self.release_tag_node_to_hash(release_tag)
43
- if return_hash[hashed_node[:to]] != nil
44
- return_hash[hashed_node[:to]] << hashed_node[:attrs]
45
- else
46
- return_hash[hashed_node[:to]] = [hashed_node[:attrs]]
47
- end
48
- end
49
- return return_hash
50
- end
51
-
52
- #method to convert one release element into an array
53
- #
54
- #@param rtag [Nokogiri::XML::Element] the release tag element
55
- #
56
- #return [Hash] in the form of {:to => String :attrs = Hash}
57
- def release_tag_node_to_hash(rtag)
58
- to = 'to'
59
- release = 'release'
60
- when_word = 'when' #TODO: Make to and when_word load from some config file instead of hardcoded here
61
- attrs = rtag.attributes
62
- return_hash = { :to => attrs[to].value }
63
- attrs.tap { |a| a.delete(to)}
64
- attrs[release] = rtag.text.downcase == "true" #save release as a boolean
65
- return_hash[:attrs] = attrs
66
-
67
- #convert all the attrs beside :to to strings, they are currently Nokogiri::XML::Attr
68
- (return_hash[:attrs].keys-[to]).each do |a|
69
- return_hash[:attrs][a] = return_hash[:attrs][a].to_s if a != release
70
- end
71
-
72
- return_hash[:attrs][when_word] = Time.parse(return_hash[:attrs][when_word]) #convert when to a datetime
73
-
74
- return return_hash
75
- end
76
-
77
35
  # helper method to get just the content type tag
78
36
  def content_type_tag
79
37
  content_tag=tags.select {|tag| tag.include?('Process : Content Type')}
@@ -265,64 +223,16 @@ module Dor
265
223
  return tag_arr
266
224
 
267
225
  end
268
-
269
- #Add a tag for an item
270
- #If you are adding just a :tag att
271
- #
272
- #@return [String] returned if this function is called with invalid parameters, eg a lack of :who for release_tag
273
- #@return [Nokogiri::XML::Element] the tag added if successful
274
- #
275
- #@raise [RuntimeError] Raised if the tag already exists on the item or the tag is not of the form a:b
276
- #
277
- #@params tag [string] The content of the tag
278
- #@params type [symbol] The type of tag, :tag is assumed as default
279
- #@params attrs [hash] A hash of any attributes to be placed onto the tag
280
- # release tag example:
281
- # item.add_tag(true,:release,{:tag=>'Fitch : Batch2',:what=>'self',:to=>'Searchworks',:who=>'petucket'})
282
- def add_tag(tag, type=:tag, attrs={})
283
- needs_timestamp = [:release] #If you want a tag to get a timestamp attribute, add its symbol here
284
- identity_metadata_ds = self.identityMetadata
285
- normalized_tag = validate_and_normalize_tag(tag, identity_metadata_ds.tags) if type != :release #Release tags are always boolean, so skip this step
286
- normalized_tag = tag.to_s if type == :release #just keep the boolean if we have just have a release
287
-
288
- attrs[:when] = Time.now.utc.iso8601 if needs_timestamp.include? type
289
-
290
-
291
- if type == :release
292
- valid_release_attributes_and_tag(tag, attrs)
293
- attrs[:tag] = normalize_tag_arr(validate_tag_format(attrs[:tag])) if attrs[:tag] != nil #:tag must be a valid administrative tag
294
- end
295
-
296
- return identity_metadata_ds.add_value(type, normalized_tag) if attrs == {}
297
- return identity_metadata_ds.add_value(type, normalized_tag, attrs) if attrs != {}
298
- end
299
-
300
226
 
301
- #Determine if the supplied tag is a valid release tag that meets all requirements
227
+ #Add an administrative tag to an item, you will need to seperately save the item to write it to fedora
302
228
  #
303
- #@raises [RuntimeError] Raises an error of the first fault in the release tag
304
- #
305
- #@return [Boolean] Returns true if no errors found
306
- #
307
- #@params attrs [hash] A hash of attributes for the tag, must contain :when, a ISO 8601 timestamp and :who to identify who or what added the tag, :to,
308
- def valid_release_attributes_and_tag(tag, attrs={})
309
- raise ":when is not iso8601" if attrs[:when].match('\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}Z') == nil
310
- [:who, :to, :what].each do |check_attr|
311
- raise "#{check_attr} not supplied as a String" if attrs[check_attr].class != String
312
- end
313
-
314
- what_correct = false
315
- ['self', 'collection'].each do |allowed_what_value|
316
- what_correct = true if attrs[:what] == allowed_what_value
317
- end
318
- raise ":what must be self or collection" if not what_correct
319
-
320
- raise "the value set for this tag is not a boolean" if !!tag != tag
321
- identity_metadata_ds = self.identityMetadata
322
- validate_tag_format(attrs[:tag]) if attrs[:tag] != nil #Will Raise exception if invalid tag
323
- return true
229
+ #param tag [string] The tag you wish to add
230
+ def add_tag(tag)
231
+ identity_metadata_ds = self.identityMetadata
232
+ normalized_tag = validate_and_normalize_tag(tag, identity_metadata_ds.tags)
233
+ identity_metadata_ds.add_value(:tag, normalized_tag)
324
234
  end
325
-
235
+
326
236
  def remove_tag(tag)
327
237
  identity_metadata_ds = self.identityMetadata
328
238
  ds_xml = identity_metadata_ds.ng_xml
@@ -3,7 +3,6 @@ module Dor
3
3
  extend ActiveSupport::Concern
4
4
  include Itemizable
5
5
 
6
-
7
6
  #Generate XML structure for inclusion to Purl
8
7
  #
9
8
  #@return [String] The XML release node as a string, with ReleaseDigest as the root document
@@ -25,7 +24,7 @@ module Dor
25
24
  released_hash = {}
26
25
 
27
26
  #Get release tags on the item itself
28
- release_tags_on_this_item = self.release_tags
27
+ release_tags_on_this_item = self.release_nodes
29
28
 
30
29
  #Get any self tags on this item
31
30
  self_release_tags = self.get_self_release_tags(release_tags_on_this_item)
@@ -71,7 +70,7 @@ module Dor
71
70
  #
72
71
  #@return [Hash] a hash of all tags
73
72
  def get_release_tags_for_item_and_all_governing_sets
74
- return_tags = self.release_tags || {}
73
+ return_tags = self.release_nodes || {}
75
74
  self.collections.each do |collection|
76
75
  return_tags = combine_two_release_tag_hashes(return_tags, Dor::Item.find(collection.id).get_release_tags_for_item_and_all_governing_sets) #this will function recurvisely so parents of parents are found
77
76
  end
@@ -148,7 +147,6 @@ module Dor
148
147
  return latest_tag_in_array
149
148
  end
150
149
 
151
-
152
150
  #Takes a tag and returns true or false if it applies to the specific item
153
151
  #
154
152
  #@param release_tag [Hash] the tag in a hashed form
@@ -159,7 +157,7 @@ module Dor
159
157
  #Is the tag global or restricted
160
158
  return true if release_tag['tag'] == nil #there is no specific tag specificied, so that means this tag is global to all members of the collection, it applies, return true
161
159
 
162
- admin_tags = self.tags if not admin_tags #We use false instead of [], since an item can have no admin_tags that which point we'd be passing down this variable as [] and would not an attempt to retrieve it
160
+ admin_tags = self.tags if ! admin_tags #We use false instead of [], since an item can have no admin_tags that which point we'd be passing down this variable as [] and would not an attempt to retrieve it
163
161
  return admin_tags.include?(release_tag['tag'])
164
162
  end
165
163
 
@@ -181,6 +179,130 @@ module Dor
181
179
 
182
180
  return nil #We're out of tags, no applicable ones
183
181
  end
182
+
183
+ #helper method to get the release tags as a nodeset
184
+ #
185
+ #@return [Nokogiri::XML::NodeSet] of all release tags and their attributes
186
+ def release_tags
187
+ release_tags = self.identityMetadata.ng_xml.xpath('//release')
188
+ return_hash = {}
189
+ release_tags.each do |release_tag|
190
+ hashed_node = self.release_tag_node_to_hash(release_tag)
191
+ if return_hash[hashed_node[:to]] != nil
192
+ return_hash[hashed_node[:to]] << hashed_node[:attrs]
193
+ else
194
+ return_hash[hashed_node[:to]] = [hashed_node[:attrs]]
195
+ end
196
+ end
197
+ return return_hash
198
+ end
199
+
200
+ #method to convert one release element into an array
201
+ #
202
+ #@param rtag [Nokogiri::XML::Element] the release tag element
203
+ #
204
+ #return [Hash] in the form of {:to => String :attrs = Hash}
205
+ def release_tag_node_to_hash(rtag)
206
+ to = 'to'
207
+ release = 'release'
208
+ when_word = 'when' #TODO: Make to and when_word load from some config file instead of hardcoded here
209
+ attrs = rtag.attributes
210
+ return_hash = { :to => attrs[to].value }
211
+ attrs.tap { |a| a.delete(to)}
212
+ attrs[release] = rtag.text.downcase == "true" #save release as a boolean
213
+ return_hash[:attrs] = attrs
214
+
215
+ #convert all the attrs beside :to to strings, they are currently Nokogiri::XML::Attr
216
+ (return_hash[:attrs].keys-[to]).each do |a|
217
+ return_hash[:attrs][a] = return_hash[:attrs][a].to_s if a != release
218
+ end
219
+
220
+ return_hash[:attrs][when_word] = Time.parse(return_hash[:attrs][when_word]) #convert when to a datetime
221
+
222
+ return return_hash
223
+ end
224
+
225
+ #Determine if the supplied tag is a valid release tag that meets all requirements
226
+ #
227
+ #@raises [RuntimeError] Raises an error of the first fault in the release tag
228
+ #
229
+ #@return [Boolean] Returns true if no errors found
230
+ #
231
+ #@params attrs [hash] A hash of attributes for the tag, must contain: :when, a ISO 8601 timestamp; :who, to identify who or what added the tag; and :to, a string identifying the release target
232
+ def valid_release_attributes_and_tag(tag, attrs={})
233
+ raise ArgumentError, ":when is not iso8601" if attrs[:when].match('\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}Z') == nil
234
+ [:who, :to, :what].each do |check_attr|
235
+ raise ArgumentError, "#{check_attr} not supplied as a String" if attrs[check_attr].class != String
236
+ end
237
+
238
+ what_correct = false
239
+ ['self', 'collection'].each do |allowed_what_value|
240
+ what_correct = true if attrs[:what] == allowed_what_value
241
+ end
242
+ raise ArgumentError, ":what must be self or collection" if ! what_correct
243
+ raise ArgumentError, "the value set for this tag is not a boolean" if !!tag != tag
244
+ validate_tag_format(attrs[:tag]) if attrs[:tag] != nil #Will Raise exception if invalid tag
245
+ return true
246
+ end
247
+
248
+ #Add a release node for the item
249
+ #Will use the current time to add in the timestamp if you do not supply a timestamp, you can supply a timestap for correcting history, etc if desired
250
+ #
251
+ #@return [Nokogiri::XML::Element] the tag added if successful
252
+ #
253
+ #@raise [RuntimeError] Raised if attributes are improperly supplied
254
+ #
255
+ #@params tag [Boolean] True or false for the release node
256
+ #@params attrs [hash] A hash of any attributes to be placed onto the tag
257
+ # release tag example:
258
+ # item.add_tag(true,:release,{:tag=>'Fitch : Batch2',:what=>'self',:to=>'Searchworks',:who=>'petucket'})
259
+ def add_release_node(release, attrs={})
260
+ identity_metadata_ds = self.identityMetadata
261
+ attrs[:when] = Time.now.utc.iso8601 if attrs[:when] == nil#add the timestamp
262
+ valid_release_attributes(release, attrs)
263
+
264
+ return identity_metadata_ds.add_value(:release, release.to_s, attrs)
265
+ end
266
+
267
+ #Determine if the supplied tag is a valid release node that meets all requirements
268
+ #
269
+ #@raises [ArgumentError] Raises an error of the first fault in the release tag
270
+ #
271
+ #@return [Boolean] Returns true if no errors found
272
+ #
273
+ #@params attrs [hash] A hash of attributes for the tag, must contain :when, a ISO 8601 timestamp and :who to identify who or what added the tag, :to,
274
+ def valid_release_attributes(tag, attrs={})
275
+ raise ArgumentError, ":when is not iso8601" if attrs[:when].match('\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}Z') == nil
276
+ [:who, :to, :what].each do |check_attr|
277
+ raise ArgumentError, "#{check_attr} not supplied as a String" if attrs[check_attr].class != String
278
+ end
279
+
280
+ what_correct = false
281
+ ['self', 'collection'].each do |allowed_what_value|
282
+ what_correct = true if attrs[:what] == allowed_what_value
283
+ end
284
+ raise ArgumentError, ":what must be self or collection" if ! what_correct
285
+ raise ArgumentError, "the value set for this tag is not a boolean" if !!tag != tag
286
+ validate_tag_format(attrs[:tag]) if attrs[:tag] != nil #Will Raise exception if invalid tag
287
+ return true
288
+ end
289
+
290
+ #helper method to get the release nodes as a nodeset
291
+ #
292
+ #@return [Nokogiri::XML::NodeSet] of all release tags and their attributes
293
+ def release_nodes
294
+ release_tags = self.identityMetadata.ng_xml.xpath('//release')
295
+ return_hash = {}
296
+ release_tags.each do |release_tag|
297
+ hashed_node = self.release_tag_node_to_hash(release_tag)
298
+ if return_hash[hashed_node[:to]] != nil
299
+ return_hash[hashed_node[:to]] << hashed_node[:attrs]
300
+ else
301
+ return_hash[hashed_node[:to]] = [hashed_node[:attrs]]
302
+ end
303
+ end
304
+ return return_hash
305
+ end
184
306
 
185
307
  end
186
308
  end
data/lib/dor/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Dor
2
- VERSION = '4.17.2'
2
+ VERSION = '4.18.0'
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dor-services
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.17.2
4
+ version: 4.18.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michael Klein
@@ -12,480 +12,480 @@ authors:
12
12
  autorequire:
13
13
  bindir: bin
14
14
  cert_chain: []
15
- date: 2015-02-03 00:00:00.000000000 Z
15
+ date: 2015-02-05 00:00:00.000000000 Z
16
16
  dependencies:
17
17
  - !ruby/object:Gem::Dependency
18
18
  name: active-fedora
19
19
  requirement: !ruby/object:Gem::Requirement
20
20
  requirements:
21
- - - "~>"
21
+ - - ~>
22
22
  - !ruby/object:Gem::Version
23
23
  version: 5.7.1
24
24
  type: :runtime
25
25
  prerelease: false
26
26
  version_requirements: !ruby/object:Gem::Requirement
27
27
  requirements:
28
- - - "~>"
28
+ - - ~>
29
29
  - !ruby/object:Gem::Version
30
30
  version: 5.7.1
31
31
  - !ruby/object:Gem::Dependency
32
32
  name: activesupport
33
33
  requirement: !ruby/object:Gem::Requirement
34
34
  requirements:
35
- - - "~>"
35
+ - - ~>
36
36
  - !ruby/object:Gem::Version
37
37
  version: '3.2'
38
- - - ">="
38
+ - - ! '>='
39
39
  - !ruby/object:Gem::Version
40
40
  version: 3.2.18
41
41
  type: :runtime
42
42
  prerelease: false
43
43
  version_requirements: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - "~>"
45
+ - - ~>
46
46
  - !ruby/object:Gem::Version
47
47
  version: '3.2'
48
- - - ">="
48
+ - - ! '>='
49
49
  - !ruby/object:Gem::Version
50
50
  version: 3.2.18
51
51
  - !ruby/object:Gem::Dependency
52
52
  name: confstruct
53
53
  requirement: !ruby/object:Gem::Requirement
54
54
  requirements:
55
- - - "~>"
55
+ - - ~>
56
56
  - !ruby/object:Gem::Version
57
57
  version: 0.2.7
58
58
  type: :runtime
59
59
  prerelease: false
60
60
  version_requirements: !ruby/object:Gem::Requirement
61
61
  requirements:
62
- - - "~>"
62
+ - - ~>
63
63
  - !ruby/object:Gem::Version
64
64
  version: 0.2.7
65
65
  - !ruby/object:Gem::Dependency
66
66
  name: equivalent-xml
67
67
  requirement: !ruby/object:Gem::Requirement
68
68
  requirements:
69
- - - "~>"
69
+ - - ~>
70
70
  - !ruby/object:Gem::Version
71
71
  version: 0.5.1
72
72
  type: :runtime
73
73
  prerelease: false
74
74
  version_requirements: !ruby/object:Gem::Requirement
75
75
  requirements:
76
- - - "~>"
76
+ - - ~>
77
77
  - !ruby/object:Gem::Version
78
78
  version: 0.5.1
79
79
  - !ruby/object:Gem::Dependency
80
80
  name: json
81
81
  requirement: !ruby/object:Gem::Requirement
82
82
  requirements:
83
- - - "~>"
83
+ - - ~>
84
84
  - !ruby/object:Gem::Version
85
85
  version: 1.8.1
86
86
  type: :runtime
87
87
  prerelease: false
88
88
  version_requirements: !ruby/object:Gem::Requirement
89
89
  requirements:
90
- - - "~>"
90
+ - - ~>
91
91
  - !ruby/object:Gem::Version
92
92
  version: 1.8.1
93
93
  - !ruby/object:Gem::Dependency
94
94
  name: net-sftp
95
95
  requirement: !ruby/object:Gem::Requirement
96
96
  requirements:
97
- - - "~>"
97
+ - - ~>
98
98
  - !ruby/object:Gem::Version
99
99
  version: 2.1.2
100
100
  type: :runtime
101
101
  prerelease: false
102
102
  version_requirements: !ruby/object:Gem::Requirement
103
103
  requirements:
104
- - - "~>"
104
+ - - ~>
105
105
  - !ruby/object:Gem::Version
106
106
  version: 2.1.2
107
107
  - !ruby/object:Gem::Dependency
108
108
  name: net-ssh
109
109
  requirement: !ruby/object:Gem::Requirement
110
110
  requirements:
111
- - - "~>"
111
+ - - ~>
112
112
  - !ruby/object:Gem::Version
113
113
  version: 2.6.5
114
114
  type: :runtime
115
115
  prerelease: false
116
116
  version_requirements: !ruby/object:Gem::Requirement
117
117
  requirements:
118
- - - "~>"
118
+ - - ~>
119
119
  - !ruby/object:Gem::Version
120
120
  version: 2.6.5
121
121
  - !ruby/object:Gem::Dependency
122
122
  name: nokogiri
123
123
  requirement: !ruby/object:Gem::Requirement
124
124
  requirements:
125
- - - "~>"
125
+ - - ~>
126
126
  - !ruby/object:Gem::Version
127
127
  version: 1.6.0
128
128
  type: :runtime
129
129
  prerelease: false
130
130
  version_requirements: !ruby/object:Gem::Requirement
131
131
  requirements:
132
- - - "~>"
132
+ - - ~>
133
133
  - !ruby/object:Gem::Version
134
134
  version: 1.6.0
135
135
  - !ruby/object:Gem::Dependency
136
136
  name: om
137
137
  requirement: !ruby/object:Gem::Requirement
138
138
  requirements:
139
- - - "~>"
139
+ - - ~>
140
140
  - !ruby/object:Gem::Version
141
141
  version: 1.8.0
142
142
  type: :runtime
143
143
  prerelease: false
144
144
  version_requirements: !ruby/object:Gem::Requirement
145
145
  requirements:
146
- - - "~>"
146
+ - - ~>
147
147
  - !ruby/object:Gem::Version
148
148
  version: 1.8.0
149
149
  - !ruby/object:Gem::Dependency
150
150
  name: progressbar
151
151
  requirement: !ruby/object:Gem::Requirement
152
152
  requirements:
153
- - - "~>"
153
+ - - ~>
154
154
  - !ruby/object:Gem::Version
155
155
  version: 0.21.0
156
156
  type: :runtime
157
157
  prerelease: false
158
158
  version_requirements: !ruby/object:Gem::Requirement
159
159
  requirements:
160
- - - "~>"
160
+ - - ~>
161
161
  - !ruby/object:Gem::Version
162
162
  version: 0.21.0
163
163
  - !ruby/object:Gem::Dependency
164
164
  name: rdf
165
165
  requirement: !ruby/object:Gem::Requirement
166
166
  requirements:
167
- - - "~>"
167
+ - - ~>
168
168
  - !ruby/object:Gem::Version
169
169
  version: 1.0.9.0
170
170
  type: :runtime
171
171
  prerelease: false
172
172
  version_requirements: !ruby/object:Gem::Requirement
173
173
  requirements:
174
- - - "~>"
174
+ - - ~>
175
175
  - !ruby/object:Gem::Version
176
176
  version: 1.0.9.0
177
177
  - !ruby/object:Gem::Dependency
178
178
  name: rest-client
179
179
  requirement: !ruby/object:Gem::Requirement
180
180
  requirements:
181
- - - "~>"
181
+ - - ~>
182
182
  - !ruby/object:Gem::Version
183
183
  version: 1.6.7
184
184
  type: :runtime
185
185
  prerelease: false
186
186
  version_requirements: !ruby/object:Gem::Requirement
187
187
  requirements:
188
- - - "~>"
188
+ - - ~>
189
189
  - !ruby/object:Gem::Version
190
190
  version: 1.6.7
191
191
  - !ruby/object:Gem::Dependency
192
192
  name: rsolr-ext
193
193
  requirement: !ruby/object:Gem::Requirement
194
194
  requirements:
195
- - - "~>"
195
+ - - ~>
196
196
  - !ruby/object:Gem::Version
197
197
  version: 1.0.3
198
198
  type: :runtime
199
199
  prerelease: false
200
200
  version_requirements: !ruby/object:Gem::Requirement
201
201
  requirements:
202
- - - "~>"
202
+ - - ~>
203
203
  - !ruby/object:Gem::Version
204
204
  version: 1.0.3
205
205
  - !ruby/object:Gem::Dependency
206
206
  name: ruby-cache
207
207
  requirement: !ruby/object:Gem::Requirement
208
208
  requirements:
209
- - - "~>"
209
+ - - ~>
210
210
  - !ruby/object:Gem::Version
211
211
  version: 0.3.0
212
212
  type: :runtime
213
213
  prerelease: false
214
214
  version_requirements: !ruby/object:Gem::Requirement
215
215
  requirements:
216
- - - "~>"
216
+ - - ~>
217
217
  - !ruby/object:Gem::Version
218
218
  version: 0.3.0
219
219
  - !ruby/object:Gem::Dependency
220
220
  name: ruby-graphviz
221
221
  requirement: !ruby/object:Gem::Requirement
222
222
  requirements:
223
- - - "~>"
223
+ - - ~>
224
224
  - !ruby/object:Gem::Version
225
225
  version: 1.0.9
226
226
  type: :runtime
227
227
  prerelease: false
228
228
  version_requirements: !ruby/object:Gem::Requirement
229
229
  requirements:
230
- - - "~>"
230
+ - - ~>
231
231
  - !ruby/object:Gem::Version
232
232
  version: 1.0.9
233
233
  - !ruby/object:Gem::Dependency
234
234
  name: rubydora
235
235
  requirement: !ruby/object:Gem::Requirement
236
236
  requirements:
237
- - - "~>"
237
+ - - ~>
238
238
  - !ruby/object:Gem::Version
239
239
  version: 1.6.5
240
240
  type: :runtime
241
241
  prerelease: false
242
242
  version_requirements: !ruby/object:Gem::Requirement
243
243
  requirements:
244
- - - "~>"
244
+ - - ~>
245
245
  - !ruby/object:Gem::Version
246
246
  version: 1.6.5
247
247
  - !ruby/object:Gem::Dependency
248
248
  name: solrizer
249
249
  requirement: !ruby/object:Gem::Requirement
250
250
  requirements:
251
- - - "~>"
251
+ - - ~>
252
252
  - !ruby/object:Gem::Version
253
253
  version: '2.0'
254
254
  type: :runtime
255
255
  prerelease: false
256
256
  version_requirements: !ruby/object:Gem::Requirement
257
257
  requirements:
258
- - - "~>"
258
+ - - ~>
259
259
  - !ruby/object:Gem::Version
260
260
  version: '2.0'
261
261
  - !ruby/object:Gem::Dependency
262
262
  name: systemu
263
263
  requirement: !ruby/object:Gem::Requirement
264
264
  requirements:
265
- - - "~>"
265
+ - - ~>
266
266
  - !ruby/object:Gem::Version
267
267
  version: 2.6.0
268
268
  type: :runtime
269
269
  prerelease: false
270
270
  version_requirements: !ruby/object:Gem::Requirement
271
271
  requirements:
272
- - - "~>"
272
+ - - ~>
273
273
  - !ruby/object:Gem::Version
274
274
  version: 2.6.0
275
275
  - !ruby/object:Gem::Dependency
276
276
  name: uuidtools
277
277
  requirement: !ruby/object:Gem::Requirement
278
278
  requirements:
279
- - - "~>"
279
+ - - ~>
280
280
  - !ruby/object:Gem::Version
281
281
  version: 2.1.4
282
282
  type: :runtime
283
283
  prerelease: false
284
284
  version_requirements: !ruby/object:Gem::Requirement
285
285
  requirements:
286
- - - "~>"
286
+ - - ~>
287
287
  - !ruby/object:Gem::Version
288
288
  version: 2.1.4
289
289
  - !ruby/object:Gem::Dependency
290
290
  name: validatable
291
291
  requirement: !ruby/object:Gem::Requirement
292
292
  requirements:
293
- - - "~>"
293
+ - - ~>
294
294
  - !ruby/object:Gem::Version
295
295
  version: 1.6.7
296
296
  type: :runtime
297
297
  prerelease: false
298
298
  version_requirements: !ruby/object:Gem::Requirement
299
299
  requirements:
300
- - - "~>"
300
+ - - ~>
301
301
  - !ruby/object:Gem::Version
302
302
  version: 1.6.7
303
303
  - !ruby/object:Gem::Dependency
304
304
  name: osullivan
305
305
  requirement: !ruby/object:Gem::Requirement
306
306
  requirements:
307
- - - ">="
307
+ - - ! '>='
308
308
  - !ruby/object:Gem::Version
309
309
  version: '0'
310
310
  type: :runtime
311
311
  prerelease: false
312
312
  version_requirements: !ruby/object:Gem::Requirement
313
313
  requirements:
314
- - - ">="
314
+ - - ! '>='
315
315
  - !ruby/object:Gem::Version
316
316
  version: '0'
317
317
  - !ruby/object:Gem::Dependency
318
318
  name: dor-workflow-service
319
319
  requirement: !ruby/object:Gem::Requirement
320
320
  requirements:
321
- - - "~>"
321
+ - - ~>
322
322
  - !ruby/object:Gem::Version
323
323
  version: '1.7'
324
- - - ">="
324
+ - - ! '>='
325
325
  - !ruby/object:Gem::Version
326
326
  version: 1.7.1
327
327
  type: :runtime
328
328
  prerelease: false
329
329
  version_requirements: !ruby/object:Gem::Requirement
330
330
  requirements:
331
- - - "~>"
331
+ - - ~>
332
332
  - !ruby/object:Gem::Version
333
333
  version: '1.7'
334
- - - ">="
334
+ - - ! '>='
335
335
  - !ruby/object:Gem::Version
336
336
  version: 1.7.1
337
337
  - !ruby/object:Gem::Dependency
338
338
  name: druid-tools
339
339
  requirement: !ruby/object:Gem::Requirement
340
340
  requirements:
341
- - - "~>"
341
+ - - ~>
342
342
  - !ruby/object:Gem::Version
343
343
  version: 0.3.1
344
344
  type: :runtime
345
345
  prerelease: false
346
346
  version_requirements: !ruby/object:Gem::Requirement
347
347
  requirements:
348
- - - "~>"
348
+ - - ~>
349
349
  - !ruby/object:Gem::Version
350
350
  version: 0.3.1
351
351
  - !ruby/object:Gem::Dependency
352
352
  name: lyber-utils
353
353
  requirement: !ruby/object:Gem::Requirement
354
354
  requirements:
355
- - - "~>"
355
+ - - ~>
356
356
  - !ruby/object:Gem::Version
357
357
  version: 0.1.2
358
358
  type: :runtime
359
359
  prerelease: false
360
360
  version_requirements: !ruby/object:Gem::Requirement
361
361
  requirements:
362
- - - "~>"
362
+ - - ~>
363
363
  - !ruby/object:Gem::Version
364
364
  version: 0.1.2
365
365
  - !ruby/object:Gem::Dependency
366
366
  name: moab-versioning
367
367
  requirement: !ruby/object:Gem::Requirement
368
368
  requirements:
369
- - - "~>"
369
+ - - ~>
370
370
  - !ruby/object:Gem::Version
371
371
  version: 1.4.0
372
372
  type: :runtime
373
373
  prerelease: false
374
374
  version_requirements: !ruby/object:Gem::Requirement
375
375
  requirements:
376
- - - "~>"
376
+ - - ~>
377
377
  - !ruby/object:Gem::Version
378
378
  version: 1.4.0
379
379
  - !ruby/object:Gem::Dependency
380
380
  name: stanford-mods
381
381
  requirement: !ruby/object:Gem::Requirement
382
382
  requirements:
383
- - - "~>"
383
+ - - ~>
384
384
  - !ruby/object:Gem::Version
385
385
  version: 0.0.14
386
386
  type: :runtime
387
387
  prerelease: false
388
388
  version_requirements: !ruby/object:Gem::Requirement
389
389
  requirements:
390
- - - "~>"
390
+ - - ~>
391
391
  - !ruby/object:Gem::Version
392
392
  version: 0.0.14
393
393
  - !ruby/object:Gem::Dependency
394
394
  name: fakeweb
395
395
  requirement: !ruby/object:Gem::Requirement
396
396
  requirements:
397
- - - "~>"
397
+ - - ~>
398
398
  - !ruby/object:Gem::Version
399
399
  version: 1.3.0
400
400
  type: :development
401
401
  prerelease: false
402
402
  version_requirements: !ruby/object:Gem::Requirement
403
403
  requirements:
404
- - - "~>"
404
+ - - ~>
405
405
  - !ruby/object:Gem::Version
406
406
  version: 1.3.0
407
407
  - !ruby/object:Gem::Dependency
408
408
  name: haml
409
409
  requirement: !ruby/object:Gem::Requirement
410
410
  requirements:
411
- - - "~>"
411
+ - - ~>
412
412
  - !ruby/object:Gem::Version
413
413
  version: 4.0.4
414
414
  type: :development
415
415
  prerelease: false
416
416
  version_requirements: !ruby/object:Gem::Requirement
417
417
  requirements:
418
- - - "~>"
418
+ - - ~>
419
419
  - !ruby/object:Gem::Version
420
420
  version: 4.0.4
421
421
  - !ruby/object:Gem::Dependency
422
422
  name: jhove-service
423
423
  requirement: !ruby/object:Gem::Requirement
424
424
  requirements:
425
- - - "~>"
425
+ - - ~>
426
426
  - !ruby/object:Gem::Version
427
427
  version: 1.0.1
428
428
  type: :development
429
429
  prerelease: false
430
430
  version_requirements: !ruby/object:Gem::Requirement
431
431
  requirements:
432
- - - "~>"
432
+ - - ~>
433
433
  - !ruby/object:Gem::Version
434
434
  version: 1.0.1
435
435
  - !ruby/object:Gem::Dependency
436
436
  name: rake
437
437
  requirement: !ruby/object:Gem::Requirement
438
438
  requirements:
439
- - - "~>"
439
+ - - ~>
440
440
  - !ruby/object:Gem::Version
441
441
  version: 0.8.7
442
442
  type: :development
443
443
  prerelease: false
444
444
  version_requirements: !ruby/object:Gem::Requirement
445
445
  requirements:
446
- - - "~>"
446
+ - - ~>
447
447
  - !ruby/object:Gem::Version
448
448
  version: 0.8.7
449
449
  - !ruby/object:Gem::Dependency
450
450
  name: rdoc
451
451
  requirement: !ruby/object:Gem::Requirement
452
452
  requirements:
453
- - - "~>"
453
+ - - ~>
454
454
  - !ruby/object:Gem::Version
455
455
  version: 4.0.1
456
456
  type: :development
457
457
  prerelease: false
458
458
  version_requirements: !ruby/object:Gem::Requirement
459
459
  requirements:
460
- - - "~>"
460
+ - - ~>
461
461
  - !ruby/object:Gem::Version
462
462
  version: 4.0.1
463
463
  - !ruby/object:Gem::Dependency
464
464
  name: rspec
465
465
  requirement: !ruby/object:Gem::Requirement
466
466
  requirements:
467
- - - "~>"
467
+ - - ~>
468
468
  - !ruby/object:Gem::Version
469
469
  version: 2.14.1
470
470
  type: :development
471
471
  prerelease: false
472
472
  version_requirements: !ruby/object:Gem::Requirement
473
473
  requirements:
474
- - - "~>"
474
+ - - ~>
475
475
  - !ruby/object:Gem::Version
476
476
  version: 2.14.1
477
477
  - !ruby/object:Gem::Dependency
478
478
  name: yard
479
479
  requirement: !ruby/object:Gem::Requirement
480
480
  requirements:
481
- - - "~>"
481
+ - - ~>
482
482
  - !ruby/object:Gem::Version
483
483
  version: 0.8.7
484
484
  type: :development
485
485
  prerelease: false
486
486
  version_requirements: !ruby/object:Gem::Requirement
487
487
  requirements:
488
- - - "~>"
488
+ - - ~>
489
489
  - !ruby/object:Gem::Version
490
490
  version: 0.8.7
491
491
  description: Contains classes to register objects and initialize workflows
@@ -598,17 +598,17 @@ require_paths:
598
598
  - lib
599
599
  required_ruby_version: !ruby/object:Gem::Requirement
600
600
  requirements:
601
- - - ">="
601
+ - - ! '>='
602
602
  - !ruby/object:Gem::Version
603
603
  version: '0'
604
604
  required_rubygems_version: !ruby/object:Gem::Requirement
605
605
  requirements:
606
- - - ">="
606
+ - - ! '>='
607
607
  - !ruby/object:Gem::Version
608
608
  version: 1.3.6
609
609
  requirements: []
610
610
  rubyforge_project:
611
- rubygems_version: 2.4.2
611
+ rubygems_version: 2.4.3
612
612
  signing_key:
613
613
  specification_version: 4
614
614
  summary: Ruby implmentation of DOR services used by the SULAIR Digital Library