more_core_extensions 4.5.1 → 4.7.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 +4 -4
- data/.github/workflows/ci.yaml +21 -30
- data/CHANGELOG.md +19 -1
- data/Gemfile +5 -3
- data/README.md +3 -3
- data/lib/more_core_extensions/core_ext/array/compact_map.rb +1 -1
- data/lib/more_core_extensions/core_ext/array/deletes.rb +1 -1
- data/lib/more_core_extensions/core_ext/array/duplicates.rb +1 -1
- data/lib/more_core_extensions/core_ext/array/element_counts.rb +1 -1
- data/lib/more_core_extensions/core_ext/array/inclusions.rb +1 -1
- data/lib/more_core_extensions/core_ext/array/math.rb +1 -1
- data/lib/more_core_extensions/core_ext/array/nested.rb +1 -1
- data/lib/more_core_extensions/core_ext/array/random.rb +1 -1
- data/lib/more_core_extensions/core_ext/array/sorting.rb +1 -1
- data/lib/more_core_extensions/core_ext/array/stretch.rb +2 -2
- data/lib/more_core_extensions/core_ext/array/tableize.rb +1 -1
- data/lib/more_core_extensions/core_ext/benchmark/realtime_store.rb +1 -1
- data/lib/more_core_extensions/core_ext/class/hierarchy.rb +1 -1
- data/lib/more_core_extensions/core_ext/hash/deletes.rb +1 -1
- data/lib/more_core_extensions/core_ext/hash/nested.rb +1 -1
- data/lib/more_core_extensions/core_ext/hash/sorting.rb +2 -2
- data/lib/more_core_extensions/core_ext/math/slope.rb +1 -1
- data/lib/more_core_extensions/core_ext/module/cache_with_timeout.rb +2 -2
- data/lib/more_core_extensions/core_ext/module/namespace.rb +1 -1
- data/lib/more_core_extensions/core_ext/numeric/math.rb +1 -1
- data/lib/more_core_extensions/core_ext/numeric/rounding.rb +1 -1
- data/lib/more_core_extensions/core_ext/numeric.rb +0 -1
- data/lib/more_core_extensions/core_ext/object/deep_send.rb +1 -1
- data/lib/more_core_extensions/core_ext/object/namespace.rb +1 -1
- data/lib/more_core_extensions/core_ext/process/pause_resume.rb +1 -1
- data/lib/more_core_extensions/core_ext/range/step_value.rb +1 -1
- data/lib/more_core_extensions/core_ext/string/constantize_allowlist.rb +28 -0
- data/lib/more_core_extensions/core_ext/string/decimal_suffix.rb +1 -1
- data/lib/more_core_extensions/core_ext/string/formats.rb +2 -2
- data/lib/more_core_extensions/core_ext/string/hex_dump.rb +1 -1
- data/lib/more_core_extensions/core_ext/string/iec60027_2.rb +1 -1
- data/lib/more_core_extensions/core_ext/string/to_i_with_method.rb +4 -4
- data/lib/more_core_extensions/core_ext/string.rb +1 -0
- data/lib/more_core_extensions/core_ext/symbol/to_i.rb +1 -1
- data/lib/more_core_extensions/version.rb +1 -1
- data/more_core_extensions.gemspec +1 -0
- metadata +21 -6
- data/.codeclimate.yml +0 -16
- data/.rubocop_cc.yml +0 -4
- data/lib/more_core_extensions/core_ext/numeric/clamp.rb +0 -18
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 5c70c0dd51a37f35b72c4403a74fa65c2e4f14650879535bfca1acc26a49483b
|
|
4
|
+
data.tar.gz: 6a073c5cec6a107ed96d0f89accccc52a522d6ba9312f841ce297033b15de4f1
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: c0ef3d2f74629185def922c3a4d9248b7cf486b911f74d057f4e215df446267704adb12568a34f65949db498a18eaa3772b5e38012cb53daf68ec7ff69ebf22a
|
|
7
|
+
data.tar.gz: 15181cda622ab9d8f888cfe0a43b48e031978223f3dd8df2e6d45fae5b95432e456d121c7d8be6c3766e3e263b17d9a795e49ce0db74af13f9c9647d024328fb
|
data/.github/workflows/ci.yaml
CHANGED
|
@@ -1,10 +1,18 @@
|
|
|
1
|
-
---
|
|
2
1
|
name: CI
|
|
3
2
|
on:
|
|
4
|
-
push:
|
|
5
3
|
pull_request:
|
|
4
|
+
push:
|
|
5
|
+
branches-ignore:
|
|
6
|
+
- dependabot/*
|
|
7
|
+
- renovate/*
|
|
6
8
|
schedule:
|
|
7
9
|
- cron: 0 0 * * 0
|
|
10
|
+
workflow_dispatch:
|
|
11
|
+
concurrency:
|
|
12
|
+
group: "${{ github.workflow }}-${{ github.ref }}"
|
|
13
|
+
cancel-in-progress: true
|
|
14
|
+
permissions:
|
|
15
|
+
contents: read
|
|
8
16
|
jobs:
|
|
9
17
|
ci:
|
|
10
18
|
runs-on: ubuntu-latest
|
|
@@ -12,38 +20,25 @@ jobs:
|
|
|
12
20
|
fail-fast: false
|
|
13
21
|
matrix:
|
|
14
22
|
ruby-version:
|
|
15
|
-
- '2.7'
|
|
16
|
-
- '3.0'
|
|
17
23
|
- '3.1'
|
|
18
24
|
- '3.2'
|
|
19
25
|
- '3.3'
|
|
26
|
+
- '3.4'
|
|
27
|
+
- '4.0'
|
|
28
|
+
- ruby-head
|
|
20
29
|
rails-version:
|
|
21
|
-
- '
|
|
22
|
-
- '
|
|
23
|
-
- '
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
- ruby-version: '2.5'
|
|
28
|
-
rails-version: '6.0'
|
|
29
|
-
- ruby-version: '2.5'
|
|
30
|
-
rails-version: '6.1'
|
|
31
|
-
- ruby-version: '2.6'
|
|
32
|
-
rails-version: '6.0'
|
|
33
|
-
- ruby-version: '2.6'
|
|
34
|
-
rails-version: '6.1'
|
|
35
|
-
# Rails 7.2 supports Ruby >= 3.1.0
|
|
30
|
+
- '7.2'
|
|
31
|
+
- '8.0'
|
|
32
|
+
- '8.1'
|
|
33
|
+
exclude:
|
|
34
|
+
- ruby-version: '3.1'
|
|
35
|
+
rails-version: '8.1'
|
|
36
36
|
- ruby-version: '3.1'
|
|
37
|
-
rails-version: '
|
|
38
|
-
- ruby-version: '3.2'
|
|
39
|
-
rails-version: '7.2'
|
|
40
|
-
- ruby-version: '3.3'
|
|
41
|
-
rails-version: '7.2'
|
|
37
|
+
rails-version: '8.0'
|
|
42
38
|
env:
|
|
43
39
|
TEST_RAILS_VERSION: "${{ matrix.rails-version }}"
|
|
44
|
-
CC_TEST_REPORTER_ID: "${{ secrets.CC_TEST_REPORTER_ID }}"
|
|
45
40
|
steps:
|
|
46
|
-
- uses: actions/checkout@
|
|
41
|
+
- uses: actions/checkout@v7
|
|
47
42
|
- name: Set up Ruby
|
|
48
43
|
uses: ruby/setup-ruby@v1
|
|
49
44
|
with:
|
|
@@ -52,7 +47,3 @@ jobs:
|
|
|
52
47
|
timeout-minutes: 30
|
|
53
48
|
- name: Run tests
|
|
54
49
|
run: bundle exec rake
|
|
55
|
-
- name: Report code coverage
|
|
56
|
-
if: ${{ github.ref == 'refs/heads/master' && matrix.ruby-version == '3.1' }}
|
|
57
|
-
continue-on-error: true
|
|
58
|
-
uses: paambaati/codeclimate-action@v9
|
data/CHANGELOG.md
CHANGED
|
@@ -4,6 +4,22 @@ This project adheres to [Semantic Versioning](http://semver.org/).
|
|
|
4
4
|
|
|
5
5
|
## [Unreleased]
|
|
6
6
|
|
|
7
|
+
## [4.7.0] - 2026-07-31
|
|
8
|
+
### Changed
|
|
9
|
+
- Drop Numeric#clamp as it is superseded by Ruby's built-in Comparable#clamp [[#162](https://github.com/ManageIQ/more_core_extensions/pull/162)]
|
|
10
|
+
|
|
11
|
+
## [4.6.0] - 2026-04-28
|
|
12
|
+
### Added
|
|
13
|
+
- Add allowlist support to String#constantize and String#safe_constantize [[#155](https://github.com/ManageIQ/more_core_extensions/pull/155)]
|
|
14
|
+
- Add Ruby 3.4+, Rails 7.2+ support [[#134](https://github.com/ManageIQ/more_core_extensions/pull/134)]
|
|
15
|
+
|
|
16
|
+
### Fixed
|
|
17
|
+
- Fix literal `.` handling in the email regex [[#141](https://github.com/ManageIQ/more_core_extensions/pull/141)]
|
|
18
|
+
|
|
19
|
+
### Changed
|
|
20
|
+
- Drop Ruby < 3.1 and Rails < 7.2 support [[#134](https://github.com/ManageIQ/more_core_extensions/pull/134)]
|
|
21
|
+
- Add benchmark as a dependency for Rails 8.1+ [[#134](https://github.com/ManageIQ/more_core_extensions/pull/134)]
|
|
22
|
+
|
|
7
23
|
## [4.5.1] - 2025-01-31
|
|
8
24
|
### Fixed
|
|
9
25
|
- Fix issues where active_support does not require logger properly [[#127](https://github.com/ManageIQ/more_core_extensions/pull/127)]
|
|
@@ -122,7 +138,9 @@ This project adheres to [Semantic Versioning](http://semver.org/).
|
|
|
122
138
|
- Upgraded to RSpec 3 [[#16](https://github.com/ManageIQ/more_core_extensions/pull/16)]
|
|
123
139
|
- Added the Change Log!
|
|
124
140
|
|
|
125
|
-
[Unreleased]: https://github.com/ManageIQ/more_core_extensions/compare/v4.
|
|
141
|
+
[Unreleased]: https://github.com/ManageIQ/more_core_extensions/compare/v4.7.0...HEAD
|
|
142
|
+
[4.7.0]: https://github.com/ManageIQ/more_core_extensions/compare/v4.6.0...v4.7.0
|
|
143
|
+
[4.6.0]: https://github.com/ManageIQ/more_core_extensions/compare/v4.5.1...v4.6.0
|
|
126
144
|
[4.5.1]: https://github.com/ManageIQ/more_core_extensions/compare/v4.5.0...v4.5.1
|
|
127
145
|
[4.5.0]: https://github.com/ManageIQ/more_core_extensions/compare/v4.3.1...v4.5.0
|
|
128
146
|
[4.4.0]: https://github.com/ManageIQ/more_core_extensions/compare/v4.3.1...v4.4.0
|
data/Gemfile
CHANGED
|
@@ -7,7 +7,11 @@ require File.join(Bundler::Plugin.index.load_paths("bundler-inject")[0], "bundle
|
|
|
7
7
|
gemspec
|
|
8
8
|
|
|
9
9
|
minimum_version =
|
|
10
|
-
case ENV.fetch("TEST_RAILS_VERSION", "
|
|
10
|
+
case ENV.fetch("TEST_RAILS_VERSION", "8.0")
|
|
11
|
+
when "8.1"
|
|
12
|
+
"~>8.1.2"
|
|
13
|
+
when "8.0"
|
|
14
|
+
"~>8.0.4"
|
|
11
15
|
when "7.2"
|
|
12
16
|
"~>7.2.2"
|
|
13
17
|
when "7.1"
|
|
@@ -16,8 +20,6 @@ minimum_version =
|
|
|
16
20
|
"~>7.0.8"
|
|
17
21
|
when "6.1"
|
|
18
22
|
"~>6.1.7"
|
|
19
|
-
when "6.0"
|
|
20
|
-
"~>6.0.6"
|
|
21
23
|
else
|
|
22
24
|
raise "Unexpected Rails version #{ENV['TEST_RAILS_VERSION'].inspect}"
|
|
23
25
|
end
|
data/README.md
CHANGED
|
@@ -4,7 +4,6 @@ MoreCoreExtensions are a set of core extensions beyond those provided by ActiveS
|
|
|
4
4
|
|
|
5
5
|
[](http://badge.fury.io/rb/more_core_extensions)
|
|
6
6
|
[](https://github.com/ManageIQ/more_core_extensions/actions/workflows/ci.yaml)
|
|
7
|
-
[](https://codeclimate.com/github/ManageIQ/more_core_extensions)
|
|
8
7
|
[](https://coveralls.io/r/ManageIQ/more_core_extensions)
|
|
9
8
|
|
|
10
9
|
[](https://gitter.im/ManageIQ/more_core_extensions?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
|
|
@@ -78,8 +77,6 @@ MoreCoreExtensions are a set of core extensions beyond those provided by ActiveS
|
|
|
78
77
|
|
|
79
78
|
#### Numeric
|
|
80
79
|
|
|
81
|
-
* core_ext/numeric/clamp.rb
|
|
82
|
-
* `#clamp` - Clamp a number to a minimum and/or maximum value
|
|
83
80
|
* core_ext/numeric/math.rb
|
|
84
81
|
* `#square` - Returns the square of a Numeric
|
|
85
82
|
* core_ext/numeric/rounding.rb
|
|
@@ -107,6 +104,9 @@ MoreCoreExtensions are a set of core extensions beyond those provided by ActiveS
|
|
|
107
104
|
|
|
108
105
|
#### String
|
|
109
106
|
|
|
107
|
+
* core_ext/string/constantize_allowlist.rb
|
|
108
|
+
* `#constantize` - Enhanced version with optional `allowlist` parameter to restrict which constants can be resolved
|
|
109
|
+
* `#safe_constantize` - Enhanced version with optional `allowlist` parameter to restrict which constants can be resolved
|
|
110
110
|
* core_ext/string/decimal_suffix.rb
|
|
111
111
|
* `#decimal_si_to_big_decimal` - Returns a BigDecimal based on the number and suffix given
|
|
112
112
|
* `#decimal_si_to_f` - Returns a Float based on the number and suffix given
|
|
@@ -47,5 +47,5 @@ module MoreCoreExtensions
|
|
|
47
47
|
end
|
|
48
48
|
end
|
|
49
49
|
|
|
50
|
-
Array.
|
|
51
|
-
Array.
|
|
50
|
+
Array.extend MoreCoreExtensions::ArrayStretch::ClassMethods
|
|
51
|
+
Array.include MoreCoreExtensions::ArrayStretch
|
|
@@ -16,5 +16,5 @@ module MoreCoreExtensions
|
|
|
16
16
|
end
|
|
17
17
|
end
|
|
18
18
|
|
|
19
|
-
Hash.
|
|
20
|
-
Hash.
|
|
19
|
+
Hash.include MoreCoreExtensions::HashSortBang unless Hash.method_defined?(:sort!)
|
|
20
|
+
Hash.include MoreCoreExtensions::HashSortByBang unless Hash.method_defined?(:sort_by!)
|
|
@@ -97,5 +97,5 @@ module MoreCoreExtensions
|
|
|
97
97
|
end
|
|
98
98
|
end
|
|
99
99
|
|
|
100
|
-
Module.
|
|
101
|
-
Module.
|
|
100
|
+
Module.include MoreCoreExtensions::CacheWithTimeout
|
|
101
|
+
Module.extend MoreCoreExtensions::CacheWithTimeout::ClassMethods
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
require "active_support/core_ext/string/inflections"
|
|
2
|
+
|
|
3
|
+
module MoreCoreExtensions
|
|
4
|
+
module StringConstantizeAllowlist
|
|
5
|
+
def self.allowed?(target, allowlist)
|
|
6
|
+
allowlist = allowlist.map { |o| o.respond_to?(:name) ? o.name : o }
|
|
7
|
+
allowlist.include?(target)
|
|
8
|
+
end
|
|
9
|
+
|
|
10
|
+
def constantize(allowlist: nil)
|
|
11
|
+
if allowlist && !StringConstantizeAllowlist.allowed?(self, allowlist)
|
|
12
|
+
raise NameError, "#{self} not found in allowlist"
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
super()
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
def safe_constantize(allowlist: nil)
|
|
19
|
+
if allowlist && !StringConstantizeAllowlist.allowed?(self, allowlist)
|
|
20
|
+
return nil
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
super()
|
|
24
|
+
end
|
|
25
|
+
end
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
String.prepend MoreCoreExtensions::StringConstantizeAllowlist
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
module MoreCoreExtensions
|
|
2
2
|
module StringFormats
|
|
3
3
|
# From: http://www.regular-expressions.info/email.html
|
|
4
|
-
RE_EMAIL =
|
|
4
|
+
RE_EMAIL = %r{\A[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\z}i
|
|
5
5
|
|
|
6
6
|
def email?
|
|
7
7
|
!!(self =~ RE_EMAIL)
|
|
@@ -47,4 +47,4 @@ module MoreCoreExtensions
|
|
|
47
47
|
end
|
|
48
48
|
end
|
|
49
49
|
|
|
50
|
-
String.
|
|
50
|
+
String.include MoreCoreExtensions::StringFormats
|
|
@@ -81,7 +81,7 @@ module MoreCoreExtensions
|
|
|
81
81
|
end
|
|
82
82
|
end
|
|
83
83
|
|
|
84
|
-
String.
|
|
85
|
-
Numeric.
|
|
86
|
-
NilClass.
|
|
87
|
-
Object.
|
|
84
|
+
String.prepend MoreCoreExtensions::StringToIWithMethod
|
|
85
|
+
Numeric.prepend MoreCoreExtensions::NumericAndNilToIWithMethod
|
|
86
|
+
NilClass.prepend MoreCoreExtensions::NumericAndNilToIWithMethod
|
|
87
|
+
Object.prepend MoreCoreExtensions::ObjectToIWithMethod
|
metadata
CHANGED
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: more_core_extensions
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 4.
|
|
4
|
+
version: 4.7.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Jason Frey
|
|
8
8
|
- Brandon Dunne
|
|
9
|
+
autorequire:
|
|
9
10
|
bindir: exe
|
|
10
11
|
cert_chain: []
|
|
11
|
-
date:
|
|
12
|
+
date: 2026-07-30 00:00:00.000000000 Z
|
|
12
13
|
dependencies:
|
|
13
14
|
- !ruby/object:Gem::Dependency
|
|
14
15
|
name: activesupport
|
|
@@ -24,6 +25,20 @@ dependencies:
|
|
|
24
25
|
- - ">="
|
|
25
26
|
- !ruby/object:Gem::Version
|
|
26
27
|
version: '0'
|
|
28
|
+
- !ruby/object:Gem::Dependency
|
|
29
|
+
name: benchmark
|
|
30
|
+
requirement: !ruby/object:Gem::Requirement
|
|
31
|
+
requirements:
|
|
32
|
+
- - ">="
|
|
33
|
+
- !ruby/object:Gem::Version
|
|
34
|
+
version: '0'
|
|
35
|
+
type: :runtime
|
|
36
|
+
prerelease: false
|
|
37
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
38
|
+
requirements:
|
|
39
|
+
- - ">="
|
|
40
|
+
- !ruby/object:Gem::Version
|
|
41
|
+
version: '0'
|
|
27
42
|
- !ruby/object:Gem::Dependency
|
|
28
43
|
name: sync
|
|
29
44
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -131,12 +146,10 @@ executables: []
|
|
|
131
146
|
extensions: []
|
|
132
147
|
extra_rdoc_files: []
|
|
133
148
|
files:
|
|
134
|
-
- ".codeclimate.yml"
|
|
135
149
|
- ".github/workflows/ci.yaml"
|
|
136
150
|
- ".gitignore"
|
|
137
151
|
- ".rspec"
|
|
138
152
|
- ".rubocop.yml"
|
|
139
|
-
- ".rubocop_cc.yml"
|
|
140
153
|
- ".rubocop_local.yml"
|
|
141
154
|
- ".whitesource"
|
|
142
155
|
- CHANGELOG.md
|
|
@@ -176,7 +189,6 @@ files:
|
|
|
176
189
|
- lib/more_core_extensions/core_ext/module/cache_with_timeout.rb
|
|
177
190
|
- lib/more_core_extensions/core_ext/module/namespace.rb
|
|
178
191
|
- lib/more_core_extensions/core_ext/numeric.rb
|
|
179
|
-
- lib/more_core_extensions/core_ext/numeric/clamp.rb
|
|
180
192
|
- lib/more_core_extensions/core_ext/numeric/math.rb
|
|
181
193
|
- lib/more_core_extensions/core_ext/numeric/rounding.rb
|
|
182
194
|
- lib/more_core_extensions/core_ext/object.rb
|
|
@@ -188,6 +200,7 @@ files:
|
|
|
188
200
|
- lib/more_core_extensions/core_ext/range/step_value.rb
|
|
189
201
|
- lib/more_core_extensions/core_ext/shared/nested.rb
|
|
190
202
|
- lib/more_core_extensions/core_ext/string.rb
|
|
203
|
+
- lib/more_core_extensions/core_ext/string/constantize_allowlist.rb
|
|
191
204
|
- lib/more_core_extensions/core_ext/string/decimal_suffix.rb
|
|
192
205
|
- lib/more_core_extensions/core_ext/string/formats.rb
|
|
193
206
|
- lib/more_core_extensions/core_ext/string/hex_dump.rb
|
|
@@ -202,6 +215,7 @@ homepage: http://github.com/ManageIQ/more_core_extensions
|
|
|
202
215
|
licenses:
|
|
203
216
|
- MIT
|
|
204
217
|
metadata: {}
|
|
218
|
+
post_install_message:
|
|
205
219
|
rdoc_options: []
|
|
206
220
|
require_paths:
|
|
207
221
|
- lib
|
|
@@ -216,7 +230,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
216
230
|
- !ruby/object:Gem::Version
|
|
217
231
|
version: '0'
|
|
218
232
|
requirements: []
|
|
219
|
-
rubygems_version: 3.
|
|
233
|
+
rubygems_version: 3.5.22
|
|
234
|
+
signing_key:
|
|
220
235
|
specification_version: 4
|
|
221
236
|
summary: MoreCoreExtensions are a set of core extensions beyond those provided by
|
|
222
237
|
ActiveSupport.
|
data/.codeclimate.yml
DELETED
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
prepare:
|
|
2
|
-
fetch:
|
|
3
|
-
- url: https://raw.githubusercontent.com/ManageIQ/manageiq-style/master/.rubocop_base.yml
|
|
4
|
-
path: ".rubocop_base.yml"
|
|
5
|
-
- url: https://raw.githubusercontent.com/ManageIQ/manageiq-style/master/.rubocop_cc_base.yml
|
|
6
|
-
path: ".rubocop_cc_base.yml"
|
|
7
|
-
- url: https://raw.githubusercontent.com/ManageIQ/manageiq-style/master/styles/base.yml
|
|
8
|
-
path: styles/base.yml
|
|
9
|
-
- url: https://raw.githubusercontent.com/ManageIQ/manageiq-style/master/styles/cc_base.yml
|
|
10
|
-
path: styles/cc_base.yml
|
|
11
|
-
plugins:
|
|
12
|
-
rubocop:
|
|
13
|
-
enabled: true
|
|
14
|
-
config: ".rubocop_cc.yml"
|
|
15
|
-
channel: rubocop-1-56-3
|
|
16
|
-
version: '2'
|
data/.rubocop_cc.yml
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
module MoreCoreExtensions
|
|
2
|
-
module NumericClamp
|
|
3
|
-
#
|
|
4
|
-
# Clamp a number to a minimum and/or maximum value.
|
|
5
|
-
#
|
|
6
|
-
# 8.clamp(nil, nil) #=> 8
|
|
7
|
-
# 8.clamp(9, nil) #=> 9
|
|
8
|
-
# 8.clamp(nil, 6) #=> 6
|
|
9
|
-
def clamp(min, max)
|
|
10
|
-
value = self
|
|
11
|
-
value = [value, min].max if min
|
|
12
|
-
value = [value, max].min if max
|
|
13
|
-
value
|
|
14
|
-
end
|
|
15
|
-
end
|
|
16
|
-
end
|
|
17
|
-
|
|
18
|
-
Numeric.send(:prepend, MoreCoreExtensions::NumericClamp)
|