deco_lite 1.5.12 → 1.5.14

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: 7ba43519d2e7d261c3ad1435d19a24d297b335a3153b14cf9f0d78da501fcc43
4
- data.tar.gz: f21265ca49e71c2f105254bb47476b38732e1959c3353d924d485a860155e461
3
+ metadata.gz: 900cbdd181c7ded022def3d632bcfbd9ffef884b4448032be1fad87ba8c4906f
4
+ data.tar.gz: 184befad8f046c2b091d4154dd6034dd9a581ff5a117ed1149e5c7d11b527c97
5
5
  SHA512:
6
- metadata.gz: d2f50e57a1fb82ac614aadb90cda2a1b6cd4381c3c8b9408025ffba83ec7bd63427918f2cf714258237cdf84fe7403805d65d1a7c0ef2ef90e54c44976d2f770
7
- data.tar.gz: ef1e2258043ab008cf3c5cb2eec5a4f09c2f460bec64401117da4bc0d9a73557d900fa1bcf6d0e0b96f3fda253065b397e7464f17f610c0deb78524b343d3c5a
6
+ metadata.gz: 1b013d8e738ca16cb99e9c56b1d20f8f7eaf0b42ab5134b17d5d5c56c128e59be864ab00aecaa3ae7e49f1ed8c7ea0d1cc5fb6a1cb9f48f803cec8e546005910
7
+ data.tar.gz: 0f711eddb8df356ba8022509d35db713b82499baf77281fedf292288eccd30d29ff2aa0016edd382c34c744154313fb0822b946c9c039d79c4c6722234333469
@@ -1,40 +1,60 @@
1
- # This workflow uses actions that are not certified by GitHub.
2
- # They are provided by a third-party and are governed by
3
- # separate terms of service, privacy policy, and support
4
- # documentation.
5
- # This workflow will download a prebuilt Ruby version, install dependencies and run tests with Rake
6
- # For more information see: https://github.com/marketplace/actions/setup-ruby-jruby-and-truffleruby
7
-
8
1
  name: Ruby
9
2
 
10
3
  on:
11
4
  push:
12
- branches: [ "main" ]
5
+ branches: ["main"]
13
6
  pull_request:
14
- branches: [ "main" ]
7
+ branches: ["main"]
15
8
 
16
9
  permissions:
17
10
  contents: read
18
11
 
19
12
  jobs:
20
13
  test:
21
-
22
- runs-on: ubuntu-latest
14
+ runs-on: ${{ matrix.os }}
23
15
  strategy:
24
16
  matrix:
25
- # Use `rbenv install -l` and only use the latest stable
26
- # version of ruby.
27
- ruby-version: ["3.1.2", "3.1.4", "3.2.2"]
17
+ os:
18
+ [
19
+ ubuntu-latest,
20
+ ubuntu-20.04,
21
+ macos-latest,
22
+ macos-13,
23
+ macos-12,
24
+ windows-latest,
25
+ windows-2019,
26
+ ]
27
+ ruby: ["3.1", "3.2", "3.3"]
28
28
 
29
29
  steps:
30
- - uses: actions/checkout@v3
31
- - name: Set up Ruby
32
- # To automatically get bug fixes and new Ruby versions for ruby/setup-ruby,
33
- # change this to (see https://github.com/ruby/setup-ruby#versioning):
34
- # uses: ruby/setup-ruby@v1
35
- uses: ruby/setup-ruby@55283cc23133118229fd3f97f9336ee23a179fcf # v1.146.0
36
- with:
37
- ruby-version: ${{ matrix.ruby-version }}
38
- bundler-cache: true # runs 'bundle install' and caches installed gems automatically
39
- - name: Run tests
40
- run: bundle exec rake
30
+ - uses: actions/checkout@v3
31
+
32
+ - name: Set timezone on Linux
33
+ if: contains(matrix.os, 'ubuntu')
34
+ run: sudo timedatectl set-timezone 'America/New_York'
35
+
36
+ - name: Set timezone on macOS
37
+ if: contains(matrix.os, 'macos')
38
+ run: sudo systemsetup -settimezone America/New_York
39
+
40
+ - name: Set timezone on Windows
41
+ if: contains(matrix.os, 'windows')
42
+ run: tzutil /s "Eastern Standard Time"
43
+
44
+ - name: Set up Ruby
45
+ uses: ruby/setup-ruby@v1
46
+ with:
47
+ ruby-version: ${{ matrix.ruby }}
48
+ bundler-cache: true
49
+
50
+ - name: Update RubyGems
51
+ run: gem update --system
52
+
53
+ - name: Disable bundler frozen setting
54
+ run: bundle config set frozen false
55
+
56
+ - name: Install dependencies
57
+ run: bundle install
58
+
59
+ - name: Run tests
60
+ run: bundle exec rake
data/.rubocop.yml CHANGED
@@ -1,19 +1,21 @@
1
1
  require:
2
2
  - rubocop-performance
3
+ - rubocop-rake
3
4
  - rubocop-rspec
4
5
 
5
6
  AllCops:
7
+ SuggestExtensions: false
6
8
  TargetRubyVersion: 3.1.2
7
9
  NewCops: enable
8
10
  Exclude:
9
- - '.git/**/*'
10
- - '.idea/**/*'
11
- - 'init/*'
12
- - 'Rakefile'
13
- - '*.gemspec'
14
- - 'spec/**/*'
15
- - 'vendor/**/*'
16
- - 'scratch*.rb'
11
+ - ".git/**/*"
12
+ - ".idea/**/*"
13
+ - "init/*"
14
+ - "Rakefile"
15
+ - "*.gemspec"
16
+ - "spec/**/*"
17
+ - "vendor/**/*"
18
+ - "scratch*.rb"
17
19
 
18
20
  # Align the elements of a hash literal if they span more than one line.
19
21
  Layout/HashAlignment:
