lutaml 0.7.4 → 0.7.6

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: 042ab4eb8ec87f5b350bc20a6342756892a3cd4929dfbbe537464590c8278dba
4
- data.tar.gz: 4cbadc50bdae9f93b5c882f060ac5532e491271ee455660d0dab9df0b1eaf87c
3
+ metadata.gz: 98c639beedce6095e724dd236e5dc3037d74b58cf1624ff7c6c8d262a32c6e98
4
+ data.tar.gz: 3e51d0cef9b57a0e7f22922e6de07cdecef034ab03dd8fa9869f8aa35fc36c7e
5
5
  SHA512:
6
- metadata.gz: ad3d25038abb6ff22b79f1eb27eaa1439920b4d6bc582ed055049d8ad9de41eb9a8280f169e772b005ef5a4cc6978e5e3fa916a7b48ee6ef2a97509464c0747a
7
- data.tar.gz: 444254ebb4926068d2651f4e76c75c38c955efa514234fbfab9943e7973e473b9d4cb411f15348cfd9eb632d8a3abade0e95bfebd8ff8cb45d23ab6a3f1e7f26
6
+ metadata.gz: 023b5fe40356139612aa5426c76cd72971a7763f182bb1d6c4e13e8d718e2a875352b1fbfcd0d03b126fc3313e359c8ade3fb03d681e03db735ec344f7876050
7
+ data.tar.gz: ff7e1f727d0709a88e3d88b41cd89d544c7f0a38ed145b0791c7aa15b0bca7446da485ec85adb2180a5c1108cd056265c6e5b47826ebbf77061ab01a3eaa326f
@@ -0,0 +1,14 @@
1
+ name: rake
2
+
3
+ on:
4
+ push:
5
+ branches: [ master, main ]
6
+ tags: [ v* ]
7
+ pull_request:
8
+ workflow_dispatch:
9
+
10
+ jobs:
11
+ rake:
12
+ uses: metanorma/ci/.github/workflows/graphviz-rake.yml@main
13
+ secrets:
14
+ pat_token: ${{ secrets.METANORMA_CI_PAT_TOKEN }}
@@ -0,0 +1,22 @@
1
+ name: release
2
+
3
+ on:
4
+ workflow_dispatch:
5
+ inputs:
6
+ next_version:
7
+ description: |
8
+ Next release version. Possible values: x.y.z, major, minor, patch or pre|rc|etc
9
+ required: true
10
+ default: 'skip'
11
+ push:
12
+ tags: [ v* ]
13
+
14
+ jobs:
15
+ release:
16
+ uses: metanorma/ci/.github/workflows/rubygems-release.yml@main
17
+ with:
18
+ next_version: ${{ github.event.inputs.next_version }}
19
+ secrets:
20
+ rubygems-api-key: ${{ secrets.LUTAML_CI_RUBYGEMS_API_KEY }}
21
+ pat_token: ${{ secrets.LUTAML_CI_PAT_TOKEN }}
22
+
data/.hound.yml ADDED
@@ -0,0 +1,5 @@
1
+ # Auto-generated by Cimas: Do not edit it manually!
2
+ # See https://github.com/metanorma/cimas
3
+ ruby:
4
+ enabled: true
5
+ config_file: .rubocop.yml
data/.rubocop.yml ADDED
@@ -0,0 +1,10 @@
1
+ # Auto-generated by Cimas: Do not edit it manually!
2
+ # See https://github.com/metanorma/cimas
3
+ inherit_from:
4
+ - https://raw.githubusercontent.com/riboseinc/oss-guides/master/ci/rubocop.yml
5
+
6
+ # local repo-specific modifications
7
+ # ...
8
+
9
+ AllCops:
10
+ TargetRubyVersion: 2.5
data/Gemfile CHANGED
@@ -1,6 +1,4 @@
1
1
  source "https://rubygems.org"
2
2
 
3
- gem "expressir"
4
-
5
3
  # Specify your gem's dependencies in lutaml.gemspec
6
4
  gemspec
data/README.adoc CHANGED
@@ -1,74 +1,105 @@
1
- = Lutaml
1
+ = LutaML: Ruby library for accessing data models
2
2
 
