spira 3.1.0 → 3.1.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: ba7c397f10839515753ca0a13c380959560193a2
4
- data.tar.gz: b9feeb54d42235f5ab083febfd5f394c12cd8066
2
+ SHA256:
3
+ metadata.gz: 2de3fd45966cc8c2baff9f49b1e2c2e497365e6d7f990fdce4125bc22b9c052b
4
+ data.tar.gz: 2b3cd2d27357ec52e8c4e0beed5592394779959584d16aa45ec760a832a242da
5
5
  SHA512:
6
- metadata.gz: 1ecb09b4b0fa2e1b99f9d271a4d3c4000d9f6d9c5b591b7d7db08129ce225e253ea28964b5b923fc4f7e12a47dbca511e334fc3bf827d17578898f77b56586ef
7
- data.tar.gz: 78d84e1dcdf5097b097d26297951646eff2b10ab3c8f09f08cbf80aa989b9fb35abc53434dcd6e35575d160ff896eb11572ed70780d957e30c6b6ef2bf63c978
6
+ metadata.gz: da9fffd68d240d1051edceb46256cf1d0095d29e44c70057c435d92d8913ab8ef51798938556ce790d986edd08c27a2c65a787ba391f06308d531fbeac7c6e15
7
+ data.tar.gz: e19e1333efba7bf6a98bd1070e2898b92acd0cbc00ed102c88f9ead82c151d79fec9371235ee5d5bcb18c7e3026b99e84b460a37f3104f2bf32e91c8fd90ffb8
data/README.md CHANGED
@@ -20,12 +20,15 @@ A changelog is available in the {file:CHANGES.md} file.
20
20
  ### Example
21
21
 
22
22
  ```ruby
23
+ require 'spira'
24
+ require 'rdf/vocab'
25
+
23
26
  class Person < Spira::Base
24
27
 
25
- configure :base_uri => "http://example.org/example/people"
28
+ configure base_uri: "http://example.org/example/people"
26
29
 
27
- property :name, :predicate => RDF::Vocab::FOAF.name, :type => String
28
- property :age, :predicate => RDF::Vocab::FOAF.age, :type => Integer
30
+ property :name, predicate: RDF::Vocab::FOAF.name, type: String
31
+ property :age, predicate: RDF::Vocab::FOAF.age, type: Integer
29
32
 
30
33
  end
31
34
 
@@ -110,17 +113,18 @@ without the `RDF::` prefix. For example:
110
113
 
111
114
  ```ruby
112
115
  require 'spira'
116
+ require 'rdf/vocab'
113
117
 
114
118
  class CD < Spira::Base
115
- configure :base_uri => 'http://example.org/cds'
116
- property :name, :predicate => RDF::Vocab::DC.title, :type => XSD.string
117
- property :artist, :predicate => RDF::URI.new('http://example.org/vocab/artist'), :type => :artist
119
+ configure base_uri: 'http://example.org/cds'
120
+ property :name, predicate: RDF::Vocab::DC.title, type: XSD.string
121
+ property :artist, predicate: RDF::URI.new('http://example.org/vocab/artist'), type: :artist
118
122
  end
119
123
 
120
124
  class Artist < Spira::Base
121
- configure :base_uri => 'http://example.org/artists'
122
- property :name, :predicate => RDF::Vocab::DC.title, :type => XSD.string
123
- has_many :cds, :predicate => RDF::URI.new('http://example.org/vocab/published_cd'), :type => XSD.string
125
+ configure base_uri: 'http://example.org/artists'
126
+ property :name, predicate: RDF::Vocab::DC.title, type: XSD.string
127
+ has_many :cds, predicate: RDF::URI.new('http://example.org/vocab/published_cd'), type: XSD.string
124
128
  end
125
129
  ```
126
130
 
@@ -210,9 +214,12 @@ CD.for RDF::URI.new('http://example.org/cds/queens-greatest-hits')
210
214
  A class with a `type` set is assigned an `RDF.type` on creation and saving.
211
215
 
212
216
  ```ruby
217
+ require 'spira'
218
+ require 'rdf/vocab'
219
+
213
220
  class Album < Spira::Base
