suma 0.1.4 → 0.1.5

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 22e731545f38d062a61abb1972e6967d29a8b1ac15a732425bb0dc95dc598020
4
- data.tar.gz: 90e7518fc1d20861c7565e1efe6909bf279974254bd82e9f7d288f41dfcc937c
3
+ metadata.gz: 89c0461d2c0175902bc3f33f9067db2f98fecd736a24b47847e3e4181f043d37
4
+ data.tar.gz: 3fe9d75eb97f06b1c296333ed3c0644e99cd90397edc3e89502b1c9ae6939375
5
5
  SHA512:
6
- metadata.gz: 8b052a8b6032dca39ab5acbd6af00b2343e6da8faa490b4c0c95788a2cc29b7845e0be5dd4ebdc4da6c42cf64afc56e43e3a014a0d18b093ed0deaeec6b86ebe
7
- data.tar.gz: 31cfef34ad68ee4ada47e5ad15746c7aae91fd5e90f73f7a68067db1461a61482e8c48d4f7d14b00349674667e719c7fdc4b7c7844051e4182dafb8b7ba47473
6
+ metadata.gz: e3fbe44771043d03a1ebcb6c8b6615717a624fe81b3f66c83ed5d62f51f5e5e3c2f33fdd8d5b85c7c31f25743a026ef6c6aa50a4812dee266a9ad75ec748b9de
7
+ data.tar.gz: a4494b710d3308bf02526b1b4cb83d876aeae3991f47ded95dd1c2bfb9f000e88c3c872bfdb0ffe758da3af2bf9fdd37bd48c5a2062a1ccfa3f3f81b05a8f7f3
data/Gemfile CHANGED
@@ -6,7 +6,7 @@ source "https://rubygems.org"
6
6
  gemspec
7
7
 
8
8
  gem "rake", "~> 13.0"
9
-
10
9
  gem "rspec", "~> 3.0"
11
-
12
- gem "rubocop", "~> 1.21"
10
+ gem "rubocop"
11
+ gem "rubocop-performance"
12
+ gem "rubocop-rails"
data/lib/suma/cli.rb CHANGED
@@ -22,23 +22,33 @@ module Suma
22
22
  "`#{metanorma_site_manifest}` not found."
23
23
  end
24
24
 
25
- # Set schemas_all_path to match metanorma_yaml_path
26
- schemas_all_path = options[:schemas_all_path] ||
27
- metanorma_site_manifest.gsub("metanorma", "schemas")
28
-
29
25
  begin
30
- Processor.run(
31
- metanorma_yaml_path: metanorma_site_manifest,
32
- schemas_all_path: schemas_all_path,
33
- compile: options[:compile],
34
- output_directory: "_site",
35
- )
26
+ run(metanorma_site_manifest, options)
36
27
  rescue StandardError => e
37
- Utils.log "[ERROR] Error occurred during processing. See details below."
38
- Utils.log e
39
- Utils.log e.inspect
40
- Utils.log e.backtrace.join("\n")
28
+ log_error(e)
41
29
  end
42
30
  end
31
+
32
+ private
33
+
34
+ def run(manifest, options)
35
+ # Set schemas_all_path to match metanorma_yaml_path
36
+ schemas_all_path = options[:schemas_all_path] ||
37
+ manifest.gsub("metanorma", "schemas")
38
+
39
+ Processor.run(
40
+ metanorma_yaml_path: manifest,
41
+ schemas_all_path: schemas_all_path,
42
+ compile: options[:compile],
43
+ output_directory: "_site",
44
+ )
45
+ end
46
+
47
+ def log_error(error)
48
+ Utils.log "[ERROR] Error occurred during processing. See details below."
49
+ Utils.log error
50
+ Utils.log error.inspect
51
+ Utils.log error.backtrace.join("\n")
52
+ end
43
53
  end
44
54
  end
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require_relative "utils"
4
- require "shale"
4
+ require "lutaml/model"
5
5
  require_relative "collection_manifest"
6
6
  require "metanorma/cli"
7
7
  require "metanorma/cli/collection"
@@ -6,15 +6,15 @@ require "metanorma/collection/collection"
6
6
 
7
7
  module Suma