@@ -78,7 +80,7 @@ Layout/MultilineMethodCallIndentation:
78
80
  # Allow `debug` in tasks for now
79
81
  Lint/Debugger:
80
82
  Exclude:
81
- - 'RakeFile'
83
+ - "RakeFile"
82
84
 
83
85
  # A calculated magnitude based on number of assignments, branches, and
84
86
  # conditions.
@@ -90,9 +92,9 @@ Metrics/AbcSize:
90
92
  # Avoid long blocks with many lines.
91
93
  Metrics/BlockLength:
92
94
  Exclude:
93
- - 'RakeFile'
94
- - 'db/seeds.rb'
95
- - 'spec/**/*.rb'
95
+ - "RakeFile"
96
+ - "db/seeds.rb"
97
+ - "spec/**/*.rb"
96
98
 
97
99
  # Avoid classes longer than 100 lines of code.
98
100
  # NOTE: This is temporarily disabled until we can eliminate existing Rubocop
@@ -100,7 +102,7 @@ Metrics/BlockLength:
100
102
  Metrics/ClassLength:
101
103
  Max: 200
102
104
  Exclude:
103
- - 'spec/**/*.rb'
105
+ - "spec/**/*.rb"
104
106
 
105
107
  # A complexity metric that is strongly correlated to the number of test cases
106
108
  # needed to validate a method.
@@ -110,8 +112,8 @@ Metrics/CyclomaticComplexity:
110
112
  # Limit lines to 80 characters
111
113
  Layout/LineLength:
112
114
  Exclude:
113
- - 'RakeFile'
114
- - 'spec/**/*.rb'
115
+ - "RakeFile"
116
+ - "spec/**/*.rb"
115
117
 
116
118
  # Avoid methods longer than 15 lines of code.
117
119
  Metrics/MethodLength:
@@ -120,7 +122,6 @@ Metrics/MethodLength:
120
122
  - swagger_path
121
123
  - operation
122
124
 
123
-
124
125
  # A complexity metric geared towards measuring complexity for a human reader.
125
126
  Metrics/PerceivedComplexity:
126
127
  Max: 10
@@ -157,7 +158,7 @@ Style/GuardClause:
157
158
 
158
159
  Style/MixinUsage:
159
160
  Exclude:
160
- - 'RakeFile'
161
+ - "RakeFile"
161
162
 
162
163
  # Avoid multi-line method signatures.
163
164
  Style/MultilineMethodSignature:
data/CHANGELOG.md CHANGED
@@ -1,154 +1,187 @@
1
+ ### 1.5.14 2024-08-09
2
+
3
+ - Changes
4
+ - Update ruby gems
5
+ - Update rexml gem to patch CVE
6
+
7
+ ### 1.5.13 2024-02-19
8
+
9
+ - Changes
10
+ - Update post install message.
11
+ - Update ruby gems
12
+
1
13
  ### 1.5.12 2024-02-08
2
14
 
3
- * Changes
4
- * Update ruby gems
15
+ - Changes
16
+ - Update ruby gems
5
17
 
6
18
  ### 1.5.11 2024-01-21
7
19
 
8
- * Changes
9
- * Update ruby gems
20
+ - Changes
21
+ - Update ruby gems
10
22
 
11
23
  ### 1.5.10 2024-01-07
12
24
 
13
- * Changes
14
- * Update ruby gems
15
- * Relax ruby version requirement to Gem::Requirement.new('>= 3.0.1', '< 4.0')
25
+ - Changes
26
+ - Update ruby gems
27
+ - Relax ruby version requirement to Gem::Requirement.new('>= 3.0.1', '< 4.0')
16
28
 
17
29
  ### 1.5.9 2023-12-27
18
30
 
19
- * Changes
20
- * Update ruby gems
31
+ - Changes
32
+ - Update ruby gems
21
33
 
22
34
  ### 1.5.8 2023-12-02
23
35
 
24
- * Changes
25
- * Update ruby gems
36
+ - Changes
37
+ - Update ruby gems
26
38
 
27
39
  ### 1.5.7 2023-10-30
28
40
 
29
- * Changes
30
- * Update ruby gems
41
+ - Changes
42
+ - Update ruby gems
31
43
 
32
44
  ### 1.5.6 2023-10-30
33
45
 
34
- * Changes
35
- * Update ruby gems
46
+ - Changes
47
+ - Update ruby gems
36
48
 
37
49
  ### 1.5.5
38
50
 
39
- * Changes
40
- * Update ruby gems
41
- * Fix rubocop violations
51
+ - Changes
52
+ - Update ruby gems
53
+ - Fix rubocop violations
42
54
 
43
55
  ### 1.5.4
44
56
 
45
- * Changes
46
- * Update ruby gems
57
+ - Changes
58
+ - Update ruby gems
47
59
 
48
60
  ### 1.5.3
49
- * Bugs
50
- * Fix bug that raised an exception when using `validates_with <Custom Validator>` because `#attributes` is not found on custom validators.
51
- * Changes
52
- * You can now use `validates_with <Custom Validator>` by passing the attribute name(s) to your custom validator via the `#options` hash with a key of `:attributes` OR `:fields`. For example: `validates_with MyCustomValidator, attributes: %i[field1 field2]` of `validates_with MyCustomValidator, fields: %i[field1 field2]`
53
- * Updated README.md for the above change.
54
- * Update bundled gems.
61
+
62
+ - Bugs
63
+ - Fix bug that raised an exception when using `validates_with <Custom Validator>` because `#attributes` is not found on custom validators.
64
+ - Changes
65
+ - You can now use `validates_with <Custom Validator>` by passing the attribute name(s) to your custom validator via the `#options` hash with a key of `:attributes` OR `:fields`. For example: `validates_with MyCustomValidator, attributes: %i[field1 field2]` of `validates_with MyCustomValidator, fields: %i[field1 field2]`
66
+ - Updated README.md for the above change.
67
+ - Update bundled gems.
68
+
55
69
  ### 1.5.2
