ruby_smart-support 1.1.0 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 0ffa7fb2389de19763b239f720ab830e97178f07ab582168d3bff000f08061fe
4
- data.tar.gz: 0d9e1695e4558759194c2b22d8f6a88e4e5cf91f0b527de9ab96c1e5a1799a95
3
+ metadata.gz: '04538f8760bf132b3624905d73d7d814be6db112127400c8813f788fbbcccbd9'
4
+ data.tar.gz: a25eef7736cfe55d98316f55fc44fac46b1866cdfa27fdac19194942c55cd685
5
5
  SHA512:
6
- metadata.gz: 3868c6da69ac5a9a11357812cd2d5eb4ecdaba21ca3b805d90389068d52c6518f330da21873332f6e67207fa34d6eb536c307957ed2ed0249e7309fc9604c3a4
7
- data.tar.gz: b72bbf4e9b768fa99af1245943a3ba1bd8e5302e790a316c4a5fcc9c17de9dafda83e5ef4b98a369cc28bc52b8b2cf7251abe935b3256f5cc7b8dc31999aa1e7
6
+ metadata.gz: cdca8016dc310dee6967f9f35ee9ba24bbb67e968ed6836306e2df22f68433d5d8cc86260b8c7b00ea86ea173e44d02a5efe89cbf3403f3a0091eab609a40aef
7
+ data.tar.gz: c8d56578f4bc8dd2fb8adcd081176b1ffd5c8fa52db1cc82380f6baac7358e7163e4b54810fd8d21ca15f2e0c9aa8dd4024516dfbbb58eb6e14767555fd2fe28
data/.gitignore CHANGED
@@ -1,19 +1,25 @@
1
+ # defaults
1
2
  /.bundle/
3
+ /tmp/
4
+ Gemfile.lock
5
+
6
+ # testing
7
+ .rspec_status
8
+ /spec/reports/
9
+
10
+ # documentation & coverage
2
11
  /.yardoc
3
12
  /_yardoc/
4
13
  /coverage/
5
14
  /doc/
6
- /pkg/
7
- /spec/reports/
8
- /tmp/
15
+ /docs/yard
16
+ /.coveralls.yml
9
17
 