8
8
  class CollectionManifest < Metanorma::Collection::Config::Manifest
9
- attribute :schemas_only, Shale::Type::Boolean
9
+ attribute :schemas_only, Lutaml::Model::Type::Boolean
10
10
  attribute :entry, CollectionManifest, collection: true
11
- # attribute :schema_source, Shale::Type::String
11
+ # attribute :schema_source, Lutaml::Model::Type::String
12
12
  attr_accessor :schema_config
13
13
 
14
14
  yaml do
15
15
  map "identifier", to: :identifier
16
16
  map "type", to: :type
17
- map "level", using: { from: :level_from_yaml, to: :nop_to_yaml }
17
+ map "level", with: { from: :level_from_yaml, to: :nop_to_yaml }
18
18
  map "title", to: :title
19
19
  map "url", to: :url
20
20
  map "attachment", to: :attachment
@@ -22,12 +22,12 @@ module Suma
22
22
  map "schemas-only", to: :schemas_only
23
23
  map "index", to: :index
24
24
  map "file", to: :file
25
- map "fileref", using: { from: :fileref_from_yaml, to: :nop_to_yaml }
25
+ map "fileref", with: { from: :fileref_from_yaml, to: :nop_to_yaml }
26
26
  map "entry", to: :entry
27
- map "docref", using: { from: :docref_from_yaml, to: :nop_to_yaml }
28
- map "manifest", using: { from: :docref_from_yaml, to: :nop_to_yaml }
29
- map "bibdata", using: { from: :bibdata_from_yaml,
30
- to: :bibdata_to_yaml }
27
+ map "docref", with: { from: :docref_from_yaml, to: :nop_to_yaml }
28
+ map "manifest", with: { from: :docref_from_yaml, to: :nop_to_yaml }
29
+ map "bibdata", with: { from: :bibdata_from_yaml,
30
+ to: :bibdata_to_yaml }
31
31
  end
32
32
 
33
33
  def docref_from_yaml(model, value)
@@ -67,14 +67,7 @@ module Suma
67
67
  def expand_schemas_only(schema_output_path)
68
68
  return process_entry(schema_output_path) unless file
69
69
 
70
- # If there is collection.yml, this is a document collection, we process
71
- # schemas.yaml.
72
- if File.basename(file) == "collection.yml"
73
- schemas_yaml_path = File.join(File.dirname(file), "schemas.yaml")
74
- if schemas_yaml_path && File.exist?(schemas_yaml_path)
75
- @schema_config = Suma::SchemaConfig::Config.from_file(schemas_yaml_path)
76
- end
77
- end
70
+ update_schema_config
78
71
 
79
72
  return process_entry(schema_output_path) unless schemas_only
80
73
 
@@ -82,10 +75,18 @@ module Suma
82
75
  # have it showing up in output.
83
76
  self.index = false
84
77
 
85
- doc = CollectionConfig.from_file(file)
86
- doc_id = doc.bibdata.id
78
+ [self, added_collection_manifest]
79
+ end
87
80
 
88
- entries = @schema_config.schemas.map do |schema|
81
+ def remove_schemas_only_sources
82
+ ret = entry.each_with_object([]) do |e, m|
83
+ e.schemas_only or m << e
84
+ end
85
+ self.entry = ret
86
+ end
87
+
88
+ def entries(schema_output_path)
89
+ @schema_config.schemas.map do |schema|
89
90
  fname = [File.basename(schema.path, ".exp"), ".xml"].join
90
91
 
91
92
  CollectionManifest.new(
@@ -95,6 +96,11 @@ module Suma
95
96
  # schema_source: schema.path
96
97
  )
97
98
  end
99
+ end
100
+
101
+ def added_collection_manifest
102
+ doc = CollectionConfig.from_file(file)
103
+ doc_id = doc.bibdata.id
98
104
 
99
105
  # we need to separate this file from the following new entries
100
106
  added = CollectionManifest.new(
@@ -111,14 +117,18 @@ module Suma
111
117
  ),
112
118
  ]
113
119
 
114
- [self, added]
120
+ added
115
121
  end
116
122
 