3
- == Functionality
3
+ == Purpose
4
4
 
5
- Entry point for lutaml extensions.
5
+ LutaML aims to be a universal data model accessor that allows parsing
6
+ data models in multiple languages, including:
6
7
 
7
- === Installation
8
+ * EXPRESS (https://www.expresslang.org[EXPRESS Language Foundation], ISO 10303-11)
9
+ * XMI (from OMG)
10
+ * UML in LutaML format
8
11
 
9
- With bundler:
12
+
13
+ == Install
14
+
15
+ With bundler, in `Gemfile`:
10
16
 
11
17
  [source,ruby]
12
18
  ----
13
- # Gemfile
14
19
  gem "lutaml"
15
20
  ----
16
21
 
17
- Then in console:
22
+ Directly:
18
23
 
19
24
  [source,console]
20
25
  ----
21
- $ bundle
26
+ $ gem install lutaml
22
27
  ----
23
28
 
24
- With RubyGems:
29
+ == Usage
25
30
 
26
- [source,console]
27
- ----
28
- $ gem install lutaml
29
- ----
31
+ === Parsing
30
32
 
31
- === Usage
33
+ The `Lutaml::Parser.parse` method provides a single point of entry for parsing
34
+ data model files.
32
35
 
33
- == From ruby
36
+ The return object is always a `Lutaml::LutamlPath::DocumentWrapper` object,
37
+ where `#original_document` returns the native parsed models.
34
38
 
35
- In order to parse files supported by lutaml extensions, use Lutaml::Parser.parse method.
39
+ [source,ruby]
40
+ ----
41
+ # example.exp is an EXPRESS schema file
42
+ wrapper = Lutaml::Parser.parse([File.new("example.exp")])
43
+ # => returns a Lutaml::LutamlPath::DocumentWrapper object
44
+ wrapper.original_document
45
+ # => returns the original Expressir::Repository object
46
+ ----
36
47
 
37
48
  [source,ruby]
38
49
  ----
39
- # example.exp is an EXPRESS repository file
40
- Lutaml::Parser.parse([File.new("example.exp")]) # will produce Lutaml::LutamlPath::DocumentWrapper object with serialized express repository
41
- # example.yaml is an EXPRESS cache file
42
- Lutaml::Parser.parse([File.new("example.yaml")], ::Lutaml::Parser::EXPRESS_CACHE_PARSE_TYPE)
50
+ # example.exp.yaml is an EXPRESS cache file created with Expressir
51
+ wrapper = Lutaml::Parser.parse([File.new("example.exp.yaml")], ::Lutaml::Parser::EXPRESS_CACHE_PARSE_TYPE)
52
+ # => returns the DocumentWrapper but with the repository loaded from the Expressir cache file
43
53
  ----
44
54
 
45
- == With cli tool
46
55
 
47
- There is a cli tool available for parsing lutaml/exp files(also yaml datastruct files are supported).
56
+ === Selecting EXPRESS schemas
48
57
 
49
- [source,bash]
50
- ----
51
- # Will generate `test.dot` file in the current directory
52
- $: lutaml -o . test.lutaml
58
+ LutaML supports the `ModelElement#to_hash(..., select_proc:)` functionality
59
+ of Expressir, allowing Expressir to only call `to_hash` on schemas that
60
+ fit a dynamic criteria.
53
61
 
54
- # Will generate `test.png` file in the `assets` directory
55
- $: lutaml -o assets -t png test.lutaml
62
+ The criteria is set via a Ruby `Proc` object, as follows.
63
+
64
+ [source,ruby]
65
+ ----
66
+ # Sets the filter
67
+ filtered_schemas = ["action_schema", "date_time_schema"]
68
+
69
+ # Sets the Proc
70
+ wrapper.select_proc = Proc.new do |value|
71
+ if value.is_a?(Expressir::Model::Declarations::Schema)
72
+ filtered_schemas.include?(value.id)
73
+ else
74
+ true
75
+ end
76
+ end
77
+
78
+ serialized = wrapper.to_liquid
79
+ # => returns the filtered to_hash method
56
80
  ----
57
81
 
58
- For additional info refer to `lutaml --help output`
59
82
 
83
+ === CLI
60
84
 
61
- == Development
85
+ There is a command-line interface available for parsing supported data model files.
62
86
 
63
- After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake spec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
87
+ * EXPRESS `*.exp`
88
+ * LutaML UML `*.lutaml`
89
+ * LutaML YAML datastruct files
64
90
 
65
- To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org).
91
+ [source,bash]
92
+ ----
93
+ # Will generate `test.dot` file in the current directory
94
+ $ lutaml -o . test.lutaml
66
95
 