10
- # rspec failure tracking
11
- .rspec_status
18
+ # builds
19
+ /pkg/
20
+ /*.gem
12
21
 
13
22
  # IDE related files
14
23
  /.idea
15
24
  /.ruby-version
16
- /.bundle-version
17
-
18
- # Github testing
19
- Gemfile.lock
25
+ /.bundle-version
data/.yardopts ADDED
@@ -0,0 +1,4 @@
1
+ --embed-mixins
2
+ --markup=markdown
3
+ --files docs/*.*
4
+ --plugin relative_markdown_links
data/README.md CHANGED
@@ -1,8 +1,13 @@
1
1
  # RubySmart::Support
2
2
 
3
- [![Gem Version](https://badge.fury.io/rb/ruby_smart-support.svg)](https://badge.fury.io/rb/ruby_smart-support)
4
- [![Test](https://github.com/ruby-smart/support/actions/workflows/ruby.yml/badge.svg)](https://github.com/ruby-smart/support/actions/workflows/ruby.yml)
5
- [![RubySmart::Support Build Status](https://shields.io/github/workflow/status/ruby-smart/support/Test)](https://github.com/ruby-smart/support/actions)
3
+ [![GitHub](https://img.shields.io/badge/github-ruby--smart/support-blue.svg)](http://github.com/ruby-smart/support)
4
+ [![Documentation](https://img.shields.io/badge/docs-rdoc.info-blue.svg)](http://rubydoc.info/gems/ruby_smart-support)
5
+
6
+ [![Gem Version](https://badge.fury.io/rb/ruby_smart-support.svg?kill_cache=1)](https://badge.fury.io/rb/ruby_smart-support)
7
+ [![License](https://img.shields.io/github/license/ruby-smart/support)](docs/LICENSE.txt)
8
+
9
+ [![Coverage Status](https://coveralls.io/repos/github/ruby-smart/support/badge.svg?branch=main&kill_cache=1)](https://coveralls.io/github/ruby-smart/support?branch=main)
10
+ [![Tests](https://github.com/ruby-smart/support/actions/workflows/ruby.yml/badge.svg)](https://github.com/ruby-smart/support/actions/workflows/ruby.yml)
6
11
 
7
12
  A toolkit of support libraries including GemInfo, ThreadInfo, Ruby core extensions & optionally activesupport extensions.
8
13
 
@@ -43,6 +48,9 @@ Or install it yourself as:
43
48
  * to `append` & `prepend` additional blocks
44
49
  * to check task-state with `#invoked?`, `#performed?` & `#running?`
45
50
 
51
+
52
+
53
+
46
54
  -----
47
55
 
48
56
  ## ThreadInfo module
@@ -191,19 +199,19 @@ rake db:migrate
191
199
 
192
200
  ## Docs
193
201
 
194
- [CHANGELOG](./docs/CHANGELOG.md)
202
+ [CHANGELOG](docs/CHANGELOG.md)
195
203
 
196
204
  ## Contributing
197
205
 
198
206
  Bug reports and pull requests are welcome on [GitHub](https://github.com/ruby-smart/support).
199
- This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [code of conduct](./docs/CODE_OF_CONDUCT.md).
207
+ This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [code of conduct](docs/CODE_OF_CONDUCT.md).
200
208
 
201
209
  ## License
202
210
 
203
211
  The gem is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).
204
212
 
205
- A copy of the [LICENSE](./docs/LICENSE.txt) can be found @ the docs.
213
+ A copy of the [LICENSE](docs/LICENSE.txt) can be found @ the docs.
206
214
 
207
215
  ## Code of Conduct
208
216
 
209
- Everyone interacting in the project's codebases, issue trackers, chat rooms and mailing lists is expected to follow the [CODE OF CONDUCT](./docs/CODE_OF_CONDUCT.md).
217
+ Everyone interacting in the project's codebases, issue trackers, chat rooms and mailing lists is expected to follow the [CODE OF CONDUCT](docs/CODE_OF_CONDUCT.md).
data/Rakefile CHANGED
@@ -5,4 +5,4 @@ require "rspec/core/rake_task"
5
5
 
6
6
  RSpec::Core::RakeTask.new(:spec)
7
7
 
8
- task default: :spec
8
+ task default: :spec
data/bin/console CHANGED
@@ -2,7 +2,7 @@
2
2
  # frozen_string_literal: true
3
3
 
4
4
  require "bundler/setup"
5
- require "ruby_smart/support"
5
+ require "ruby_smart-support"
6
6
 
7
7
  # You can add fixtures and/or initialization code here to make experimenting
8
8
  # with your gem easier. You can also use a different console, if you like.
data/docs/CHANGELOG.md CHANGED
@@ -1,5 +1,15 @@
1
1
  # RubySmart::Support - CHANGELOG
2
2
 
3
+ ## [1.2.0] - 2023-01-24
4
+ * **[ref]** `GemInfo` methods (active -> required & active? -> required?)
5
+ * **[ref]** simplify `GemInfo.match?`method
6
+ * **[fix]** `Hash#to_md5` method to use `#inspect` instead of `#to_s`
7
+
8
+ ## [1.1.1] - 2022-11-15
9
+ * **[fix]** `GemInfo` & `ThreadInfo` not being included on require 'ruby_smart-support'
10
+ * **[fix]** yard comments
11
+ * **[add]** `yard` gem for documentation
12
+
3
13
  ## [1.1.0] - 2022-11-12
4
14
  * **[ref]** `GemInfo.match?` method to provide method parameters more intuitive like `.match?('3.4.0', '>', '3.1.0')`
5
15
  * **[fix]** README
@@ -8,12 +8,13 @@ unless Hash.method_defined? "only!"
8
8
  # Replaces the hash with only the given keys (if exists),
9
9
  # but returns the same hash (not the removed keys - this differs to *Hash#slice!*)
10
10
  #
11
+ # @example
11
12
  # hsh = {a: 1, b: 2, c: 3}
12
13
  # hsh.only!(:a, :d)
13
14
  # > {a: 1}
14
15
  # > hsh == {a: 1}
15
16
  #
16
- # @param [Object] *keys
17
+ # @param [Array] keys
17
18
  # @return [Hash] self
18
19
  def only!(*keys)
19
20
  slice!(*keys)
@@ -27,15 +28,16 @@ unless Hash.method_defined? "without!"
27
28
  # removes the given keys from hash and returns those key => value pairs
28
29
  # (this differs to *Hash#except!*)
29
30
  #
31
+ # @example
30
32
  # hsh = {a: 1, b: 2, c: 3}
31
33
  # hsh.without!(:a, :d)
32
34
  # > {a: 1}
33
35
  # > hsh == {b: 2, c: 3}
34
36
  #
35
- # @param [Object] *keys
37
+ # @param [Array] keys
36
38
  # @return [Hash] self
37
39
  def without!(*keys)
38
- Hash[self.to_a - self.except!(*keys).to_a]
40
+ Hash[to_a - except!(*keys).to_a]
39
41
  end
40
42
  end
41
43
  end
@@ -44,12 +46,13 @@ unless Hash.method_defined? "deep_reject"
44
46
  class Hash
45
47
  # returns a new Hash with items that the block evaluates to true removed, also to deep Hashes.
46
48
  def deep_reject(&blk)
47
- self.deep_dup.deep_reject!(&blk)
49
+ deep_dup.deep_reject!(&blk)
48
50
  end
49
51
 
50
52
  # deep reject by provided block
51
53
  # deep remove keys that the block evaluates to true
52
54
  #
55
+ # @example
53
56
  # hsh = {a: 1, b: 2, c: 3, d: {a: 1, b: 2, c: 3}}
54
57
  # hsh.deep_reject! {|_k,v| v.is_a?(Numeric) && v > 2}
55
58
  # > hsh == {a: 1, b: 2, d: {a: 1, b: 2}}
@@ -58,13 +61,13 @@ unless Hash.method_defined? "deep_reject"
58
61
  # hsh.deep_reject! {|k,v| k == :d || v == 2}
59
62
  # > hsh == {a: 1, c: 3}
60
63
  def deep_reject!(&blk)
61
- self.each do |k, v|
64
+ each do |k, v|
62
65
  if blk.(k, v)
63
- self.delete(k)
66
+ delete(k)
64
67
  elsif v.is_a?(Hash)
65
68
  v.deep_reject!(&blk)
66
69
  end
67
70
  end
68
71
  end
69
72
  end
70
- end
73
+ end
@@ -9,10 +9,10 @@ unless Array.method_defined? :only!
9
9
  # ary.only!(:bar, :moon)
10
10
  # > ary == [:bar]
11
11
  #
12
- # @param [Object] *values
12
+ # @param [Array] values
13
13
  # @return [Array] self
14
14
  def only!(*values)
15
- reject! {|value| !values.include?(value)}
15
+ reject! { |value| !values.include?(value) }
16
16
  self
17
17
  end
18
18
  end
@@ -27,7 +27,7 @@ unless Array.method_defined? :only
27
27
  # ary.only(:bar, :bat, :moon)
28
28
  # > [:bar, :bat]
29
29
  #
30
- # @param [Object] *values
30
+ # @param [Array] values
31
31
  # @return [Array] ary
32
32
  def only(*values)
33
33
  dup.only!(*values)
@@ -2,10 +2,10 @@
2
2
 
3
3
  unless Hash.method_defined? "to_md5"
4
4
  class Hash
5
- # returns the md5 of any hash by using the to_s method
5
+ # returns the md5 of any hash by using the +#inspect+ method
6
6
  # @return [String] md5
7
7
  def to_md5
8
- Digest::MD5.hexdigest(Hash[self.sort].to_s)
8
+ Digest::MD5.hexdigest(Hash[self.sort].inspect)
9
9
  end
10
10
  end
11
11
  end
@@ -15,8 +15,10 @@ module RubySmart
15
15
 
16
16
  # returns a hash of all installed gems with it's versions
17
17
  #
18
+ # @example
19
+ #
18
20
  # GemInfo.installed
19
- # > {'bundler' => ['2.2.30', '1.2.3']}
21
+ # # > {'bundler' => ['2.2.30', '1.2.3']}
20
22
  #
21
23
  # @return [Hash{<name> => Array[<version>]}] gem name-versions hash
22
24
  def self.installed
@@ -27,10 +29,10 @@ module RubySmart
27
29
  # the optional version requirement matches against any available version
28
30
  #
29
31
  # GemInfo.installed?('bundler')
30
- # > true
32
+ # # > true
31
33
  #
32
34
  # GemInfo.installed?('bundler', '~> 3.0')
33
- # > false
35
+ # # > false
34
36
  #
35
37
  # @param [String] name - the gem name
36
38
  # @param [nil, String] version - optional version requirement
@@ -41,22 +43,24 @@ module RubySmart
41
43
 
42
44
  # returns a hash of all loaded gems with its current version
43
45
  #
46
+ # @example
47
+ #
44
48
  # GemInfo.loaded
45
- # > {'bundler' => '2.2.30'}
49
+ # # > {'bundler' => '2.2.30'}
46
50
  #
47
51
  # @return [Hash{<name> => <version>}] gem name-version hash
48
52
  def self.loaded
49
53
  Hash[::Gem.loaded_specs.values.map { |g| [g.name, g.version.to_s] }.sort]
50
54
  end
51
55
 
52
- # returns true if the provided gem name is loaded.
56
+ # returns true if the provided gem name is loaded (defined within any Gemfile), but must not be required yet.
53
57
  # the optional version requirement matches against the loaded version
54
58
  #
55
59
  # GemInfo.loaded?('bundler')
56
- # > true
60
+ # # > true
57
61
  #
58
62
  # GemInfo.loaded?('bundler', '~> 3.0')
59
- # > false
63
+ # # > false
60
64
  #
61
65
  # @param [String] name - the gem name
62
66
  # @param [nil, String] version - optional version requirement
@@ -65,13 +69,13 @@ module RubySmart
65
69
  loaded.key?(name) && (version.nil? || match?( loaded[name], version))
66
70
  end
67
71
 
68
- # returns an array of all active gems
72
+ # returns an array of all required gems
69
73
  #
70
- # GemInfo.active
74
+ # GemInfo.required
71
75
  # > ['bundler']
72
76
  #
73
77
  # @return [Array<name>}] gem names
74
- def self.active
78
+ def self.required
75
79
  $LOADED_FEATURES.
76
80
  select { |feature| feature.match(GEM_PATH_REGEXP) }.
77
81
  map { |feature|
@@ -82,20 +86,20 @@ module RubySmart
82
86
  sort
83
87
  end
84
88
 
85
- # returns true if the provided gem name is active.
86
- # the optional version requirement matches against the *loaded* version
89
+ # returns true if the provided gem name is required.
90
+ # the optional version matches against the *required* version
87
91
  #
88
- # GemInfo.active?('bundler')
92
+ # GemInfo.required?('bundler')
89
93
  # > true
90
94
  #
91
- # GemInfo.active?('bundler', '~> 3.0')
95
+ # GemInfo.required?('bundler', '~> 3.0')
92
96
  # > false
93
97
  #
94
98
  # @param [String] name - the gem name
95
99
  # @param [nil, String] version - optional version requirement
96
100
  # @return [Boolean] activated?
97
- def self.active?(name, version = nil)
98
- active.include?(name) && (version.nil? || match?(self.version(name), version))
101
+ def self.required?(name, version = nil)
102
+ required.include?(name) && (version.nil? || match?(self.version(name), version))
99
103
  end
100
104
 
101
105
  # returns an array of all loaded features
@@ -154,7 +158,7 @@ module RubySmart
154
158
  # @return [Boolean]
155
159
  def self.safe_require(path, gem = nil, version = nil)
156
160
  # check for missing gem (nicely check if the feature name differs to the gem name)
157
- return false if !gem.nil? && path != gem && !active?(gem, version)
161
+ return false if !gem.nil? && path != gem && !required?(gem, version)
158
162
 
159
163
  # try to require the feature
160
164
  begin
@@ -185,28 +189,23 @@ module RubySmart
185
189
  # > false
186
190
  def self.match?(*args)
187
191
  version_current = args.shift
188
- version_requirement = args.join ' '
192
+ version_requirement = args.join(' ')
189
193
 
190
194
  return true if version_requirement.nil? || version_requirement.strip == ''
191
195
 
192
- # split version compare operators
193
- version_requirement_str = version_requirement.gsub(/([=~>< ]+)/, '')
194
- version_requirement_op = $1
195
-
196
- # create plain versions without compare operators
197
196
  gem_version_current = Gem::Version.new(version_current)
198
- gem_version_requirement = Gem::Version.new(version_requirement_str)
197
+ gem_version_requirement = Gem::Requirement.new(version_requirement)
199
198
 
200
199
  # check if required version is PRE & current is NOT
201
200
  if gem_version_requirement.prerelease? && !gem_version_current.prerelease?
202
- version_requirement = "#{version_requirement_op}#{gem_version_requirement.release}"
201
+ gem_version_requirement = Gem::Requirement.new("#{gem_version_requirement.requirements[0][0]} #{gem_version_requirement.requirements[0][1].release.version}")
203
202
  elsif gem_version_requirement.prerelease? != gem_version_current.prerelease?
204
203
  # check if required version PRE doesn't equal current version PRE
205
- version_current = gem_version_current.release.to_s
204
+ gem_version_current = gem_version_current.release
206
205
  end
207
206
  # else is not required here: either its PRE && PRE || !PRE && !PRE
208
207
 
209
- Gem::Dependency.new('', version_requirement).match?('', version_current)
208
+ gem_version_requirement.satisfied_by?(gem_version_current)
210
209
  end
211
210
  end
212
211
  end
@@ -9,7 +9,7 @@ module RubySmart
9
9
 
10
10
  module VERSION
11
11
  MAJOR = 1
12
- MINOR = 1
12
+ MINOR = 2
13
13
  TINY = 0
14
14
  PRE = nil
15
15
 
@@ -1,3 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'ruby_smart/support'
3
+ require 'ruby_smart/support'
4
+ require 'gem_info'
5
+ require 'thread_info'
@@ -1,27 +1,27 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative "lib/ruby_smart/support/version"
3
+ require_relative 'lib/ruby_smart/support/version'
4
4
 
5
5
  Gem::Specification.new do |spec|
6
- spec.name = "ruby_smart-support"
7
- spec.version = RubySmart::Support.version
8
- spec.authors = ["Tobias Gonsior"]
9
- spec.email = ["info@ruby-smart.org"]
10
-
11
- spec.summary = "A toolkit of support libraries including GemInfo, ThreadInfo, Ruby core extensions & optionally activesupport extensions"
12
- spec.description = <<DESC
13
- RubySmart::Support is a toolkit of support libraries for Ruby - major features includes GemInfo & ThreadInfo, as well core extensions for Ruby & activesupport (if installed).
14
- DESC
15
-
16
- spec.homepage = "https://github.com/ruby-smart/support"
17
- spec.license = "MIT"
18
- spec.required_ruby_version = ">= 2.6.0"
19
-
20
- spec.metadata["homepage_uri"] = spec.homepage
21
- spec.metadata["source_code_uri"] = "https://github.com/ruby-smart/support"
22
- spec.metadata["changelog_uri"] = "#{spec.metadata["source_code_uri"]}/blob/main/docs/CHANGELOG.md"
23
-
24
- spec.metadata["allowed_push_host"] = "https://rubygems.org"
6
+ spec.name = 'ruby_smart-support'
7
+ spec.version = RubySmart::Support.version
8
+ spec.authors = ['Tobias Gonsior']
9
+ spec.email = ['info@ruby-smart.org']
10
+ spec.summary = 'A toolkit of support libraries including GemInfo, ThreadInfo, Ruby core extensions & optionally activesupport extensions'
11
+ spec.description = <<~DESC
12
+ RubySmart::Support is a toolkit of support libraries for Ruby - major features includes GemInfo & ThreadInfo, as well core extensions for Ruby & activesupport (if installed).
13
+ DESC
14
+
15
+ spec.homepage = 'https://github.com/ruby-smart/support'
16
+ spec.license = 'MIT'
17
+ spec.required_ruby_version = '>= 2.6.0'
18
+
19
+ spec.metadata['homepage_uri'] = spec.homepage
20
+ spec.metadata['source_code_uri'] = 'https://github.com/ruby-smart/support'
21
+ spec.metadata['documentation_uri'] = 'https://rubydoc.info/gems/ruby_smart-support'
22
+ spec.metadata['changelog_uri'] = "#{spec.metadata["source_code_uri"]}/blob/main/docs/CHANGELOG.md"
23
+
24
+ spec.metadata['allowed_push_host'] = 'https://rubygems.org'
25
25
 
26
26
  # Specify which files should be added to the gem when it is released.
27
27
  # The `git ls-files -z` loads the files in the RubyGem that have been added into git.
@@ -29,10 +29,11 @@ DESC
29
29
  `git ls-files -z`.split("\x0").reject { |f| f.match(%r{\A(?:test|spec|features)/}) }
30
30
  end
31
31
 
32
- spec.require_paths = ["lib"]
32
+ spec.require_paths = ['lib']
33
33
 
34
- spec.add_development_dependency 'activesupport', ">= 4.0"
35
- spec.add_development_dependency 'rspec', "~> 3.0"
36
- spec.add_development_dependency 'rake', "~> 13.0"
37
- spec.add_development_dependency 'simplecov', '~> 0.21'
34
+ spec.add_development_dependency 'activesupport', '>= 4.0'
35
+ spec.add_development_dependency 'coveralls_reborn', '~> 0.25'
36
+ spec.add_development_dependency 'rake', '~> 13.0'
37
+ spec.add_development_dependency 'rspec', '~> 3.0'
38
+ spec.add_development_dependency 'yard', '~> 0.9'
38
39
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ruby_smart-support
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.0
4
+ version: 1.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tobias Gonsior
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-11-12 00:00:00.000000000 Z
11
+ date: 2023-01-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -25,19 +25,19 @@ dependencies:
25
25
  - !ruby/object:Gem::Version
26
26
  version: '4.0'
27
27
  - !ruby/object:Gem::Dependency
28
- name: rspec
28
+ name: coveralls_reborn
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '3.0'
33
+ version: '0.25'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '3.0'
40
+ version: '0.25'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rake
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -53,24 +53,38 @@ dependencies:
53
53
  - !ruby/object:Gem::Version
54
54
  version: '13.0'
55
55
  - !ruby/object:Gem::Dependency
56
- name: simplecov
56
+ name: rspec
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: '3.0'
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: '3.0'
69
+ - !ruby/object:Gem::Dependency
70
+ name: yard
57
71
  requirement: !ruby/object:Gem::Requirement
58
72
  requirements:
59
73
  - - "~>"
60
74
  - !ruby/object:Gem::Version
61
- version: '0.21'
75
+ version: '0.9'
62
76
  type: :development
63
77
  prerelease: false
64
78
  version_requirements: !ruby/object:Gem::Requirement
65
79
  requirements:
66
80
  - - "~>"
67
81
  - !ruby/object:Gem::Version
68
- version: '0.21'
82
+ version: '0.9'
69
83
  description: 'RubySmart::Support is a toolkit of support libraries for Ruby - major
70
84
  features includes GemInfo & ThreadInfo, as well core extensions for Ruby & activesupport
71
85
  (if installed).
72
86
 
73
- '
87
+ '
74
88
  email:
75
89
  - info@ruby-smart.org
76
90
  executables: []
@@ -80,6 +94,7 @@ files:
80
94
  - ".github/workflows/ruby.yml"
81
95
  - ".gitignore"
82
96
  - ".rspec"
97
+ - ".yardopts"
83
98
  - Gemfile
84
99
  - README.md
85
100
  - Rakefile
@@ -112,9 +127,10 @@ licenses:
112
127
  metadata:
113
128
  homepage_uri: https://github.com/ruby-smart/support
114
129
  source_code_uri: https://github.com/ruby-smart/support
130
+ documentation_uri: https://rubydoc.info/gems/ruby_smart-support
115
131
  changelog_uri: https://github.com/ruby-smart/support/blob/main/docs/CHANGELOG.md
116
132
  allowed_push_host: https://rubygems.org
117
- post_install_message:
133
+ post_install_message:
118
134
  rdoc_options: []
119
135
  require_paths:
120
136
  - lib
@@ -129,8 +145,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
129
145
  - !ruby/object:Gem::Version
130
146
  version: '0'
131
147
  requirements: []
132
- rubygems_version: 3.3.22
133
- signing_key:
148
+ rubygems_version: 3.3.7
149
+ signing_key:
134
150
  specification_version: 4
135
151
  summary: A toolkit of support libraries including GemInfo, ThreadInfo, Ruby core extensions
136
152
  & optionally activesupport extensions