214
221
  type RDF::URI.new('http://example.org/types/album')
215
- property :name, :predicate => RDF::Vocab::DC.title
222
+ property :name, predicate: RDF::Vocab::DC.title
216
223
  end
217
224
 
218
225
  Spira.repository = RDF::Repository.new
@@ -263,10 +270,10 @@ A class with a `default_vocabulary` set will transparently create predicates for
263
270
 
264
271
  ```ruby
265
272
  class Song < Spira::Base
266
- configure :default_vocabulary => RDF::URI.new('http://example.org/vocab'),
267
- :base_uri => 'http://example.org/songs'
273
+ configure default_vocabulary: RDF::URI.new('http://example.org/vocab'),
274
+ base_uri: 'http://example.org/songs'
268
275
  property :title
269
- property :author, :type => :artist
276
+ property :author, type: :artist
270
277
  end
271
278
 
272
279
  Spira.repository = RDF::Repository.new
@@ -288,8 +295,8 @@ will always return a list, including an empty list for no value. All options
288
295
  for `property` work for `has_many`.
289
296
 
290
297
  ```ruby
291
- property :artist, :type => :artist #=> cd.artist returns a single value
292
- has_many :cds, :type => :cd #=> artist.cds returns an array
298
+ property :artist, type: :artist #=> cd.artist returns a single value
299
+ has_many :cds, type: :cd #=> artist.cds returns an array
293
300
  ```
294
301
 
295
302
  Property always takes a symbol name as a name, and a variable list of options. The supported options are:
@@ -308,7 +315,7 @@ properties having a single item, ie defined with `property`.
308
315
 
309
316
  ```ruby
310
317
  class Article < Spira::Base
311
- property :label, :localized => true
318
+ property :label, localized: true
312
319
  end
313
320
 
314
321
  Spira.repository = RDF::Repository.new
@@ -368,8 +375,8 @@ Classes can now use this particular type like so:
368
375
 
369
376
  ```ruby
370
377
  class Test < Spira::Base
371
- property :test1, :type => Integer
372
- property :test2, :type => RDF::XSD.integer
378
+ property :test1, type: Integer
379
+ property :test2, type: RDF::XSD.integer
373
380
  end
374
381
  ```
375
382
 
@@ -404,7 +411,7 @@ module MyModule
404
411
  end
405
412
 
406
413
  class MyClass < Spira::Base
407
- property :property1, :type => MyModule::MyType
414
+ property :property1, type: MyModule::MyType
408
415
  end