56
- * Changes
57
- * Update ruby gems. Remedy activesupport dependabot alert.
70
+
71
+ - Changes
72
+ - Update ruby gems. Remedy activesupport dependabot alert.
58
73
 
59
74
  ### 1.5.1
60
- * Changes
61
- * Update ruby gems.
75
+
76
+ - Changes
77
+ - Update ruby gems.
62
78
 
63
79
  ### 1.5.0
64
- * Changes
65
- * Update ruby gems.
80
+
81
+ - Changes
82
+ - Update ruby gems.
66
83
 
67
84
  ### 1.4.0
68
- * Changes
69
- * Required ruby version is now '~> 3.0'
70
- * Prohibit SimpleCov from starting 2x in spec_helper.rb.
85
+
86
+ - Changes
87
+ - Required ruby version is now '~> 3.0'
88
+ - Prohibit SimpleCov from starting 2x in spec_helper.rb.
71
89
 
72
90
  ### 1.3.0
73
- * Changes
74
- * Update gem description in .gemspec.
91
+
92
+ - Changes
93
+ - Update gem description in .gemspec.
75
94
 
76
95
  ### 1.2.1
77
- * Bugs
78
- * Fix bug that did not recognize loaded field values if `attr_accessors` were previously created for the loaded fields due to model validations being present. If `ActiveModel` validators are present on the model, DecoLite will automatically create `attr_accessors` for the fields associated with the validations. The presence of these fields being automatically loaded prohibited any fields subsequently loaded having the same field names to not be recognized as having been loaded, causing validation to validate incorrectly (the model did not recognize the fields as having been loaded).
79
- * Fix bug that wiped out field values previously loaded if `ActiveModel` validations were present for fields having the same name. This is because DecoLite will automatically create `attr_accessors` for the fields associated with the validations, initializing these automatically created field vars to be initialized to nil. The auto-creation of these `attr_accessors` was taking place in #initialize AFTER the initial load of any Hash passed to #initialize in the :hash param, so the values loaded were getting nilled out.
80
- * Changes
81
- * Add specs to test the above scenarios.
96
+
97
+ - Bugs
98
+ - Fix bug that did not recognize loaded field values if `attr_accessors` were previously created for the loaded fields due to model validations being present. If `ActiveModel` validators are present on the model, DecoLite will automatically create `attr_accessors` for the fields associated with the validations. The presence of these fields being automatically loaded prohibited any fields subsequently loaded having the same field names to not be recognized as having been loaded, causing validation to validate incorrectly (the model did not recognize the fields as having been loaded).
99
+ - Fix bug that wiped out field values previously loaded if `ActiveModel` validations were present for fields having the same name. This is because DecoLite will automatically create `attr_accessors` for the fields associated with the validations, initializing these automatically created field vars to be initialized to nil. The auto-creation of these `attr_accessors` was taking place in #initialize AFTER the initial load of any Hash passed to #initialize in the :hash param, so the values loaded were getting nilled out.
100
+ - Changes
101
+ - Add specs to test the above scenarios.
82
102
 
83
103
  ### 1.2.0
84
- * Changes
85
- * Update the README.md file with better explainations and examples.
104
+
105
+ - Changes
106
+ - Update the README.md file with better explainations and examples.
86
107
 
87
108
  ### 1.1.0
88
- * Changes
89
- * Update mad_flatter gem to v2.0.0.
109
+
110
+ - Changes
111
+ - Update mad_flatter gem to v2.0.0.
90
112
 
91
113
  ### 1.0.0
92
- * Breaking changes
93
- * Removed `FieldRequireable` and moved this code to the `Model` class because determination of required fields loaded is now determined in the `Model` class, rather than checking the existance of model attributes.
94
- * Removed `RequiredFieldsOptionable` since determination of whether or not required fields were loaded no longer depends on the existance of model attributes, this option was removed. `Model#required_fields` model attributes can now be created unconditionally, and still determine whether or not reqired fields were loaded or not.
95
- * Since `FieldRequireable` has been removed, along with `#required_fields`, the `Model#required_fields` can now be overridden or manipulated to designate required fields. Required fields will cause validtion to fail if those fields are not loaded into the model like before.
96
- * The reason for the aforementioned changes is that the whole paradigm to validate "required fields" (i.e. fields required when loading a Hash) based on model attributes introduced complexity/awkwardness in using the `DecoLite::Model` class, as well as complexity in the `DecoLite` codebase. These changes makes things simpler and cleaner.
97
- * Remove deprecated `DecoLite::Model#load`. Use `DecoLite::Model#load!` instead.
98
- * Changes
99
- * Update README.md file accordingly.
114
+
115
+ - Breaking changes
116
+ - Removed `FieldRequireable` and moved this code to the `Model` class because determination of required fields loaded is now determined in the `Model` class, rather than checking the existance of model attributes.
117
+ - Removed `RequiredFieldsOptionable` since determination of whether or not required fields were loaded no longer depends on the existance of model attributes, this option was removed. `Model#required_fields` model attributes can now be created unconditionally, and still determine whether or not reqired fields were loaded or not.
118
+ - Since `FieldRequireable` has been removed, along with `#required_fields`, the `Model#required_fields` can now be overridden or manipulated to designate required fields. Required fields will cause validtion to fail if those fields are not loaded into the model like before.
119
+ - The reason for the aforementioned changes is that the whole paradigm to validate "required fields" (i.e. fields required when loading a Hash) based on model attributes introduced complexity/awkwardness in using the `DecoLite::Model` class, as well as complexity in the `DecoLite` codebase. These changes makes things simpler and cleaner.
120
+ - Remove deprecated `DecoLite::Model#load`. Use `DecoLite::Model#load!` instead.
121
+ - Changes
122
+ - Update README.md file accordingly.
100
123
 