117
- def remove_schemas_only_sources
118
- ret = entry.each_with_object([]) do |e, m|
119
- e.schemas_only or m << e
123
+ def update_schema_config
124
+ # If there is collection.yml, this is a document collection, we process
125
+ # schemas.yaml.
126
+ if File.basename(file) == "collection.yml"
127
+ schemas_yaml_path = File.join(File.dirname(file), "schemas.yaml")
128
+ if schemas_yaml_path && File.exist?(schemas_yaml_path)
129
+ @schema_config = Suma::SchemaConfig::Config.from_file(schemas_yaml_path)
130
+ end
120
131
  end
121
- self.entry = ret
122
132
  end
123
133
  end
124
134
  end
@@ -12,10 +12,25 @@ require "metanorma/collection/collection"
12
12
  module Suma
13
13
  class Processor
14
14
  class << self
15
- def run(metanorma_yaml_path:, schemas_all_path:, compile:,
16
- output_directory: "_site")
17
- Utils.log "Current directory: #{Dir.getwd}"
15
+ def run(metanorma_yaml_path:, schemas_all_path:, compile:, output_directory: "_site")
16
+ Utils.log "Current directory: #{Dir.getwd}, writing #{schemas_all_path}..."
17
+ collection_config = export_schema_config(metanorma_yaml_path, schemas_all_path)
18
18
 
19
+ unless compile
20
+ Utils.log "No compile option set. Skipping schema compilation."
21
+ nil
22
+ end
23
+
24
+ Utils.log "Compiling schema collection..."
25
+ compile_schema(schemas_all_path, collection_config)
26
+
27
+ Utils.log "Compiling complete collection..."
28
+ compile_collection(collection_config, output_directory)
29
+ end
30
+
31
+ private
32
+
33
+ def export_schema_config(metanorma_yaml_path, schemas_all_path)
19
34
  # This reads the metanorma.yml file
20
35
  site_config = Suma::SiteConfig::Config.from_file(metanorma_yaml_path)
21
36
 
@@ -28,12 +43,13 @@ output_directory: "_site")
28
43
  exported_schema_config = collection_config.manifest.export_schema_config(schemas_all_path)
29
44
  exported_schema_config.path = schemas_all_path
30
45
 
31
- Utils.log "Writing #{schemas_all_path}..."
32
46
  exported_schema_config.to_file
33
- Utils.log "Done."
34
47
 
35
- # now get rid of the source documents for schema sources
48
+ collection_config
49
+ end
36
50
 
51
+ def compile_schema(schemas_all_path, collection_config)
52
+ # now get rid of the source documents for schema sources
37
53
  col = Suma::SchemaCollection.new(
38
54
  config_yaml: schemas_all_path,
39
55
  manifest: collection_config.manifest,
@@ -41,40 +57,35 @@ output_directory: "_site")
41
57
  output_path_schemas: "plain_schemas",
42
58
  )
43
59
 
44
- if compile
45
- Utils.log "Compiling schema collection..."
46
- col.compile
47
- else
48
- Utils.log "No compile option set. Skipping schema compilation."
60
+ col.compile
61
+ end
62
+
63
+ def compile_collection(collection_config, output_directory)
64
+ metanorma_collection, collection_opts = build_collection(collection_config, output_directory)
65
+
66
+ metanorma_collection.render(collection_opts)
67
+
68
+ # TODO: Temporarily disable removal of XML files
69
+ Dir.glob(File.join(Dir.getwd, output_directory,
70
+ "*.xml")).each do |file|
71
+ puts "NOT DELETING ANY FILE #{file.inspect}"
72
+ # File.delete(file)
49
73
  end
74
+ end
50
75
 
76
+ def build_collection(collection_config, output_directory)
51
77
  new_collection_config_path = "collection-output.yaml"
52
78
  collection_config.manifest.remove_schemas_only_sources
53
79
  collection_config.to_file(new_collection_config_path)
54
80
 