409
416
  ```
410
417
 
@@ -467,6 +474,10 @@ All model objects are fully-functional as `RDF::Enumerable`, `RDF::Queryable`,
467
474
  and `RDF::Mutable`. This lets you manipulate objects on the RDF statement
468
475
  level. You can also access attributes that are not defined as properties.
469
476
 
477
+ ## Documentation
478
+
479
+ <https://www.rubydoc.info/github/ruby-rdf/spira>
480
+
470
481
  ## Support
471
482
 
472
483
  There are a number of ways to ask for help. In declining order of preference:
data/VERSION CHANGED
@@ -1 +1 @@
1
- 3.1.0
1
+ 3.1.1
@@ -3,6 +3,7 @@ require "rdf/ext/uri"
3
3
  require "promise"
4
4
  require "spira/exceptions"
5
5
  require "spira/utils"
6
+ require "rdf/vocab"
6
7
 
7
8
  ##
8
9
  # Spira is a framework for building projections of RDF data into Ruby classes.
@@ -93,7 +93,7 @@ module Spira
93
93
  end
94
94
 
95
95
  def instantiate_record(subj)
96
- new(:_subject => id_for(subj))
96
+ new(_subject: id_for(subj))
97
97
  end
98
98
 
99
99
  end # class methods
@@ -260,7 +260,7 @@ module Spira
260
260
  # @param [RDF::Resource] new_subject
261
261
  # @return [Spira::Base] copy
262
262
  def copy(new_subject)
263
- self.class.new(@attrs.merge(:_subject => new_subject))
263
+ self.class.new(@attrs.merge(_subject: new_subject))
264
264
  end
265
265
 
266
266
  ##
@@ -336,7 +336,7 @@ module Spira
336
336
  end
337
337
 
338
338
  def serialize_localized_property(value, locale)
339
- RDF::Literal.new(value, :language => locale)
339
+ RDF::Literal.new(value, language: locale)
340
340
  end
341
341
 
342
342
  def unserialize_localized_properties(values, locale)
@@ -352,7 +352,7 @@ module Spira
352
352
  end
353
353
 
354
354
  def serialize_hash_localized_properties(values)
355
- values.map { |lang, property| RDF::Literal.new(property, :language => lang) }
355
+ values.map { |lang, property| RDF::Literal.new(property, language: lang) }
356
356
  end
357
357
 
358
358
  # Build a Ruby value from an RDF value.
@@ -20,7 +20,7 @@ module Spira
20
20
  # @param [Hash] args
21
21
  # args can contain:
22
22
  # :conditions - Hash of properties and values
23
- # :limit - Fixnum, limiting the amount of returned records
23
+ # :limit - Integer, limiting the amount of returned records
24
24
  # @return [Spira::Base, Array]
25
25
  def find(scope, *args)
26
26
  case scope
@@ -73,7 +73,7 @@ module Spira
73
73
  # cannot handle such patterns, we iterate across types "manually"
74
74
  types.each do |tp|
75
75
  break if limit.zero?
76
- q = conditions_to_query(conditions.merge(:type => tp))
76
+ q = conditions_to_query(conditions.merge(type: tp))
77
77
  repository.query(q) do |solution|
78
78
  break if limit.zero?
79
79
  if offset.zero?
@@ -112,24 +112,24 @@ module Spira
112
112
  #
113
113
  # ==== Examples
114
114
  # # Create a single new object
115
- # User.create(:first_name => 'Jamie')
115
+ # User.create(first_name: 'Jamie')
116
116
  #
117
117
  # # Create a single new object using the :admin mass-assignment security role
118
- # User.create({ :first_name => 'Jamie', :is_admin => true }, :as => :admin)
118
+ # User.create({ first_name: 'Jamie', is_admin: true }, as: :admin)
119
119
  #
120
120
  # # Create a single new object bypassing mass-assignment security
121
- # User.create({ :first_name => 'Jamie', :is_admin => true }, :without_protection => true)
121
+ # User.create({ first_name: 'Jamie', is_admin: true }, without_protection: true)
122
122
  #
123
123
  # # Create an Array of new objects
124
- # User.create([{ :first_name => 'Jamie' }, { :first_name => 'Jeremy' }])
124
+ # User.create([{ first_name: 'Jamie' }, { first_name: 'Jeremy' }])
125
125
  #
126
126
  # # Create a single object and pass it into a block to set other attributes.
127
- # User.create(:first_name => 'Jamie') do |u|
127
+ # User.create(first_name: 'Jamie') do |u|
128
128
  # u.is_admin = false
129
129
  # end
130
130
  #
131
131
  # # Creating an Array of new objects using a block, where the block is executed for each object:
132
- # User.create([{ :first_name => 'Jamie' }, { :first_name => 'Jeremy' }]) do |u|
132
+ # User.create([{ first_name: 'Jamie' }, { first_name: 'Jeremy' }]) do |u|
133
133
  # u.is_admin = false
134
134
  # end
135
135
  def create(attributes = nil, options = {}, &block)
@@ -192,7 +192,7 @@ module Spira
192
192
  # @param [Hash{Symbol => Any}] attributes Initial attributes
193
193
  # @return [Spira::Base] the newly created instance
194
194
  def project(subject, attributes = {}, &block)
195
- new(attributes.merge(:_subject => subject), &block)
195
+ new(attributes.merge(_subject: subject), &block)
196
196
  end
197
197
 
198
198
  ##
@@ -342,7 +342,7 @@ module Spira
342
342
  # Update multiple attributes of this repository.
343
343
  #
344
344
  # @example Update multiple attributes
345
- # person.update_attributes(:name => 'test', :age => 10)
345
+ # person.update_attributes(name: 'test', age: 10)
346
346
  # #=> person
347
347
  # person.name
348
348
  # #=> 'test'
@@ -366,7 +366,7 @@ module Spira
366
366
  # NB: "props" argument is ignored, it is handled in Base
367
367
  #
368
368
  def reload(props = {})
369
- sts = self.class.repository.query(:subject => subject)
369
+ sts = self.class.repository.query({subject: subject})
370
370
  self.class.properties.each do |name, options|
371
371
  name = name.to_s
372
372
  if sts
@@ -15,8 +15,8 @@ module Spira
15
15
  #
16
16
  def configure(options = {})
17
17
  singleton_class.class_eval do
18
- { :base_uri => options[:base_uri],
19
- :default_vocabulary => options[:default_vocabulary]
18
+ { base_uri: options[:base_uri],
19
+ default_vocabulary: options[:default_vocabulary]
20
20
  }.each do |name, value|
21
21
  # redefine reader methods only when required,
22
22
  # otherwise, use the ancestor methods
@@ -61,11 +61,11 @@ module Spira
61
61
  # represents an RDF predicate.
62
62
  #
63
63
  # @example A simple string property
64
- # property :name, :predicate => RDF::Vocab::FOAF.name, :type => String
64
+ # property :name, predicate: RDF::Vocab::FOAF.name, type: String
65
65
  # @example A property which defaults to {Spira::Types::Any}
66
- # property :name, :predicate => RDF::Vocab::FOAF.name
66
+ # property :name, predicate: RDF::Vocab::FOAF.name
67
67
  # @example An integer property
68
- # property :age, :predicate => RDF::Vocab::FOAF.age, :type => Integer
68
+ # property :age, predicate: RDF::Vocab::FOAF.age, type: Integer
69
69
  # @param [Symbol] name The name of this property
70
70
  # @param [Hash{Symbol => Any}] opts property options
71
71
  # @option opts [RDF::URI] :predicate The RDF predicate which will refer to this property
@@ -81,12 +81,12 @@ module Spira
81
81
  if opts.delete(:localized)
82
82
  raise 'Only Spira::Types::Any properties can accept the :localized option' unless type_for(opts[:type]) == Spira::Types::Any
83
83
  define_localized_property_methods(name, opts)
84
- has_many "#{name}_native", opts.merge(:type => Spira::Types::Native)
84
+ has_many "#{name}_native", opts.merge(type: Spira::Types::Native)
85
85
  else
86
86
  unset_has_many(name)
87
87
  predicate = predicate_for(opts[:predicate], name)
88
88
  type = type_for(opts[:type])
89
- properties[name] = HashWithIndifferentAccess.new(:predicate => predicate, :type => type)
89
+ properties[name] = HashWithIndifferentAccess.new(predicate: predicate, type: type)
90
90
 
91
91
  define_attribute_method name
92
92
  define_method "#{name}=" do |arg|
@@ -26,8 +26,8 @@ module Spira
26
26
  # Spira by default. It allows either of the following forms to declare an
27
27
  # integer property on a Spira resource:
28
28
  #
29
- # property :age, :predicate => RDF::Vocab::FOAF.age, :type => Integer
30
- # property :age, :predicate => RDF::Vocab::FOAF.age, :type => RDF::XSD.integer
29
+ # property :age, predicate: RDF::Vocab::FOAF.age, type: Integer
30
+ # property :age, predicate: RDF::Vocab::FOAF.age, type: RDF::XSD.integer
31
31
  #
32
32
  # `Spira::Type`s include the RDF namespace and thus have all of the base RDF
33
33
  # vocabularies available to them without the `RDF::` prefix.
@@ -18,7 +18,7 @@ module Spira::Types
18
18
  end
19
19
 
20
20
  def self.serialize(value)
21
- RDF::Literal.new(value, :datatype => XSD.anyURI)
21
+ RDF::Literal.new(value, datatype: XSD.anyURI)
22
22
  end
23
23
 
24
24
  register_alias RDF::XSD.anyURI
@@ -19,9 +19,9 @@ module Spira::Types
19
19
 
20
20
  def self.serialize(value)
21
21
  if value
22
- RDF::Literal.new(true, :datatype => RDF::XSD.boolean)
22
+ RDF::Literal.new(true, datatype: RDF::XSD.boolean)
23
23
  else
24
- RDF::Literal.new(false, :datatype => RDF::XSD.boolean)
24
+ RDF::Literal.new(false, datatype: RDF::XSD.boolean)
25
25
  end
26
26
  end
27
27
 
@@ -17,10 +17,10 @@ module Spira::Types
17
17
  end
18
18
 
19
19
  def self.serialize(value)
20
- RDF::Literal.new(value, :datatype => XSD.date)
20
+ RDF::Literal.new(value, datatype: XSD.date)
21
21
  end
22
22
 
23
- register_alias XSD.date
23
+ register_alias RDF::XSD.date
24
24
 
25
25
  end
26
26
  end
@@ -17,10 +17,10 @@ module Spira::Types
17
17
  end
18
18
 
19
19
  def self.serialize(value)
20
- RDF::Literal.new(value, :datatype => XSD.dateTime)
20
+ RDF::Literal.new(value, datatype: XSD.dateTime)
21
21
  end
22
22
 
23
- register_alias XSD.dateTime
23
+ register_alias RDF::XSD.dateTime
24
24
 
25
25
  end
26
26
  end
@@ -20,7 +20,7 @@ module Spira::Types
20
20
  end
21
21
 
22
22
  def self.serialize(value)
23
- RDF::Literal.new(value.is_a?(BigDecimal) ? value.to_s('F') : value.to_s, :datatype => RDF::XSD.decimal)
23
+ RDF::Literal.new(value.is_a?(BigDecimal) ? value.to_s('F') : value.to_s, datatype: RDF::XSD.decimal)
24
24
  end
25
25
 
26
26
  register_alias RDF::XSD.decimal
@@ -18,7 +18,7 @@ module Spira::Types
18
18
  end
19
19
 
20
20
  def self.serialize(value)
21
- RDF::Literal.new(value.to_f, :datatype => RDF::XSD.double)
21
+ RDF::Literal.new(value.to_f, datatype: RDF::XSD.double)
22
22
  end
23
23
 
24
24
  register_alias RDF::XSD.double
@@ -18,7 +18,7 @@ module Spira::Types
18
18
  end
19
19
 
20
20
  def self.serialize(value)
21
- RDF::Literal.new(value.to_f, :datatype => RDF::XSD.float)
21
+ RDF::Literal.new(value.to_f, datatype: RDF::XSD.float)
22
22
  end
23
23
 
24
24
  register_alias RDF::XSD.float
@@ -17,10 +17,10 @@ module Spira::Types
17
17
  end
18
18
 
19
19
  def self.serialize(value)
20
- RDF::Literal.new(value, :datatype => XSD.gYear)
20
+ RDF::Literal.new(value, datatype: XSD.gYear)
21
21
  end
22
22
 
23
- register_alias XSD.gYear
23
+ register_alias RDF::XSD.gYear
24
24
 
25
25
  end
26
26
  end
@@ -18,10 +18,10 @@ module Spira::Types
18
18
  end
19
19
 
20
20
  def self.serialize(value)
21
- RDF::Literal.new(value, :datatype => XSD.int)
21
+ RDF::Literal.new(value, datatype: XSD.int)
22
22
  end
23
23
 
24
- register_alias XSD.int
24
+ register_alias RDF::XSD.int
25
25
 
26
26
  end
27
27
  end
@@ -18,7 +18,7 @@ module Spira::Types
18
18
  end
19
19
 
20
20
  def self.serialize(value)
21
- RDF::Literal.new(value, :datatype => XSD.integer)
21
+ RDF::Literal.new(value, datatype: XSD.integer)
22
22
  end
23
23
 
24
24
  register_alias RDF::XSD.integer
@@ -18,10 +18,10 @@ module Spira::Types
18
18
  end
19
19
 
20
20
  def self.serialize(value)
21
- RDF::Literal.new(value, :datatype => XSD.long)
21
+ RDF::Literal.new(value, datatype: XSD.long)
22
22
  end
23
23
 
24
- register_alias XSD.long
24
+ register_alias RDF::XSD.long
25
25
 
26
26
  end
27
27
  end
@@ -18,10 +18,10 @@ module Spira::Types
18
18
  end
19
19
 
20
20
  def self.serialize(value)
21
- RDF::Literal.new(value, :datatype => XSD.negativeInteger)
21
+ RDF::Literal.new(value, datatype: XSD.negativeInteger)
22
22
  end
23
23
 
24
- register_alias XSD.negativeInteger
24
+ register_alias RDF::XSD.negativeInteger
25
25
 
26
26
  end
27
27
  end
@@ -18,10 +18,10 @@ module Spira::Types
18
18
  end
19
19
 
20
20
  def self.serialize(value)
21
- RDF::Literal.new(value, :datatype => XSD.nonNegativeInteger)
21
+ RDF::Literal.new(value, datatype: XSD.nonNegativeInteger)
22
22
  end
23
23
 
24
- register_alias XSD.nonNegativeInteger
24
+ register_alias RDF::XSD.nonNegativeInteger
25
25
 
26
26
  end
27
27
  end
@@ -18,10 +18,10 @@ module Spira::Types
18
18
  end
19
19
 
20
20
  def self.serialize(value)
21
- RDF::Literal.new(value, :datatype => XSD.nonPositiveInteger)
21
+ RDF::Literal.new(value, datatype: XSD.nonPositiveInteger)
22
22
  end
23
23
 
24
- register_alias XSD.nonPositiveInteger
24
+ register_alias RDF::XSD.nonPositiveInteger
25
25
 
26
26
  end
27
27
  end
@@ -18,10 +18,10 @@ module Spira::Types
18
18
  end
19
19
 
20
20
  def self.serialize(value)
21
- RDF::Literal.new(value, :datatype => XSD.positiveInteger)
21
+ RDF::Literal.new(value, datatype: XSD.positiveInteger)
22
22
  end
23
23
 
24
- register_alias XSD.positiveInteger
24
+ register_alias RDF::XSD.positiveInteger
25
25
 
26
26
  end
27
27
  end
@@ -17,10 +17,10 @@ module Spira::Types
17
17
  end
18
18
 
19
19
  def self.serialize(value)
20
- RDF::Literal.new(value, :datatype => XSD.time)
20
+ RDF::Literal.new(value, datatype: XSD.time)
21
21
  end
22
22
 
23
- register_alias XSD.time
23
+ register_alias RDF::XSD.time
24
24
 
25
25
  end
26
26
  end
@@ -23,11 +23,11 @@ module RDF
23
23
  # @return [self]
24
24
  def rename!(old_subject, new_subject)
25
25
  transaction(mutable: true) do |tx|
26
- query(subject: old_subject) do |statement|
26
+ query({subject: old_subject}) do |statement|
27
27
  tx.insert RDF::Statement.new(new_subject, statement.predicate, statement.object)
28
28
  tx.delete(statement)
29
29
  end
30
- query(object: old_subject) do |statement|
30
+ query({object: old_subject}) do |statement|
31
31
  tx.insert RDF::Statement.new(statement.subject, statement.predicate, new_subject)
32
32
  tx.delete(statement)
33
33
  end
@@ -6,7 +6,7 @@ module Spira
6
6
  #
7
7
  # begin
8
8
  # complex_operation_that_calls_save!_internally
9
- # rescue Spira::RecordInvalid => invalid
9
+ # rescue Spira:RecordInvalid: invalid
10
10
  # puts invalid.record.errors
11
11
  # end
12
12
  class RecordInvalid < SpiraError
@@ -15,7 +15,7 @@ module Spira
15
15
  @record = record
16
16
  errors = @record.errors.full_messages.join(", ")
17
17
  # TODO: use I18n later
18
- # super(I18n.t("activerecord.errors.messages.record_invalid", :errors => errors))
18
+ # super(I18n.t("activerecord.errors.messages.record_invalid", errors: errors))
19
19
  super "invalid record"
20
20
  end
21
21
  end
@@ -39,7 +39,7 @@ module Spira
39
39
  end
40
40
  end
41
41
 
42
- # The validation process on save can be skipped by passing <tt>:validate => false</tt>. The regular Base#save method is
42
+ # The validation process on save can be skipped by passing <tt>validate: false</tt>. The regular Base#save method is
43
43
  # replaced with this when the validations module is mixed in, which it is by default.
44
44
  def save(options={})
45
45
  perform_validations(options) ? super : false
@@ -17,7 +17,7 @@ module Spira
17
17
  end
18
18
 
19
19
  def validate_each(record, attribute, value)
20
- @klass.find_each(:conditions => {attribute => value}) do |other_record|
20
+ @klass.find_each(conditions: {attribute => value}) do |other_record|
21
21
  if other_record.subject != record.subject
22
22
  record.errors.add(attribute, "is already taken")
23
23
  break
metadata CHANGED
@@ -1,15 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: spira
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.1.0
4
+ version: 3.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ben Lavender
8
8
  autorequire:
9
- bindir:
10
- - bin
9
+ bindir: bin
11
10
  cert_chain: []
12
- date: 2018-07-12 00:00:00.000000000 Z
11
+ date: 2019-12-16 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: rdf
@@ -17,28 +16,28 @@ dependencies:
17
16
  requirements:
18
17
  - - "~>"
19
18
  - !ruby/object:Gem::Version
20
- version: '3.0'
19
+ version: '3.1'
21
20
  type: :runtime
22
21
  prerelease: false
23
22
  version_requirements: !ruby/object:Gem::Requirement
24
23
  requirements:
25
24
  - - "~>"
26
25
  - !ruby/object:Gem::Version
27
- version: '3.0'
26
+ version: '3.1'
28
27
  - !ruby/object:Gem::Dependency
29
28
  name: rdf-isomorphic
30
29
  requirement: !ruby/object:Gem::Requirement
31
30
  requirements:
32
31
  - - "~>"
33
32
  - !ruby/object:Gem::Version
34
- version: '3.0'
33
+ version: '3.1'
35
34
  type: :runtime
36
35
  prerelease: false
37
36
  version_requirements: !ruby/object:Gem::Requirement
38
37
  requirements:
39
38
  - - "~>"
40
39
  - !ruby/object:Gem::Version
41
- version: '3.0'
40
+ version: '3.1'
42
41
  - !ruby/object:Gem::Dependency
43
42
  name: promise
44
43
  requirement: !ruby/object:Gem::Requirement
@@ -59,112 +58,112 @@ dependencies:
59
58
  requirements:
60
59
  - - "~>"
61
60
  - !ruby/object:Gem::Version
62
- version: '5.1'
61
+ version: '5.0'
63
62
  type: :runtime
64
63
  prerelease: false
65
64
  version_requirements: !ruby/object:Gem::Requirement
66
65
  requirements:
67
66
  - - "~>"
68
67
  - !ruby/object:Gem::Version
69
- version: '5.1'
68
+ version: '5.0'
70
69
  - !ruby/object:Gem::Dependency
71
70
  name: activesupport
72
71
  requirement: !ruby/object:Gem::Requirement
73
72
  requirements:
74
73
  - - "~>"
75
74
  - !ruby/object:Gem::Version
76
- version: '5.1'
75
+ version: '5.0'
77
76
  type: :runtime
78
77
  prerelease: false
79
78
  version_requirements: !ruby/object:Gem::Requirement
80
79
  requirements:
81
80
  - - "~>"
82
81
  - !ruby/object:Gem::Version
83
- version: '5.1'
82
+ version: '5.0'
84
83
  - !ruby/object:Gem::Dependency
85
84
  name: rdf-spec
86
85
  requirement: !ruby/object:Gem::Requirement
87
86
  requirements:
88
87
  - - "~>"
89
88
  - !ruby/object:Gem::Version
90
- version: '3.0'
89
+ version: '3.1'
91
90
  type: :development
92
91
  prerelease: false
93
92
  version_requirements: !ruby/object:Gem::Requirement
94
93
  requirements:
95
94
  - - "~>"
96
95
  - !ruby/object:Gem::Version
97
- version: '3.0'
96
+ version: '3.1'
98
97
  - !ruby/object:Gem::Dependency
99
98
  name: rdf-turtle
100
99
  requirement: !ruby/object:Gem::Requirement
101
100
  requirements:
102
101
  - - "~>"
103
102
  - !ruby/object:Gem::Version
104
- version: '3.0'
103
+ version: '3.1'
105
104
  type: :development
106
105
  prerelease: false
107
106
  version_requirements: !ruby/object:Gem::Requirement
108
107
  requirements:
109
108
  - - "~>"
110
109
  - !ruby/object:Gem::Version
111
- version: '3.0'
110
+ version: '3.1'
112
111
  - !ruby/object:Gem::Dependency
113
112
  name: rdf-vocab
114
113
  requirement: !ruby/object:Gem::Requirement
115
114
  requirements:
116
115
  - - "~>"
117
116
  - !ruby/object:Gem::Version
118
- version: '3.0'
117
+ version: '3.1'
119
118
  type: :development
120
119
  prerelease: false
121
120
  version_requirements: !ruby/object:Gem::Requirement
122
121
  requirements:
123
122
  - - "~>"
124
123
  - !ruby/object:Gem::Version
125
- version: '3.0'
124
+ version: '3.1'
126
125
  - !ruby/object:Gem::Dependency
127
126
  name: rspec
128
127
  requirement: !ruby/object:Gem::Requirement
129
128
  requirements:
130
129
  - - "~>"
131
130
  - !ruby/object:Gem::Version
132
- version: '3.7'
131
+ version: '3.9'
133
132
  type: :development
134
133
  prerelease: false
135
134
  version_requirements: !ruby/object:Gem::Requirement
136
135
  requirements:
137
136
  - - "~>"
138
137
  - !ruby/object:Gem::Version
139
- version: '3.7'
138
+ version: '3.9'
140
139
  - !ruby/object:Gem::Dependency
141
140
  name: rspec-its
142
141
  requirement: !ruby/object:Gem::Requirement
143
142
  requirements:
144
143
  - - "~>"
145
144
  - !ruby/object:Gem::Version
146
- version: '1.2'
145
+ version: '1.3'
147
146
  type: :development
148
147
  prerelease: false
149
148
  version_requirements: !ruby/object:Gem::Requirement
150
149
  requirements:
151
150
  - - "~>"
152
151
  - !ruby/object:Gem::Version
153
- version: '1.2'
152
+ version: '1.3'
154
153
  - !ruby/object:Gem::Dependency
155
154
  name: yard
156
155
  requirement: !ruby/object:Gem::Requirement
157
156
  requirements:
158
157
  - - "~>"
159
158
  - !ruby/object:Gem::Version
160
- version: 0.9.12
159
+ version: 0.9.20
161
160
  type: :development
162
161
  prerelease: false
163
162
  version_requirements: !ruby/object:Gem::Requirement
164
163
  requirements:
165
164
  - - "~>"
166
165
  - !ruby/object:Gem::Version
167
- version: 0.9.12
166
+ version: 0.9.20
168
167
  description: Spira is a framework for using the information in RDF.rb repositories
169
168
  as model objects.
170
169
  email: blavender@gmail.com
@@ -214,7 +213,7 @@ files:
214
213
  - lib/spira/version.rb
215
214
  homepage: http://ruby-rdf.github.io/spira/
216
215
  licenses:
217
- - Public Domain
216
+ - Unlicense
218
217
  metadata: {}
219
218
  post_install_message:
220
219
  rdoc_options: []
@@ -224,15 +223,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
224
223
  requirements:
225
224
  - - ">="
226
225
  - !ruby/object:Gem::Version
227
- version: 2.2.2
226
+ version: '2.4'
228
227
  required_rubygems_version: !ruby/object:Gem::Requirement
229
228
  requirements:
230
229
  - - ">="
231
230
  - !ruby/object:Gem::Version
232
231
  version: '0'
233
232
  requirements: []
234
- rubyforge_project: spira
235
- rubygems_version: 2.6.14.1
233
+ rubygems_version: 3.0.6
236
234
  signing_key:
237
235
  specification_version: 4
238
236
  summary: A framework for using the information in RDF.rb repositories as model objects.