101
124
  ### 0.3.2
102
- * Changes
103
- * Refactor FieldAssignable to remove call to FieldCreatable#create_field_accessor as this breaks single responsibility rule; which, in this case, makes sense to remove. FieldCreatable#create_field_accessor can be called wherever creation of a attr_accessor is needed.
104
- * Refactor specs in keeping with above changes.
105
- * README.md changes.
106
- * Bugs
107
- * Fix bug where loading fields with the options: { fields: :strict } option raises an error for field that already exists.
125
+
126
+ - Changes
127
+ - Refactor FieldAssignable to remove call to FieldCreatable#create_field_accessor as this breaks single responsibility rule; which, in this case, makes sense to remove. FieldCreatable#create_field_accessor can be called wherever creation of a attr_accessor is needed.
128
+ - Refactor specs in keeping with above changes.
129
+ - README.md changes.
130
+ - Bugs
131
+ - Fix bug where loading fields with the options: { fields: :strict } option raises an error for field that already exists.
108
132
 
109
133
  ### 0.3.1
110
- * Changes
111
- * Added `DecoLite::FieldRequireable::MISSING_REQUIRED_FIELD_ERROR_TYPE` for required field type errors.
112
- * Update README.md with more examples.
134
+
135
+ - Changes
136
+ - Added `DecoLite::FieldRequireable::MISSING_REQUIRED_FIELD_ERROR_TYPE` for required field type errors.
137
+ - Update README.md with more examples.
113
138
 
114
139
  ### 0.3.0
115
- * Changes
116
- * `DecoLite::Model#new` how accepts a :hash named parameter that will load the Hash as if calling `DecoLite::Model.new.load!(hash: <hash>)`.
117
- * `DecoLite::Model#new now creates attr_accessors (fields) for any attribute that has an ActiveModel validator associated with it. This prevents errors raised when #validate is called before data is #load!ed.
118
- * `DecoLite::Model#new` now creates attr_accessors (fields) for any field returned from `DecoLite::Model#reqired_fields` IF the required_fields: :auto option is set.
119
- * bin/console now starts a pry-byebug session.
140
+
141
+ - Changes
142
+ - `DecoLite::Model#new` how accepts a :hash named parameter that will load the Hash as if calling `DecoLite::Model.new.load!(hash: <hash>)`.
143
+ - `DecoLite::Model#new now creates attr_accessors (fields) for any attribute that has an ActiveModel validator associated with it. This prevents errors raised when #validate is called before data is #load!ed.
144
+ - `DecoLite::Model#new` now creates attr_accessors (fields) for any field returned from `DecoLite::Model#reqired_fields` IF the required_fields: :auto option is set.
145
+ - bin/console now starts a pry-byebug session.
120
146
 
121
147
  ### 0.2.5
122
- * Changes
123
- * Remove init of `@field_names = []` in `Model#initialize` as unnecessary - FieldNamesPersistable takes care of this.
124
- * Bug fixes
125
- * Fix but that does not take into account option :namespace when determining whether or not a field name conflicts with an existing attribute (already exists).
148
+
149
+ - Changes
150
+ - Remove init of `@field_names = []` in `Model#initialize` as unnecessary - FieldNamesPersistable takes care of this.
151
+ - Bug fixes
152
+ - Fix but that does not take into account option :namespace when determining whether or not a field name conflicts with an existing attribute (already exists).
126
153
 
127
154
  ### 0.2.4
128
- * Changes
129
- * Change DecoLite::Model#load to #load! as it alters the object, give deprecation warning when calling #load.
130
- * FieldConflictable now expliticly prohibits loading fields that conflict with attributes that are native to the receiver. In other words, you cannot load fields with names like :to_s, :tap, :hash, etc.
131
- * FieldCreatable now creates attr_accessors on the instance using #define_singleton_method, not at the class level (i.e. self.class.attr_accessor) (see bug fixes).
132
- * Bug fixes
133
- * Fix bug that used self.class.attr_accessor in DecoLite::FieldCreatable to create attributes, which forced every object of that class subsequently created have the accessors created which caused field name conflicts across DecoLite::Model objects.
155
+
156
+ - Changes
157
+ - Change DecoLite::Model#load to #load! as it alters the object, give deprecation warning when calling #load.
158
+ - FieldConflictable now expliticly prohibits loading fields that conflict with attributes that are native to the receiver. In other words, you cannot load fields with names like :to_s, :tap, :hash, etc.
159
+ - FieldCreatable now creates attr_accessors on the instance using #define_singleton_method, not at the class level (i.e. self.class.attr_accessor) (see bug fixes).
160
+ - Bug fixes
161
+ - Fix bug that used self.class.attr_accessor in DecoLite::FieldCreatable to create attributes, which forced every object of that class subsequently created have the accessors created which caused field name conflicts across DecoLite::Model objects.
134
162
 
135
163
  ### 0.2.3
136
- * Bug fixes
137
- * Fix bug that added duplcate field names to Model#field_names.
164
+
165
+ - Bug fixes
166
+ - Fix bug that added duplcate field names to Model#field_names.
138
167
 
139
168
  ### 0.2.2
140
- * Bug fixes
141
- * Fix bug requiring support codez in lib/deco_lite.rb.
169
+
170
+ - Bug fixes
171
+ - Fix bug requiring support codez in lib/deco_lite.rb.
142
172
 
143
173
  ### 0.2.1
144
- * Changes
145
- * Add mad_flatter gem runtime dependency.
146
- * Refactor to let mad_flatter handle the Hash flattening.
174
+
175
+ - Changes
176
+ - Add mad_flatter gem runtime dependency.
177
+ - Refactor to let mad_flatter handle the Hash flattening.
147
178
 
148
179
  ### 0.1.1
