more_core_extensions 4.4.0 → 4.5.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: db4cb66221e2ed8edd88cedf25dfc25c86d5ba70fd9896866262eadcc20c48cc
4
- data.tar.gz: fe56790ae8f33f7d494dcf6a105578b76d6aa863cbdf15ccd2b4c8f3e3f352bb
3
+ metadata.gz: 04f199c1b780aeb9dd4c5e086942ad1fc4987e37203ef20fe0b583003f1eb456
4
+ data.tar.gz: d8b2aedd38f9cf16f922ccc5e842a80096b97adbae6174a3f4886e57d9cd3169
5
5
  SHA512:
6
- metadata.gz: bc5ffe0e3eed645b090a44a6f263070e1ca5f8c52d3243381d29d57a677c11771a2b3d3db745c8f9d41dd46e1b2b860be2f3b255cdb1842ce83c56760e85d92e
7
- data.tar.gz: 5699d773b2b49bfe617972147354dc6293888657de6ce992aa708f70685f98943c74bfeadb162ee38d1abea75fff46498e605136843a001667e8af2f8c4826fc
6
+ metadata.gz: 651eae2e5b48c2354f1ff78b4846529f3ed6e18b594fa6c396d2353d942d99e2b51ce3b142c9c676dca7efc4c211aa5babd532d5744503e67c0c6f45a9f8ea85
7
+ data.tar.gz: 2e959bcb9b4627a7d9f9e107bf67fb134f34525fb3ed1ef15c9114721686da6d9085e52d2bb6de3e8cab267d52060b132e0d61e47f9e78711d84af23a4ee192f
data/.codeclimate.yml CHANGED
@@ -12,5 +12,5 @@ plugins:
12
12
  rubocop:
13
13
  enabled: true
14
14
  config: ".rubocop_cc.yml"
15
- channel: rubocop-0-82
15
+ channel: rubocop-1-56-3
16
16
  version: '2'
@@ -1,11 +1,10 @@
1
+ ---
1
2
  name: CI
2
-
3
3
  on:
4
4
  push:
5
5
  pull_request:
6
6
  schedule:
7
- - cron: '0 0 * * 0'
8
-
7
+ - cron: 0 0 * * 0
9
8
  jobs:
10
9
  ci:
11
10
  runs-on: ubuntu-latest
@@ -16,18 +15,22 @@ jobs:
16
15
  - '2.6'
17
16
  - '2.7'
18
17
  - '3.0'
18
+ - '3.1'
19
+ - '3.2'
20
+ - '3.3'
19
21
  env:
20
- CC_TEST_REPORTER_ID: ${{ secrets.CC_TEST_REPORTER_ID }}
22
+ CC_TEST_REPORTER_ID: "${{ secrets.CC_TEST_REPORTER_ID }}"
21
23
  steps:
22
- - uses: actions/checkout@v2
24
+ - uses: actions/checkout@v4
23
25
  - name: Set up Ruby
24
26
  uses: ruby/setup-ruby@v1
25
27
  with:
26
- ruby-version: ${{ matrix.ruby-version }}
28
+ ruby-version: "${{ matrix.ruby-version }}"
27
29
  bundler-cache: true
30
+ timeout-minutes: 30
28
31
  - name: Run tests
29
32
  run: bundle exec rake
30
33
  - name: Report code coverage
31
- if: ${{ github.ref == 'refs/heads/master' && matrix.ruby-version == '3.0' }}
34
+ if: ${{ github.ref == 'refs/heads/master' && matrix.ruby-version == '3.1' }}
32
35
  continue-on-error: true