55
- if compile
56
- Utils.log "Compiling complete collection..."
57
-
58
- metanorma_collection = Metanorma::Collection.parse(new_collection_config_path)
59
-
60
- collection_opts = {
61
- output_folder: output_directory,
62
- compile: {
63
- install_fonts: false,
64
- },
65
- coverpage: "cover.html",
66
- }
67
- metanorma_collection.render(collection_opts)
68
-
69
- # TODO: Temporarily disable removal of XML files
70
- Dir.glob(File.join(Dir.getwd, output_directory,
71
- "*.xml")).each do |file|
72
- puts "NOT DELETING ANY FILE #{file.inspect}"
73
- # File.delete(file)
74
- end
75
- else
76
- Utils.log "No compile option set. Skipping collection compilation."
77
- end
81
+ collection = Metanorma::Collection.parse(new_collection_config_path)
82
+
83
+ collection_opts = {
84
+ output_folder: output_directory,
85
+ compile: { install_fonts: false },
86
+ coverpage: "cover.html",
87
+ }
88
+ [collection, collection_opts]
78
89
  end
79
90
  end
80
91
  end
@@ -102,11 +102,7 @@ module Suma
102
102
 
103
103
  relative_path = Pathname.new(filename_adoc).relative_path_from(Dir.pwd)
104
104
  Utils.log "Compiling schema (id: #{id}, type: #{self.class}) => #{relative_path}"
105
- Metanorma::Compile.new.compile(
106
- filename_adoc,
107
- agree_to_terms: true,
108
- install_fonts: false,
109
- )
105
+ Metanorma::Compile.new.compile(filename_adoc, agree_to_terms: true, install_fonts: false)
110
106
  Utils.log "Compiling schema (id: #{id}, type: #{self.class}) => #{relative_path}... done!"
111
107
 
112
108
  # clean_artifacts
@@ -12,27 +12,14 @@ module Suma
12
12
  :manifest
13
13
 
14
14
  def initialize(config: nil, config_yaml: nil, output_path_docs: nil,
15
- output_path_schemas: nil, manifest: nil)
15
+ output_path_schemas: nil, manifest: nil)
16
16
  @schemas = {}
17
17
  @docs = {}
18
18
  @schema_name_to_docs = {}
19
- @output_path_docs = if output_path_docs
20
- Pathname.new(output_path_docs).expand_path
21
- else
22
- Pathname.new(Dir.pwd)
23
- end
24
- @output_path_schemas = if output_path_schemas
25
- Pathname.new(output_path_schemas).expand_path
26
- else
27
- Pathname.new(Dir.pwd)
28
- end
29
-
30
- @config = if config
31
- config
32
- elsif config_yaml
33
- SchemaConfig::Config.from_file(config_yaml)
34
- end
35
-
19
+ @output_path_docs = Pathname.new(output_path_docs || Dir.pwd).expand_path
20
+ @output_path_schemas = Pathname.new(output_path_schemas || Dir.pwd).expand_path
21
+ @config = config
22
+ @config ||= config_yaml && SchemaConfig::Config.from_file(config_yaml)
36
23
  @manifest = manifest
37
24
  end
38
25
 
@@ -42,21 +29,23 @@ output_path_schemas: nil, manifest: nil)
42
29
 
43
30
  def process_schemas(schemas, klass)
44
31
  schemas.each do |config_schema|
45
- s = ExpressSchema.new(
46
- id: config_schema.id,
47
- path: config_schema.path.to_s,
48
- output_path: @output_path_schemas.to_s,
49
- )
32
+ process_schema(config_schema, klass)
33
+ end
34
+ end
50
35
 
51
- doc = klass.new(
52
- schema: s,
53
- output_path: @output_path_docs.join(s.id),
54
- )
36
+ def process_schema(config_schema, klass)
37
+ s = ExpressSchema.new(
38
+ id: config_schema.id, path: config_schema.path.to_s,
39
+ output_path: @output_path_schemas.to_s
40
+ )
55
41
 
56
- @docs[s.id] = doc
57
- @schemas[s.id] = s
58
- @schema_name_to_docs[s.id] = doc
59
- end
42
+ doc = klass.new(
43
+ schema: s, output_path: @output_path_docs.join(s.id),
44
+ )
45
+
46
+ @docs[s.id] = doc
47
+ @schemas[s.id] = s
48
+ @schema_name_to_docs[s.id] = doc
60
49
  end
61
50
 
62
51
  def finalize
@@ -1,14 +1,14 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require "shale"
3
+ require "lutaml/model"
4
4
  require_relative "schema"