149
- * Changes
150
- * Update gems and especially rake gem version to squash CVE-2020-8130, see https://github.com/advisories/GHSA-jppv-gw3r-w3q8.
151
- * Fix rubocop violations.
180
+
181
+ - Changes
182
+ - Update gems and especially rake gem version to squash CVE-2020-8130, see https://github.com/advisories/GHSA-jppv-gw3r-w3q8.
183
+ - Fix rubocop violations.
152
184
 
153
185
  ### 0.1.0
154
- * Initial commit
186
+
187
+ - Initial commit
data/Gemfile CHANGED
@@ -6,3 +6,23 @@ git_source(:github) { |repo_name| "https://github.com/#{repo_name}" }
6
6
 
7
7
  # Specify your gem's dependencies in deco_lite.gemspec
8
8
  gemspec
9
+
10
+ gem 'bundler', '>= 2.5', '< 3.0'
11
+ gem 'rake', '>= 13.0', '< 14.0'
12
+
13
+ group :development do
14
+ gem 'reek', '>= 6.1', '< 7.0'
15
+ gem 'rubocop', '>= 1.65', '< 2.0'
16
+ gem 'rubocop-performance', '>= 1.21', '< 2.0'
17
+ gem 'rubocop-rake', '>= 0.6', '< 1.0'
18
+ gem 'rubocop-rspec', '>= 3.0.4', '< 4.0'
19
+ end
20
+
21
+ group :test do
22
+ gem 'rspec', '>= 3.12', '< 4.0'
23
+ gem 'simplecov', '>= 0.22.0', '< 1.0'
24
+ end
25
+
26
+ group :development, :test do
27
+ gem 'pry-byebug', '>= 3.9', '< 4.0'
28
+ end
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- deco_lite (1.5.12)
4
+ deco_lite (1.5.14)
5
5
  activemodel (>= 7.0.8, <= 7.12.0)
6
6
  activesupport (>= 7.0.8, <= 7.12.0)
7
7
  immutable_struct_ex (>= 1.0, < 2.0)
@@ -10,9 +10,9 @@ PATH
10
10
  GEM
11
11
  remote: https://rubygems.org/
12
12
  specs:
13
- activemodel (7.1.3)
14
- activesupport (= 7.1.3)
15
- activesupport (7.1.3)
13
+ activemodel (7.1.3.4)
14
+ activesupport (= 7.1.3.4)
15
+ activesupport (7.1.3.4)
16
16
  base64
17
17
  bigdecimal
18
18
  concurrent-ruby (~> 1.0, >= 1.0.2)
@@ -24,28 +24,27 @@ GEM
24
24
  tzinfo (~> 2.0)
25
25
  ast (2.4.2)
26
26
  base64 (0.2.0)
27
- bigdecimal (3.1.6)
27
+ bigdecimal (3.1.8)
28
28
  byebug (11.1.3)
29
29
  coderay (1.1.3)
30
- concurrent-ruby (1.2.3)
30
+ concurrent-ruby (1.3.3)
31
31
  connection_pool (2.4.1)
32
32
  diff-lcs (1.5.1)
33
- docile (1.4.0)
34
- drb (2.2.0)
35
- ruby2_keywords
36
- dry-configurable (1.1.0)
33
+ docile (1.4.1)
34
+ drb (2.2.1)
35
+ dry-configurable (1.2.0)
37
36
  dry-core (~> 1.0, < 2)
38
37
  zeitwerk (~> 2.6)
39
38
  dry-core (1.0.1)
40
39
  concurrent-ruby (~> 1.0)
41
40
  zeitwerk (~> 2.6)
42
- dry-inflector (1.0.0)
41
+ dry-inflector (1.1.0)
43
42
  dry-initializer (3.1.1)
44
43
  dry-logic (1.5.0)
45
44
  concurrent-ruby (~> 1.0)
46
45
  dry-core (~> 1.0, < 2)
47
46
  zeitwerk (~> 2.6)
48
- dry-schema (1.13.3)
47
+ dry-schema (1.13.4)
49
48
  concurrent-ruby (~> 1.0)
50
49
  dry-configurable (~> 1.0, >= 1.0.1)
51
50
  dry-core (~> 1.0, < 2)
@@ -60,19 +59,19 @@ GEM
60
59
  dry-inflector (~> 1.0)
61
60
  dry-logic (~> 1.4)
62
61
  zeitwerk (~> 2.6)
63
- i18n (1.14.1)
62
+ i18n (1.14.5)
64
63
  concurrent-ruby (~> 1.0)
65
- immutable_struct_ex (1.0.8)
66
- json (2.7.1)
64
+ immutable_struct_ex (1.0.11)
65
+ json (2.7.2)
67
66
  language_server-protocol (3.17.0.3)
68
- mad_flatter (3.0.6)
67
+ mad_flatter (3.0.8)
69
68
  activesupport (>= 7.0.8, < 7.2.0)
70
69
  immutable_struct_ex (>= 1.0, < 2.0)
71
- method_source (1.0.0)
72
- minitest (5.22.2)
70
+ method_source (1.1.0)
71
+ minitest (5.24.1)
73
72
  mutex_m (0.2.0)
74
- parallel (1.24.0)
75
- parser (3.3.0.5)
73
+ parallel (1.26.1)
74
+ parser (3.3.4.2)
76
75
  ast (~> 2.4.1)
77
76
  racc
78
77
  pry (0.14.2)
@@ -81,82 +80,85 @@ GEM
81
80
  pry-byebug (3.10.1)
82
81
  byebug (~> 11.0)
83
82
  pry (>= 0.13, < 0.15)
84
- racc (1.7.3)
83
+ racc (1.8.1)
85
84
  rainbow (3.1.1)
86
- rake (13.1.0)
85
+ rake (13.2.1)
87
86
  reek (6.3.0)
88
87
  dry-schema (~> 1.13.0)