33
- uses: paambaati/codeclimate-action@v3.0.0
36
+ uses: paambaati/codeclimate-action@v9
data/CHANGELOG.md CHANGED
@@ -4,6 +4,12 @@ This project adheres to [Semantic Versioning](http://semver.org/).
4
4
 
5
5
  ## [Unreleased]
6
6
 
7
+ ## [4.5.0] - 2024-09-03
8
+ ### Added
9
+ - Added Ruby 3.0 and 3.1 support [[#114](https://github.com/ManageIQ/more_core_extensions/pull/114)]
10
+ - Added Ruby 3.2 and 3.3 support [[#123](https://github.com/ManageIQ/more_core_extensions/pull/123)]
11
+ - Add Class#hierarchy block support to allow formatting of classes [[#113](https://github.com/ManageIQ/more_core_extensions/pull/113)]
12
+
7
13
  ## [4.4.0] - 2022-03-01
8
14
  ### Added
9
15
  - Add support for Rails 7 ActiveSupport [[#105](https://github.com/ManageIQ/more_core_extensions/pull/105)]
@@ -112,7 +118,8 @@ This project adheres to [Semantic Versioning](http://semver.org/).
112
118
  - Upgraded to RSpec 3 [[#16](https://github.com/ManageIQ/more_core_extensions/pull/16)]
113
119
  - Added the Change Log!
114
120
 
115
- [Unreleased]: https://github.com/ManageIQ/more_core_extensions/compare/v4.4.0...HEAD
121
+ [Unreleased]: https://github.com/ManageIQ/more_core_extensions/compare/v4.5.0...HEAD
122
+ [4.5.0]: https://github.com/ManageIQ/more_core_extensions/compare/v4.3.1...v4.5.0
116
123
  [4.4.0]: https://github.com/ManageIQ/more_core_extensions/compare/v4.3.1...v4.4.0
117
124
  [4.3.1]: https://github.com/ManageIQ/more_core_extensions/compare/v4.3.0...v4.3.1
118
125
  [4.3.0]: https://github.com/ManageIQ/more_core_extensions/compare/v4.2.0...v4.3.0
data/README.md CHANGED
@@ -4,7 +4,7 @@ MoreCoreExtensions are a set of core extensions beyond those provided by ActiveS
4
4
 
5
5
  [![Gem Version](https://badge.fury.io/rb/more_core_extensions.svg)](http://badge.fury.io/rb/more_core_extensions)
6
6
  [![CI](https://github.com/ManageIQ/more_core_extensions/actions/workflows/ci.yaml/badge.svg)](https://github.com/ManageIQ/more_core_extensions/actions/workflows/ci.yaml)
7
- [![Code Climate](http://img.shields.io/codeclimate/github/ManageIQ/more_core_extensions.svg)](https://codeclimate.com/github/ManageIQ/more_core_extensions)
7
+ [![Code Climate](https://codeclimate.com/github/ManageIQ/more_core_extensions.svg)](https://codeclimate.com/github/ManageIQ/more_core_extensions)
8
8
  [![Coverage Status](http://img.shields.io/coveralls/ManageIQ/more_core_extensions.svg)](https://coveralls.io/r/ManageIQ/more_core_extensions)
9
9
 
10
10
  [![Join the chat at https://gitter.im/ManageIQ/more_core_extensions](https://badges.gitter.im/ManageIQ/more_core_extensions.svg)](https://gitter.im/ManageIQ/more_core_extensions?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
@@ -22,6 +22,8 @@ module MoreCoreExtensions
22
22
 
23
23
  # Returns a tree-like Hash structure of all descendants.
24
24
  #
25
+ # If a block is passed, that block is used to format the keys of the hierarchy
26
+ #
25
27
  # require 'socket'
26
28
  # IO.hierarchy
27
29
  # # => {BasicSocket=>
@@ -29,8 +31,18 @@ module MoreCoreExtensions
29
31
  # # IPSocket=>{TCPSocket=>{TCPServer=>{}}, UDPSocket=>{}},
30
32
  # # UNIXSocket=>{UNIXServer=>{}}},
31
33
  # # File=>{}}
32
- def hierarchy
33
- subclasses.each_with_object({}) { |k, h| h[k] = k.hierarchy }
34
+ #
35
+ # IO.hierarchy(&:name)
36
+ # # => {"BasicSocket"=>
37
+ # # {"Socket"=>{},
38
+ # # "IPSocket"=>{"TCPSocket"=>{"TCPServer"=>{}}, "UDPSocket"=>{}},
39
+ # # "UNIXSocket"=>{"UNIXServer"=>{}}},
40
+ # # "File"=>{}}
41
+ def hierarchy(&block)
42
+ subclasses.each_with_object({}) do |k, h|
43
+ key = block ? yield(k) : k
44
+ h[key] = k.hierarchy(&block)
45
+ end
34
46
  end
35
47
 
36
48
  # Returns an Array of all superclasses.
@@ -1,3 +1,3 @@
1
1
  module MoreCoreExtensions
2
- VERSION = "4.4.0".freeze
2
+ VERSION = "4.5.0".freeze
3
3
  end
data/renovate.json ADDED
@@ -0,0 +1,6 @@
1
+ {
2
+ "$schema": "https://docs.renovatebot.com/renovate-schema.json",
3
+ "extends": [
4
+ "config:recommended"
5
+ ]
6
+ }
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: more_core_extensions
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.4.0
4
+ version: 4.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jason Frey
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: exe
11
11
  cert_chain: []
12
- date: 2022-03-01 00:00:00.000000000 Z
12
+ date: 2024-09-03 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: activesupport
@@ -198,6 +198,7 @@ files:
198
198
  - lib/more_core_extensions/core_ext/symbol/to_i.rb
199
199
  - lib/more_core_extensions/version.rb
200
200
  - more_core_extensions.gemspec
201
+ - renovate.json
201
202
  homepage: http://github.com/ManageIQ/more_core_extensions
202
203
  licenses:
203
204
  - MIT
@@ -217,7 +218,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
217
218
  - !ruby/object:Gem::Version
218
219
  version: '0'
219
220
  requirements: []
220
- rubygems_version: 3.3.5
221
+ rubygems_version: 3.5.17
221
222
  signing_key:
222
223
  specification_version: 4
223
224
  summary: MoreCoreExtensions are a set of core extensions beyond those provided by