5
5
  require_relative "../utils"
6
6
 
7
7
  module Suma
8
8
  module SchemaConfig
9
- class Config < Shale::Mapper
9
+ class Config < Lutaml::Model::Serializable
10
10
  attribute :schemas, Schema, collection: true
11
- attribute :path, Shale::Type::String
11
+ attribute :path, Lutaml::Model::Type::String
12
12
  attr_accessor :output_path
13
13
 
14
14
  def initialize(**args)
@@ -21,7 +21,7 @@ module Suma
21
21
  end
22
22
 
23
23
  yaml do
24
- map "schemas", using: { from: :schemas_from_yaml, to: :schemas_to_yaml }
24
+ map "schemas", with: { from: :schemas_from_yaml, to: :schemas_to_yaml }
25
25
  end
26
26
 
27
27
  def self.from_file(path)
@@ -101,15 +101,7 @@ module Suma
101
101
 
102
102
  old_base_path = File.dirname(@path)
103
103
  new_base_path = File.dirname(new_path)
104
-
105
- schemas.each do |schema|
106
- schema_path = Pathname.new(schema.path)
107
- next if schema_path.absolute?
108
-
109
- schema_path = (Pathname.new(old_base_path) + schema_path).cleanpath
110
- # This is the new relative schema_path
111
- schema.path = schema_path.relative_path_from(new_base_path)
112
- end
104
+ update_schema_path(old_base_path, new_base_path)
113
105
 
114
106
  @path = new_path
115
107
  end
@@ -141,6 +133,17 @@ module Suma
141
133
  Utils.log "Done."
142
134
  end
143
135
  end
136
+
137
+ def update_schema_path(old_base_path, new_base_path)
138
+ schemas.each do |schema|
139
+ schema_path = Pathname.new(schema.path)
140
+ next if schema_path.absolute?
141
+
142
+ schema_path = (Pathname.new(old_base_path) + schema_path).cleanpath
143
+ # This is the new relative schema_path
144
+ schema.path = schema_path.relative_path_from(new_base_path)
145
+ end
146
+ end
144
147
  end
145
148
  end
146
149
  end
@@ -1,13 +1,13 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require "shale"
3
+ require "lutaml/model"
4
4
 
5
5
  module Suma
6
6
  module SchemaConfig
7
- class Schema < Shale::Mapper
8
- attribute :id, Shale::Type::String
9
- attribute :path, Shale::Type::String
10
- # attribute :schemas_only, Shale::Type::Boolean
7
+ class Schema < Lutaml::Model::Serializable
8
+ attribute :id, Lutaml::Model::Type::String
9
+ attribute :path, Lutaml::Model::Type::String
10
+ # attribute :schemas_only, Lutaml::Model::Type::Boolean
11
11
 
12
12
  # container_path is a copy of Suma::SchemaConfig::Config.path,
13
13
  # used to resolve the path of each schema within
@@ -1,24 +1,24 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require "shale"
3
+ require "lutaml/model"
4
4
 
5
5
  module Suma
6
6
  module SiteConfig
7
- class SiteInfo < Shale::Mapper
8
- attribute :organization, Shale::Type::String
9
- attribute :name, Shale::Type::String
7
+ class SiteInfo < Lutaml::Model::Serializable
8
+ attribute :organization, Lutaml::Model::Type::String
9
+ attribute :name, Lutaml::Model::Type::String
10
10
  end
11
11
 
12
- class Sources < Shale::Mapper
13
- attribute :files, Shale::Type::String, collection: true
12
+ class Sources < Lutaml::Model::Serializable
13
+ attribute :files, Lutaml::Model::Type::String, collection: true
14
14
  end
15
15
 
16
- class Base < Shale::Mapper
16
+ class Base < Lutaml::Model::Serializable
17
17
  attribute :source, Sources
18
18
  attribute :collection, SiteInfo
19
19
  end
20
20
 
21
- class Config < Shale::Mapper
21
+ class Config < Lutaml::Model::Serializable
22
22
  attribute :metanorma, Base
23
23
 
24
24
  def self.from_file(path)
data/lib/suma/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Suma
4
- VERSION = "0.1.4"
4
+ VERSION = "0.1.5"
5
5
  end