89
88
  parser (~> 3.3.0)
90
89
  rainbow (>= 2.0, < 4.0)
91
90
  rexml (~> 3.1)
92
- regexp_parser (2.9.0)
93
- rexml (3.2.6)
91
+ regexp_parser (2.9.2)
92
+ rexml (3.3.4)
93
+ strscan
94
94
  rspec (3.13.0)
95
95
  rspec-core (~> 3.13.0)
96
96
  rspec-expectations (~> 3.13.0)
97
97
  rspec-mocks (~> 3.13.0)
98
98
  rspec-core (3.13.0)
99
99
  rspec-support (~> 3.13.0)
100
- rspec-expectations (3.13.0)
100
+ rspec-expectations (3.13.1)
101
101
  diff-lcs (>= 1.2.0, < 2.0)
102
102
  rspec-support (~> 3.13.0)
103
- rspec-mocks (3.13.0)
103
+ rspec-mocks (3.13.1)
104
104
  diff-lcs (>= 1.2.0, < 2.0)
105
105
  rspec-support (~> 3.13.0)
106
- rspec-support (3.13.0)
107
- rubocop (1.60.2)
106
+ rspec-support (3.13.1)
107
+ rubocop (1.65.1)
108
108
  json (~> 2.3)
109
109
  language_server-protocol (>= 3.17.0)
110
110
  parallel (~> 1.10)
111
111
  parser (>= 3.3.0.2)
112
112
  rainbow (>= 2.2.2, < 4.0)
113
- regexp_parser (>= 1.8, < 3.0)
113
+ regexp_parser (>= 2.4, < 3.0)
114
114
  rexml (>= 3.2.5, < 4.0)
115
- rubocop-ast (>= 1.30.0, < 2.0)
115
+ rubocop-ast (>= 1.31.1, < 2.0)
116
116
  ruby-progressbar (~> 1.7)
117
117
  unicode-display_width (>= 2.4.0, < 3.0)
118
- rubocop-ast (1.30.0)
119
- parser (>= 3.2.1.0)
120
- rubocop-capybara (2.20.0)
121
- rubocop (~> 1.41)
122
- rubocop-factory_bot (2.25.1)
123
- rubocop (~> 1.41)
124
- rubocop-performance (1.20.2)
118
+ rubocop-ast (1.32.0)
119
+ parser (>= 3.3.1.0)
120
+ rubocop-performance (1.21.1)
125
121
  rubocop (>= 1.48.1, < 2.0)
126
- rubocop-ast (>= 1.30.0, < 2.0)
127
- rubocop-rspec (2.26.1)
128
- rubocop (~> 1.40)
129
- rubocop-capybara (~> 2.17)
130
- rubocop-factory_bot (~> 2.22)
122
+ rubocop-ast (>= 1.31.1, < 2.0)
123
+ rubocop-rake (0.6.0)
124
+ rubocop (~> 1.0)
125
+ rubocop-rspec (3.0.4)
126
+ rubocop (~> 1.61)
131
127
  ruby-progressbar (1.13.0)
132
- ruby2_keywords (0.0.5)
133
128
  simplecov (0.22.0)
134
129
  docile (~> 1.1)
135
130
  simplecov-html (~> 0.11)
136
131
  simplecov_json_formatter (~> 0.1)
137
132
  simplecov-html (0.12.3)
138
133
  simplecov_json_formatter (0.1.4)
134
+ strscan (3.1.0)
139
135
  tzinfo (2.0.6)
140
136
  concurrent-ruby (~> 1.0)
141
137
  unicode-display_width (2.5.0)
142
- zeitwerk (2.6.13)
138
+ zeitwerk (2.6.17)
143
139
 
144
140
  PLATFORMS
141
+ arm64-darwin-22
142
+ arm64-darwin-23
143
+ x64-mingw-ucrt
144
+ x64-mingw32
145
145
  x86_64-darwin-19
146
+ x86_64-darwin-20
146
147
  x86_64-darwin-21
147
148
  x86_64-linux
148
149
 
149
150
  DEPENDENCIES
150
- bundler (>= 2.2, < 3.0)
151
+ bundler (>= 2.5, < 3.0)
151
152
  deco_lite!
152
153
  pry-byebug (>= 3.9, < 4.0)
153
154
  rake (>= 13.0, < 14.0)
154
155
  reek (>= 6.1, < 7.0)
155
- rspec (>= 3.10, < 4.0)
156
- rubocop (>= 1.35, < 2.0)
157
- rubocop-performance (>= 1.14, < 2.0)
158
- rubocop-rspec (>= 2.12, < 3.0)
156
+ rspec (>= 3.12, < 4.0)
157
+ rubocop (>= 1.65, < 2.0)
158
+ rubocop-performance (>= 1.21, < 2.0)
159
+ rubocop-rake (>= 0.6, < 1.0)
160
+ rubocop-rspec (>= 3.0.4, < 4.0)
159
161
  simplecov (>= 0.22.0, < 1.0)
160
162
 
161
163
  BUNDLED WITH
162
- 2.3.22
164
+ 2.5.6
data/README.md CHANGED
@@ -1,7 +1,7 @@
1
1
  # DecoLite
