more_core_extensions 4.4.0 → 4.5.0

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
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