67
- ## Contributing
96
+ # Will generate `test.png` file in the `assets` directory
97
+ $ lutaml -o assets -t png test.lutaml
98
+ ----
68
99
 
69
- Bug reports and pull requests are welcome on GitHub at https://github.com/[USERNAME]/lutaml. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [code of conduct](https://github.com/[USERNAME]/lutaml/blob/master/CODE_OF_CONDUCT.md).
100
+ For additional info refer to `lutaml --help output`.
70
101
 
71
102
 
72
- == Code of Conduct
103
+ == Copyright and license
73
104
 
74
- Everyone interacting in the Lutaml::Uml project's codebases, issue trackers, chat rooms and mailing lists is expected to follow the [code of conduct](https://github.com/[USERNAME]/lutaml/blob/master/CODE_OF_CONDUCT.md).
105
+ Copyright Ribose. BSD-3 License.
data/exe/lutaml CHANGED
@@ -12,11 +12,13 @@ $:.unshift File.expand_path("../../lib", bin_file)
12
12
  # Fixes https://github.com/rubygems/rubygems/issues/1420
13
13
  require "rubygems/specification"
14
14
 
15
- class Gem::Specification
16
- def this; self; end
15
+ module Gem
16
+ class Specification
17
+ def this; self; end
18
+ end
17
19
  end
18
20
 
19
21
  require "lutaml"
20
22
  require "lutaml/command_line"
21
23
 
22
- Lutaml::CommandLine.run(ARGV.dup, STDOUT)
24
+ Lutaml::CommandLine.run(ARGV.dup, $stdout)
@@ -21,7 +21,7 @@ module Lutaml
21
21
  new(attributes, out_object).run(args)
22
22
  end
23
23
 
24
- def initialize(attributes = {}, out_object = STDOUT)
24
+ def initialize(attributes = {}, out_object = $stdout)
25
25
  @formatter = ::Lutaml::Formatter::Graphviz.new
26
26
  @verbose = false
27
27
  @option_parser = OptionParser.new
@@ -70,11 +70,15 @@ module Lutaml
70
70
 
71
71
  def run(original_args)
72
72
  args = original_args.dup
73
- if args.length.zero? || args.first.strip == "help"
73
+ if args.empty? || args.first.strip == "help"
74
74
  print_help
75
75
  exit
76
76
  end
77
- @option_parser.parse!(args) rescue nil
77
+ begin
78
+ @option_parser.parse!(args)
79
+ rescue StandardError
80
+ nil
81
+ end
78
82
  @paths = args
79
83
  @formatter.type = @type
80
84
 
@@ -5,11 +5,16 @@ module Lutaml
5
5
  module Express
6
6
  module LutamlPath
7
7
  class DocumentWrapper < ::Lutaml::LutamlPath::DocumentWrapper
8
+ attr_accessor :select_proc
9
+
8
10
  protected
9
11
 
10
12
  def serialize_document(repository)
11
- repository
12
- .to_hash(formatter: Formatter, include_empty: true)
13
+ repository.to_hash(
14
+ formatter: Formatter,
15
+ include_empty: true,
16
+ select_proc: select_proc,
17
+ )
13
18
  end
14
19
  end
15
20
  end
@@ -11,4 +11,4 @@ module Lutaml
11
11
  end
12
12
  end
13
13
  end
14
- end
14
+ end
@@ -44,7 +44,7 @@ module Lutaml
44
44
  when ::Lutaml::Uml::Node::Method then format_method(node)
45
45
  when ::Lutaml::Uml::Node::Relationship then format_relationship(node)
46
46
  when ::Lutaml::Uml::Node::ClassRelationship