2
2
  [![Ruby](https://github.com/gangelo/deco_lite/actions/workflows/ruby.yml/badge.svg)](https://github.com/gangelo/deco_lite/actions/workflows/ruby.yml)
3
- [![GitHub version](http://badge.fury.io/gh/gangelo%2Fdeco_lite.svg?refresh=5)](https://badge.fury.io/gh/gangelo%2Fdeco_lite)
4
- [![Gem Version](https://badge.fury.io/rb/deco_lite.svg?refresh=5)](https://badge.fury.io/rb/deco_lite)
3
+ [![GitHub version](http://badge.fury.io/gh/gangelo%2Fdeco_lite.svg?refresh=6)](https://badge.fury.io/gh/gangelo%2Fdeco_lite)
4
+ [![Gem Version](https://badge.fury.io/rb/deco_lite.svg?refresh=6)](https://badge.fury.io/rb/deco_lite)
5
5
  [![](http://ruby-gem-downloads-badge.herokuapp.com/deco_lite?type=total)](http://www.rubydoc.info/gems/deco_lite/)
6
6
  [![Documentation](http://img.shields.io/badge/docs-rdoc.info-blue.svg)](http://www.rubydoc.info/gems/deco_lite/)
7
7
  [![Report Issues](https://img.shields.io/badge/report-issues-red.svg)](https://github.com/gangelo/deco_lite/issues)
data/Rakefile CHANGED
@@ -1,8 +1,10 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'bundler/gem_tasks'
4
- require 'rspec/core/rake_task'
3
+ require "bundler/gem_tasks"
4
+ require "rspec/core/rake_task"
5
+ require "rubocop/rake_task"
5
6
 
6
7
  RSpec::Core::RakeTask.new(:spec)
8
+ RuboCop::RakeTask.new
7
9
 
8
- task default: :spec
10
+ task default: %i[spec rubocop]
data/deco_lite.gemspec CHANGED
@@ -52,13 +52,33 @@ Gem::Specification.new do |spec|
52
52
  spec.add_runtime_dependency 'activesupport', '>= 7.0.8', '<= 7.12.0'
53
53
  spec.add_runtime_dependency 'immutable_struct_ex', '>= 1.0', '< 2.0'
54
54
  spec.add_runtime_dependency 'mad_flatter', '>= 3.0', '< 4.0'
55
- spec.add_development_dependency 'bundler', '>= 2.2', '< 3.0'
56
- spec.add_development_dependency 'pry-byebug', '>= 3.9', '< 4.0'
57
- spec.add_development_dependency 'reek', '>= 6.1', '< 7.0'
58
- spec.add_development_dependency 'rspec', '>= 3.10', '< 4.0'
59
- spec.add_development_dependency 'rubocop', '>= 1.35', '< 2.0'
60
- spec.add_development_dependency 'rubocop-performance', '>= 1.14', '< 2.0'
61
- spec.add_development_dependency 'rubocop-rspec', '>= 2.12', '< 3.0'
62
- spec.add_development_dependency 'simplecov', '>= 0.22.0', '< 1.0'
63
- spec.add_development_dependency 'rake', '>= 13.0', '< 14.0'
55
+ spec.post_install_message = <<~POST_INSTALL
56
+ Thank you for installing deco_lite.
57
+
58
+ View the deco_lite README.md here: https://github.com/gangelo/deco_lite
59
+ View the deco_lite CHANGELOG.md: https://github.com/gangelo/deco_lite/blob/main/CHANGELOG.md
60
+
61
+ *
62
+ ***
63
+ *******
64
+ *********
65
+ ***********************
66
+ *****************
67
+ *************
68
+ ******* *******
69
+ ***** *****
70
+ *** ***
71
+ ** **
72
+
73
+ Using deco_lite? deco_lite is made available free of charge. Please consider giving this gem a STAR on GitHub as well as sharing it with your fellow developers on social media.
74
+
75
+ Knowing that deco_lite is being used and appreciated is a great motivator to continue developing and improving deco_lite.
76
+
77
+ >>> Star it on github: https://github.com/gangelo/deco_lite
78
+ >>> Share on social media: https://rubygems.org/gems/deco_lite
79
+
80
+ Thank you!
81
+
82
+ <3 Gene
83
+ POST_INSTALL
64
84
  end
@@ -2,5 +2,5 @@
2
2
 
3
3
  # Defines the version of this gem.
4
4
  module DecoLite
5
- VERSION = '1.5.12'
5
+ VERSION = '1.5.14'
6
6
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: deco_lite
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.5.12
4
+ version: 1.5.14
5
5
  platform: ruby
6
6
  authors:
7
7
  - Gene M. Angelo, Jr.
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-02-08 00:00:00.000000000 Z
11
+ date: 2024-08-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activemodel
@@ -90,186 +90,6 @@ dependencies:
90
90
  - - "<"
91
91
  - !ruby/object:Gem::Version
92
92
  version: '4.0'
93
- - !ruby/object:Gem::Dependency
94
- name: bundler
95
- requirement: !ruby/object:Gem::Requirement
96
- requirements:
97
- - - ">="
98
- - !ruby/object:Gem::Version
99
- version: '2.2'
100
- - - "<"
101
- - !ruby/object:Gem::Version
102
- version: '3.0'
103
- type: :development
104
- prerelease: false
105
- version_requirements: !ruby/object:Gem::Requirement
106
- requirements:
107
- - - ">="
108
- - !ruby/object:Gem::Version
109
- version: '2.2'
110
- - - "<"
111
- - !ruby/object:Gem::Version
112
- version: '3.0'
113
- - !ruby/object:Gem::Dependency
114
- name: pry-byebug
115
- requirement: !ruby/object:Gem::Requirement
116
- requirements:
117
- - - ">="
118
- - !ruby/object:Gem::Version
119
- version: '3.9'
120
- - - "<"
121
- - !ruby/object:Gem::Version
122
- version: '4.0'
123
- type: :development
124
- prerelease: false
125
- version_requirements: !ruby/object:Gem::Requirement
126
- requirements:
127
- - - ">="
128
- - !ruby/object:Gem::Version
129
- version: '3.9'
130
- - - "<"
131
- - !ruby/object:Gem::Version
132
- version: '4.0'
133
- - !ruby/object:Gem::Dependency
134
- name: reek
135
- requirement: !ruby/object:Gem::Requirement
136
- requirements:
137
- - - ">="
138
- - !ruby/object:Gem::Version
139
- version: '6.1'
140
- - - "<"
141
- - !ruby/object:Gem::Version
142
- version: '7.0'
143
- type: :development
144
- prerelease: false
145
- version_requirements: !ruby/object:Gem::Requirement
146
- requirements:
147
- - - ">="
148
- - !ruby/object:Gem::Version
149
- version: '6.1'
150
- - - "<"
151
- - !ruby/object:Gem::Version
152
- version: '7.0'
153
- - !ruby/object:Gem::Dependency
154
- name: rspec
155
- requirement: !ruby/object:Gem::Requirement
156
- requirements:
157
- - - ">="
158
- - !ruby/object:Gem::Version
159
- version: '3.10'
160
- - - "<"
161
- - !ruby/object:Gem::Version
162
- version: '4.0'
163
- type: :development
164
- prerelease: false
165
- version_requirements: !ruby/object:Gem::Requirement
166
- requirements:
167
- - - ">="
168
- - !ruby/object:Gem::Version
169
- version: '3.10'
170
- - - "<"
171
- - !ruby/object:Gem::Version
172
- version: '4.0'
173
- - !ruby/object:Gem::Dependency
174
- name: rubocop
175
- requirement: !ruby/object:Gem::Requirement
176
- requirements:
177
- - - ">="
178
- - !ruby/object:Gem::Version
179
- version: '1.35'
180
- - - "<"
181
- - !ruby/object:Gem::Version
182
- version: '2.0'
183
- type: :development
184
- prerelease: false
185
- version_requirements: !ruby/object:Gem::Requirement
186
- requirements:
187
- - - ">="
188
- - !ruby/object:Gem::Version
189
- version: '1.35'
190
- - - "<"
191
- - !ruby/object:Gem::Version
192
- version: '2.0'
193
- - !ruby/object:Gem::Dependency
194
- name: rubocop-performance
195
- requirement: !ruby/object:Gem::Requirement
196
- requirements:
197
- - - ">="
198
- - !ruby/object:Gem::Version
199
- version: '1.14'
200
- - - "<"
201
- - !ruby/object:Gem::Version
202
- version: '2.0'
203
- type: :development
204
- prerelease: false
205
- version_requirements: !ruby/object:Gem::Requirement
206
- requirements:
207
- - - ">="
208
- - !ruby/object:Gem::Version
209
- version: '1.14'
210
- - - "<"
211
- - !ruby/object:Gem::Version
212
- version: '2.0'
213
- - !ruby/object:Gem::Dependency
214
- name: rubocop-rspec
215
- requirement: !ruby/object:Gem::Requirement
216
- requirements:
217
- - - ">="
218
- - !ruby/object:Gem::Version
219
- version: '2.12'
220
- - - "<"
221
- - !ruby/object:Gem::Version
222
- version: '3.0'
223
- type: :development
224
- prerelease: false
225
- version_requirements: !ruby/object:Gem::Requirement
226
- requirements:
227
- - - ">="
228
- - !ruby/object:Gem::Version
229
- version: '2.12'
230
- - - "<"
231
- - !ruby/object:Gem::Version
232
- version: '3.0'
233
- - !ruby/object:Gem::Dependency
234
- name: simplecov
235
- requirement: !ruby/object:Gem::Requirement
236
- requirements:
237
- - - ">="
238
- - !ruby/object:Gem::Version
239
- version: 0.22.0
240
- - - "<"
241
- - !ruby/object:Gem::Version
242
- version: '1.0'
243
- type: :development
244
- prerelease: false
245
- version_requirements: !ruby/object:Gem::Requirement
246
- requirements:
247
- - - ">="
248
- - !ruby/object:Gem::Version
249
- version: 0.22.0
250
- - - "<"
251
- - !ruby/object:Gem::Version
252
- version: '1.0'
253
- - !ruby/object:Gem::Dependency
254
- name: rake
255
- requirement: !ruby/object:Gem::Requirement
256
- requirements:
257
- - - ">="
258
- - !ruby/object:Gem::Version
259
- version: '13.0'
260
- - - "<"
261
- - !ruby/object:Gem::Version
262
- version: '14.0'
263
- type: :development
264
- prerelease: false
265
- version_requirements: !ruby/object:Gem::Requirement
266
- requirements:
267
- - - ">="
268
- - !ruby/object:Gem::Version
269
- version: '13.0'
270
- - - "<"
271
- - !ruby/object:Gem::Version
272
- version: '14.0'
273
93
  description: |2
274
94
  DecoLite is a little gem that allows you to use the provided DecoLite::Model
275
95
  class to dynamically create Decorator class objects. Use the DecoLite::Model
@@ -335,7 +155,34 @@ homepage: https://github.com/gangelo/deco_lite
335
155
  licenses:
336
156
  - MIT
337
157
  metadata: {}
338
- post_install_message:
158
+ post_install_message: |
159
+ Thank you for installing deco_lite.
160
+
161
+ View the deco_lite README.md here: https://github.com/gangelo/deco_lite
162
+ View the deco_lite CHANGELOG.md: https://github.com/gangelo/deco_lite/blob/main/CHANGELOG.md
163
+
164
+ *
165
+ ***
166
+ *******
167
+ *********
168
+ ***********************
169
+ *****************
170
+ *************
171
+ ******* *******
172
+ ***** *****
173
+ *** ***
174
+ ** **
175
+
176
+ Using deco_lite? deco_lite is made available free of charge. Please consider giving this gem a STAR on GitHub as well as sharing it with your fellow developers on social media.
177
+
178
+ Knowing that deco_lite is being used and appreciated is a great motivator to continue developing and improving deco_lite.
179
+
180
+ >>> Star it on github: https://github.com/gangelo/deco_lite
181
+ >>> Share on social media: https://rubygems.org/gems/deco_lite
182
+
183
+ Thank you!
184
+
185
+ <3 Gene
339
186
  rdoc_options: []
340
187
  require_paths:
341
188
  - lib