data/suma.gemspec CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  require_relative "lib/suma/version"
4
4
 
5
- Gem::Specification.new do |spec|
5
+ Gem::Specification.new do |spec| # rubocop:disable Metrics/BlockLength
6
6
  spec.name = "suma"
7
7
  spec.version = Suma::VERSION
8
8
  spec.authors = ["Ribose Inc."]
@@ -34,11 +34,8 @@ Gem::Specification.new do |spec|
34
34
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
35
35
  spec.require_paths = ["lib"]
36
36
 
37
- spec.add_runtime_dependency "expressir"
38
- spec.add_runtime_dependency "metanorma-cli"
39
- spec.add_runtime_dependency "shale"
40
- spec.add_runtime_dependency "thor", ">= 0.20"
41
- spec.add_development_dependency "rubocop"
42
- spec.add_development_dependency "rubocop-performance"
43
- spec.add_development_dependency "rubocop-rails"
37
+ spec.add_dependency "expressir"
38
+ spec.add_dependency "lutaml-model"
39
+ spec.add_dependency "metanorma-cli"
40
+ spec.add_dependency "thor", ">= 0.20"
44
41
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: suma
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.4
4
+ version: 0.1.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ribose Inc.
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-10-19 00:00:00.000000000 Z
11
+ date: 2025-01-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: expressir
@@ -25,7 +25,7 @@ dependencies:
25
25
  - !ruby/object:Gem::Version
26
26
  version: '0'
27
27
  - !ruby/object:Gem::Dependency
28
- name: metanorma-cli
28
+ name: lutaml-model
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - ">="
@@ -39,7 +39,7 @@ dependencies:
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0'
41
41
  - !ruby/object:Gem::Dependency
42
- name: shale
42
+ name: metanorma-cli
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - ">="
@@ -66,48 +66,6 @@ dependencies:
66
66
  - - ">="
67
67
  - !ruby/object:Gem::Version
68
68
  version: '0.20'
69
- - !ruby/object:Gem::Dependency
70
- name: rubocop
71
- requirement: !ruby/object:Gem::Requirement
72
- requirements:
73
- - - ">="
74
- - !ruby/object:Gem::Version
75
- version: '0'
76
- type: :development
77
- prerelease: false
78
- version_requirements: !ruby/object:Gem::Requirement
79
- requirements:
80
- - - ">="
81
- - !ruby/object:Gem::Version
82
- version: '0'
83
- - !ruby/object:Gem::Dependency
84
- name: rubocop-performance
85
- requirement: !ruby/object:Gem::Requirement
86
- requirements:
87
- - - ">="
88
- - !ruby/object:Gem::Version
89
- version: '0'
90
- type: :development
91
- prerelease: false
92
- version_requirements: !ruby/object:Gem::Requirement
93
- requirements:
94
- - - ">="
95
- - !ruby/object:Gem::Version
96
- version: '0'
97
- - !ruby/object:Gem::Dependency
98
- name: rubocop-rails
99
- requirement: !ruby/object:Gem::Requirement
100
- requirements:
101
- - - ">="
102
- - !ruby/object:Gem::Version
103
- version: '0'
104
- type: :development
105
- prerelease: false
106
- version_requirements: !ruby/object:Gem::Requirement
107
- requirements:
108
- - - ">="
109
- - !ruby/object:Gem::Version
110
- version: '0'
111
69
  description: 'Utility for SUMA (STEP Unified Model-Based Standards Architecture)
112
70
 
113
71
  '
@@ -153,7 +111,7 @@ homepage: https://github.com/metanorma/suma
153
111
  licenses:
154
112
  - BSD-2-Clause
155
113
  metadata: {}
156
- post_install_message:
114
+ post_install_message:
157
115
  rdoc_options: []
158
116
  require_paths:
159
117
  - lib
@@ -169,7 +127,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
169
127
  version: '0'
170
128
  requirements: []
171
129
  rubygems_version: 3.3.27
172
- signing_key:
130
+ signing_key:
173
131
  specification_version: 4
174
132
  summary: Utility for SUMA (STEP Unified Model-Based Standards Architecture)
175
133
  test_files: []