47
- then format_class_relationship(node)
47
+ format_class_relationship(node)
48
48
  when ::Lutaml::Uml::Node::ClassNode then format_class(node)
49
49
  when Lutaml::Uml::Document then format_document(node)
50
50
  end
@@ -17,11 +17,11 @@ module Lutaml
17
17
  end
18
18
 
19
19
  ACCESS_SYMBOLS = {
20
- "public" => "+",
20
+ "public" => "+",
21
21
  "protected" => "#",
22
- "private" => "-",
22
+ "private" => "-",
23
23
  }.freeze
24
- DEFAULT_CLASS_FONT = "Helvetica".freeze
24
+ DEFAULT_CLASS_FONT = "Helvetica"
25
25
 
26
26
  VALID_TYPES = %i[
27
27
  dot
@@ -65,9 +65,7 @@ module Lutaml
65
65
  @type = :dot
66
66
  end
67
67
 
68
- attr_reader :graph
69
- attr_reader :edge
70
- attr_reader :node
68
+ attr_reader :graph, :edge, :node
71
69
 
72
70
  def type=(value)
73
71
  super
@@ -147,13 +145,13 @@ module Lutaml
147
145
  if node.owner_end_attribute_name
148
146
  attributes["headlabel"] = format_label(
149
147
  node.owner_end_attribute_name,
150
- node.owner_end_cardinality
148
+ node.owner_end_cardinality,
151
149
  )
152
150
  end
153
151
  if node.member_end_attribute_name
154
152
  attributes["taillabel"] = format_label(
155
153
  node.member_end_attribute_name,
156
- node.member_end_cardinality
154
+ node.member_end_cardinality,
157
155
  )
158
156
  end
159
157
 
@@ -8,6 +8,7 @@ module Lutaml
8
8
  class GraphVizEngine < Engine
9
9
  def render(type)
10
10
  Open3.popen3("dot -T#{type}") do |stdin, stdout, _stderr, _wait|
11
+ stdout.binmode
11
12
  stdin.puts(input)
12
13
  stdin.close
13
14
  stdout.read
@@ -5,11 +5,10 @@ module Lutaml
5
5
 
6
6
  def initialize(document)
7
7
  @original_document = document
8
- @serialized_document = serialize_document(document)
9
8
  end
10
9
 
11
10
  def to_liquid
12
- serialized_document
11
+ @serialized_document ||= serialize_document(@original_document)
13
12
  end
14
13
 
15
14
  protected
@@ -27,7 +26,8 @@ module Lutaml
27
26
  end
28
27
 
29
28
  def serialize_to_hash(object)
30
- return object if [String, Integer, Float, FalseClass, TrueClass, Symbol, NilClass, Hash].include?(object.class)
29
+ return object if [String, Integer, Float, FalseClass, TrueClass,
30
+ Symbol, NilClass, Hash].include?(object.class)
31
31
 
32
32
  object.instance_variables.each_with_object({}) do |var, res|
33
33
  variable = object.instance_variable_get(var)
@@ -35,12 +35,10 @@ module Lutaml
35
35
  variable.map do |n|
36
36
  serialize_to_hash(n)
37
37
  end
38
+ elsif [String, Integer, Float, FalseClass, TrueClass, Symbol, NilClass, Hash].include?(variable.class) || var == :@parent
39
+ variable
38
40
  else
39
- if [String, Integer, Float, FalseClass, TrueClass, Symbol, NilClass, Hash].include?(variable.class) || var == :@parent
40
- variable
41
- else
42
- serialize_to_hash(variable)
43
- end
41
+ serialize_to_hash(variable)
44
42
  end
45
43
  end
46
44
  end
data/lib/lutaml/parser.rb CHANGED
@@ -24,13 +24,14 @@ module Lutaml
24
24
  end
25
25
 
26
26
  def initialize(file_list, input_type)
27
- @parse_type = input_type ? input_type : File.extname(file_list.first.path)[1..-1]
27
+ @parse_type = input_type || File.extname(file_list.first.path)[1..-1]
28
28
  @file_list = file_list
29
29
  end
30
30
 
31
31
  def parse
32
32
  documents = parse_into_document
33
- return document_wrapper(documents) if ["exp", EXPRESS_CACHE_PARSE_TYPE].include?(parse_type)
33
+ return document_wrapper(documents) if ["exp",
34
+ EXPRESS_CACHE_PARSE_TYPE].include?(parse_type)
34
35
 
35
36
  documents.map { |doc| document_wrapper(doc) }
36
37
  end
@@ -41,7 +42,7 @@ module Lutaml
41
42
  Expressir::Express::Parser.from_files(file_list.map(&:path))
42
43
  when EXPRESS_CACHE_PARSE_TYPE
43
44
  Expressir::Express::Cache.from_file(file_list.first.path)
44
- when 'xmi'
45
+ when "xmi"
45
46
  file_list.map { |file| Lutaml::XMI::Parsers::XML.parse(file) }
46
47
  when "lutaml"
47
48
  file_list.map { |file| Lutaml::Uml::Parsers::Dsl.parse(file) }
@@ -1,3 +1,3 @@
1
1
  module Lutaml
2
- VERSION = "0.7.4".freeze
2
+ VERSION = "0.7.6".freeze
3
3
  end
data/lutaml.gemspec CHANGED
@@ -27,16 +27,17 @@ Gem::Specification.new do |spec|
27
27
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
28
28
  spec.require_paths = ["lib"]
29
29
 
30
+ spec.required_ruby_version = ">= 2.7.0"
31
+
32
+ spec.add_runtime_dependency "expressir", "~> 1.3"
30
33
  spec.add_runtime_dependency "lutaml-express"
31
34
  spec.add_runtime_dependency "lutaml-uml"
32
35
  spec.add_runtime_dependency "lutaml-xmi"
33
- spec.add_runtime_dependency "thor", "~> 1.0"
34
36
  spec.add_runtime_dependency "nokogiri", "~> 1.10"
37
+ spec.add_runtime_dependency "thor", "~> 1.0"
35
38
 
36
- spec.add_development_dependency "bundler", "~> 2.0"
37
- spec.add_development_dependency "byebug"
38
39
  spec.add_development_dependency "pry", "~> 0.12.2"
39
- spec.add_development_dependency "rake", "~> 10.0"
40
- spec.add_development_dependency "rspec", "~> 3.0"
41
- spec.add_development_dependency "rubocop", "~> 0.54.0"
40
+ spec.add_development_dependency "rake", "~> 13.0"
41
+ spec.add_development_dependency "rspec", "~> 3.11"
42
+ spec.add_development_dependency "rubocop", "~> 1.58"
42
43
  end
metadata CHANGED
@@ -1,31 +1,31 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: lutaml
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.4
4
+ version: 0.7.6
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: 2021-07-06 00:00:00.000000000 Z
11
+ date: 2024-05-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: lutaml-express
14
+ name: expressir
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ">="
17
+ - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '0'
19
+ version: '1.3'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - ">="
24
+ - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '0'
26
+ version: '1.3'
27
27
  - !ruby/object:Gem::Dependency
28
- name: lutaml-uml
28
+ name: lutaml-express
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: lutaml-xmi
42
+ name: lutaml-uml
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - ">="
@@ -53,19 +53,19 @@ dependencies:
53
53
  - !ruby/object:Gem::Version
54
54
  version: '0'
55
55
  - !ruby/object:Gem::Dependency
56
- name: thor
56
+ name: lutaml-xmi
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - "~>"
59
+ - - ">="
60
60
  - !ruby/object:Gem::Version
61
- version: '1.0'
61
+ version: '0'
62
62
  type: :runtime
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - "~>"
66
+ - - ">="
67
67
  - !ruby/object:Gem::Version
68
- version: '1.0'
68
+ version: '0'
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: nokogiri
71
71
  requirement: !ruby/object:Gem::Requirement
@@ -81,33 +81,19 @@ dependencies:
81
81
  - !ruby/object:Gem::Version
82
82
  version: '1.10'
83
83
  - !ruby/object:Gem::Dependency
84
- name: bundler
84
+ name: thor
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
87
  - - "~>"
88
88
  - !ruby/object:Gem::Version
89
- version: '2.0'
90
- type: :development
89
+ version: '1.0'
90
+ type: :runtime
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
94
  - - "~>"
95
95
  - !ruby/object:Gem::Version
96
- version: '2.0'
97
- - !ruby/object:Gem::Dependency
98
- name: byebug
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'
96
+ version: '1.0'
111
97
  - !ruby/object:Gem::Dependency
112
98
  name: pry
113
99
  requirement: !ruby/object:Gem::Requirement
@@ -128,42 +114,42 @@ dependencies:
128
114
  requirements:
129
115
  - - "~>"
130
116
  - !ruby/object:Gem::Version
131
- version: '10.0'
117
+ version: '13.0'
132
118
  type: :development
133
119
  prerelease: false
134
120
  version_requirements: !ruby/object:Gem::Requirement
135
121
  requirements:
136
122
  - - "~>"
137
123
  - !ruby/object:Gem::Version
138
- version: '10.0'
124
+ version: '13.0'
139
125
  - !ruby/object:Gem::Dependency
140
126
  name: rspec
141
127
  requirement: !ruby/object:Gem::Requirement
142
128
  requirements:
143
129
  - - "~>"
144
130
  - !ruby/object:Gem::Version
145
- version: '3.0'
131
+ version: '3.11'
146
132
  type: :development
147
133
  prerelease: false
148
134
  version_requirements: !ruby/object:Gem::Requirement
149
135
  requirements:
150
136
  - - "~>"
151
137
  - !ruby/object:Gem::Version
152
- version: '3.0'
138
+ version: '3.11'
153
139
  - !ruby/object:Gem::Dependency
154
140
  name: rubocop
155
141
  requirement: !ruby/object:Gem::Requirement
156
142
  requirements:
157
143
  - - "~>"
158
144
  - !ruby/object:Gem::Version
159
- version: 0.54.0
145
+ version: '1.58'
160
146
  type: :development
161
147
  prerelease: false
162
148
  version_requirements: !ruby/object:Gem::Requirement
163
149
  requirements:
164
150
  - - "~>"
165
151
  - !ruby/object:Gem::Version
166
- version: 0.54.0
152
+ version: '1.58'
167
153
  description: 'LutaML: data models in textual form'
168
154
  email:
169
155
  - open.source@ribose.com'
@@ -172,12 +158,12 @@ executables:
172
158
  extensions: []
173
159
  extra_rdoc_files: []
174
160
  files:
175
- - ".github/workflows/macos.yml"
176
- - ".github/workflows/ubuntu.yml"
177
- - ".github/workflows/windows.yml"
161
+ - ".github/workflows/rake.yml"
162
+ - ".github/workflows/release.yml"
178
163
  - ".gitignore"
164
+ - ".hound.yml"
179
165
  - ".rspec"
180
- - ".travis.yml"
166
+ - ".rubocop.yml"
181
167
  - CODE_OF_CONDUCT.md
182
168
  - Gemfile
183
169
  - README.adoc
@@ -206,7 +192,7 @@ metadata:
206
192
  homepage_uri: https://github.com/lutaml/lutaml
207
193
  source_code_uri: https://github.com/lutaml/lutaml
208
194
  changelog_uri: https://github.com/lutaml/lutaml/releases
209
- post_install_message:
195
+ post_install_message:
210
196
  rdoc_options: []
211
197
  require_paths:
212
198
  - lib
@@ -214,15 +200,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
214
200
  requirements:
215
201
  - - ">="
216
202
  - !ruby/object:Gem::Version
217
- version: '0'
203
+ version: 2.7.0
218
204
  required_rubygems_version: !ruby/object:Gem::Requirement
219
205
  requirements:
220
206
  - - ">="
221
207
  - !ruby/object:Gem::Version
222
208
  version: '0'
223
209
  requirements: []
224
- rubygems_version: 3.0.3
225
- signing_key:
210
+ rubygems_version: 3.3.27
211
+ signing_key:
226
212
  specification_version: 4
227
213
  summary: 'LutaML: data models in textual form'
228
214
  test_files: []
@@ -1,41 +0,0 @@
1
- name: macos
2
-
3
- on:
4
- push:
5
- branches: [ master ]
6
- pull_request:
7
- paths-ignore:
8
- - .github/workflows/ubuntu.yml
9
- - .github/workflows/windows.yml
10
-
11
- jobs:
12
- test-macos:
13
- name: Test on Ruby ${{ matrix.ruby }} macOS
14
- runs-on: macos-latest
15
- continue-on-error: ${{ matrix.experimental }}
16
- strategy:
17
- fail-fast: false
18
- matrix:
19
- ruby: [ '2.6', '2.5' ]
20
- experimental: [false]
21
- include:
22
- - ruby: '2.7'
23
- experimental: true
24
- steps:
25
- - uses: actions/checkout@master
26
- - name: Install build tools
27
- run: |
28
- brew install automake libtool
29
- - name: Use Ruby
30
- uses: actions/setup-ruby@v1
31
- with:
32
- ruby-version: ${{ matrix.ruby }}
33
- - name: Install Grpahviz macOS
34
- run: brew install graphviz
35
- - name: Update gems
36
- run: |
37
- sudo gem install bundler --force
38
- bundle install --jobs 4 --retry 3
39
- - name: Run specs
40
- run: |
41
- bundle exec rake
@@ -1,40 +0,0 @@
1
- name: ubuntu
2
-
3
- on:
4
- push:
5
- branches: [ master ]
6
- tags:
7
- - '*'
8
- pull_request:
9
- paths-ignore:
10
- - .github/workflows/macos.yml
11
- - .github/workflows/windows.yml
12
-
13
- jobs:
14
- test-linux:
15
- name: Test on Ruby ${{ matrix.ruby }} Ubuntu
16
- runs-on: ubuntu-latest
17
- continue-on-error: ${{ matrix.experimental }}
18
- strategy:
19
- fail-fast: false
20
- matrix:
21
- ruby: [ '2.6', '2.5' ]
22
- experimental: [false]
23
- include:
24
- - ruby: '2.7'
25
- experimental: true
26
- steps:
27
- - uses: actions/checkout@master
28
- - name: Use Ruby
29
- uses: actions/setup-ruby@v1
30
- with:
31
- ruby-version: ${{ matrix.ruby }}
32
- - name: Install Grpahviz Ubuntu
33
- run: sudo apt-get install graphviz
34
- - name: Update gems
35
- run: |
36
- gem install bundler
37
- bundle install --jobs 4 --retry 3
38
- - name: Run specs
39
- run: |
40
- bundle exec rake
@@ -1,48 +0,0 @@
1
- name: windows
2
-
3
- on:
4
- push:
5
- branches: [ master ]
6
- pull_request:
7
- paths-ignore:
8
- - .github/workflows/macos.yml
9
- - .github/workflows/ubuntu.yml
10
-
11
- jobs:
12
- test-windows:
13
- name: Test on Ruby ${{ matrix.ruby }} Windows
14
- runs-on: windows-latest
15
- continue-on-error: ${{ matrix.experimental }}
16
- strategy:
17
- fail-fast: false
18
- matrix:
19
- ruby: [ '2.6', '2.5' ]
20
- experimental: [false]
21
- # Does not supported yet:
22
- # Ruby (< 2.7.dev, >= 2.3), which is required by gem 'nokogiri (~> 1.10)', is not
23
- # available in the local ruby installation
24
- # include:
25
- # - ruby: '2.7'
26
- # experimental: true
27
- steps:
28
- - uses: actions/checkout@master
29
- - name: Use Ruby
30
- uses: actions/setup-ruby@v1
31
- with:
32
- ruby-version: ${{ matrix.ruby }}
33
- - name: Install graphviz
34
- uses: nick-invision/retry@v1
35
- with:
36
- polling_interval_seconds: 5
37
- timeout_minutes: 5
38
- max_attempts: 3
39
- command: choco install --no-progress graphviz --version 2.38.0.20190211
40
- - name: Update gems
41
- shell: pwsh
42
- run: |
43
- gem install bundler
44
- bundle config --local path vendor/bundle
45
- bundle install --jobs 4 --retry 3
46
- - name: Run specs
47
- run: |
48
- bundle exec rake
data/.travis.yml DELETED
@@ -1,6 +0,0 @@
1
- ---
2
- language: ruby
3
- cache: bundler
4
- rvm:
5
- - 2.6.5
6
- before_install: gem install bundler -v 2.1.4