active_record_tweaks 0.2.5 → 0.2.6

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: 148a7169a1a8ecdaa48749b04a6b6d3fbca5148717cd397271de51e59cd29a1f
4
- data.tar.gz: 992fd1f3433839433bef7e645ca8d2cb10d3d1a28d3da6fce327f90c258220ad
3
+ metadata.gz: b5796577562fd45e17cbcc767a956b3ecbf4a3b5b05a9c5ea6a66bb68aa3f993
4
+ data.tar.gz: cb6734f3beb1d54323a161134d8d0fa61be559adeceea65e9673152c29ab9c73
5
5
  SHA512:
6
- metadata.gz: 1fbf083180ee5c4a27a81d9715ff7f51b96ef9ee04bcc67b471658ff831c21a21a6234b9acb4eea9c83d2b5aafb0b9ba85f5690ced0a93123d4c7b9e1ce30239
7
- data.tar.gz: d999cf0151e108094a4494f755e6f4ba8d7cd71d02292364bb4a759b2a7ac1fd37da38639e3457aece5d55ad9d5be566e8a5610fe6b35610ed2eef5494e46b03
6
+ metadata.gz: e6c47a787e26f8c6ee8819482734be97c0ad4eadff17adc71e707dd53d01f6453c125291b20ba04a43fb8cef34b4dfd429a2ed3f8dcc6f81088ae454a618c0f4
7
+ data.tar.gz: 64a80b09a8d88c6027656252dd6198ba926c553443446bb5e7ba58b7c8e5aaaa19c4594ee8510a1277449be42f2c0b5fac9d937d52e6ac34df53f858db829e3a
@@ -21,22 +21,20 @@ jobs:
21
21
  strategy:
22
22
  fail-fast: false
23
23
  matrix:
24
- os:
25
- - ubuntu
26
24
  ruby:
27
- - "2.7"
25
+ - "3.3"
28
26
  gemfile:
29
- - gemfiles/rails_5_2.gemfile
30
- - gemfiles/rails_6_0.gemfile
31
- - gemfiles/rails_6_1.gemfile
32
27
  - gemfiles/rails_7_0.gemfile
28
+ - gemfiles/rails_7_1.gemfile
29
+ - gemfiles/rails_7_2.gemfile
30
+ - gemfiles/rails_8_0.gemfile
33
31
  env:
34
32
  BUNDLE_GEMFILE: ${{ matrix.gemfile }}
35
33
  COVERALLS: true
36
- runs-on: ${{ matrix.os }}-latest
34
+ runs-on: ubuntu-latest
37
35
  steps:
38
36
  - name: Checkout
39
- uses: actions/checkout@v3
37
+ uses: actions/checkout@v4
40
38
 
41
39
  - name: Setup Ruby
42
40
  uses: ruby/setup-ruby@v1
@@ -21,31 +21,32 @@ jobs:
21
21
  strategy:
22
22
  fail-fast: false
23
23
  matrix:
24
- os:
25
- - ubuntu
26
24
  ruby:
27
- - "2.7"
28
- - "3.0"
29
25
  - "3.1"
26
+ - "3.2"
27
+ - "3.3"
30
28
  gemfile:
31
- - gemfiles/rails_6_0.gemfile
32
- - gemfiles/rails_6_1.gemfile
33
29
  - gemfiles/rails_7_0.gemfile
30
+ - gemfiles/rails_7_1.gemfile
31
+ - gemfiles/rails_7_2.gemfile
32
+ - gemfiles/rails_8_0.gemfile
34
33
  allow_failures:
35
34
  - false
35
+ exclude:
36
+ - ruby: "3.1"
37
+ gemfile: gemfiles/rails_8_0.gemfile
36
38
  include:
37
- - os: ubuntu
38
- ruby: ruby-head
39
- gemfile: gemfiles/rails_7_0.gemfile
39
+ - ruby: ruby-head
40
+ gemfile: gemfiles/rails_8_0.gemfile
40
41
  allow_failures: true
41
42
  env:
42
43
  BUNDLE_GEMFILE: "${{ matrix.gemfile }}"
43
44
  ALLOW_FAILURES: "${{ matrix.allow_failures }}"
44
- runs-on: ${{ matrix.os }}-latest
45
+ runs-on: ubuntu-latest
45
46
  continue-on-error: ${{ endsWith(matrix.ruby, 'head') || matrix.ruby == 'debug' }}
46
47
  steps:
47
48
  - name: Checkout
48
- uses: actions/checkout@v3
49
+ uses: actions/checkout@v4
49
50
  - name: Setup Ruby
50
51
  uses: ruby/setup-ruby@v1
51
52
  with:
data/Appraisals CHANGED
@@ -1,30 +1,32 @@
1
1
 
2
- appraise "rails_5_2" do
3
- version = "~> 5.2.0"
2
+ appraise "rails_7_0" do
3
+ version = "~> 7.0.0"
4
4
  gem "activesupport", version
5
5
  gem "actionpack", version
6
6
  gem "activerecord", version
7
7
  gem "railties", version
8
+ gem "sqlite3", "~> 1.3"
8
9
  end
9
10
 
10
- appraise "rails_6_0" do
11
- version = "~> 6.0.0"
11
+ appraise "rails_7_1" do
12
+ version = "~> 7.1.0"
12
13
  gem "activesupport", version
13
14
  gem "actionpack", version
14
15
  gem "activerecord", version
15
16
  gem "railties", version
17
+ gem "sqlite3", "~> 1.3"
16
18
  end
17
19
 
18
- appraise "rails_6_1" do
19
- version = "~> 6.1.0"
20
+ appraise "rails_7_2" do
21
+ version = "~> 7.2.0"
20
22
  gem "activesupport", version
21
23
  gem "actionpack", version
22
24
  gem "activerecord", version
23
25
  gem "railties", version
24
26
  end
25
27
 
26
- appraise "rails_7_0" do
27
- version = "~> 7.0.0"
28
+ appraise "rails_8_0" do
29
+ version = "~> 8.0.0"
28
30
  gem "activesupport", version
29
31
  gem "actionpack", version
30
32
  gem "activerecord", version
data/CHANGELOG.md CHANGED
@@ -18,6 +18,15 @@ This project adheres to [Semantic Versioning](http://semver.org/).
18
18
  - Nothing
19
19
 
20
20
 
21
+ ## [0.2.6] - 2024-12-18
22
+
23
+ ### Changed
24
+
25
+ - Add support for AR 8.x
26
+ - Drop support for AR < 7.x
27
+ - Drop support for Ruby < 3.0
28
+
29
+
21
30
  ## [0.2.5] - 2022-04-12
22
31
 
23
32
  ### Changed
@@ -76,7 +85,8 @@ This project adheres to [Semantic Versioning](http://semver.org/).
76
85
  - Initial Release
77
86
 
78
87
 
79
- [Unreleased]: https://github.com/PikachuEXE/active_record_tweaks/compare/v0.2.5...HEAD
88
+ [Unreleased]: https://github.com/PikachuEXE/active_record_tweaks/compare/v0.2.6...HEAD
89
+ [0.2.6]: https://github.com/PikachuEXE/active_record_tweaks/compare/v0.2.5...v0.2.6
80
90
  [0.2.5]: https://github.com/PikachuEXE/active_record_tweaks/compare/v0.2.4...v0.2.5
81
91
  [0.2.4]: https://github.com/PikachuEXE/active_record_tweaks/compare/v0.2.3...v0.2.4
82
92
  [0.2.3]: https://github.com/PikachuEXE/active_record_tweaks/compare/v0.2.2...v0.2.3
data/README.md CHANGED
@@ -5,7 +5,7 @@ Active Record is great, but could be better. Here are some tweaks for it.
5
5
 
6
6
  ## Status
7
7
 
8
- [![GitHub Build Status](https://img.shields.io/github/workflow/status/PikachuEXE/active_record_tweaks/Tests?style=flat-square)](https://github.com/PikachuEXE/active_record_tweaks/actions?query=workflow%3ATests)
8
+ [![GitHub Build Status](https://img.shields.io/github/actions/workflow/status/PikachuEXE/active_record_tweaks/tests.yaml?branch=master&style=flat-square)](https://github.com/PikachuEXE/active_record_tweaks/actions/workflows/tests.yaml)
9
9
 
10
10
  [![Gem Version](http://img.shields.io/gem/v/active_record_tweaks.svg?style=flat-square)](http://badge.fury.io/rb/active_record_tweaks)
11
11
  [![License](https://img.shields.io/github/license/PikachuEXE/active_record_tweaks.svg?style=flat-square)](http://badge.fury.io/rb/active_record_tweaks)
@@ -27,13 +27,13 @@ Gem::Specification.new do |s|
27
27
  s.executables = `git ls-files -- bin/*`.split("\n").map { |f| File.basename(f) }
28
28
  s.require_paths = ["lib"]
29
29
 
30
- s.add_dependency "activerecord", ">= 5.2.0", "< 8.0.0"
30
+ s.add_dependency "activerecord", ">= 7.0.0", "< 9.0.0"
31
31
 
32
32
  s.add_development_dependency "bundler", ">= 1.0.0"
33
33
  s.add_development_dependency "rake", ">= 10.0", "<= 14.0"
34
- s.add_development_dependency "appraisal", "~> 2.0"
34
+ s.add_development_dependency "appraisal", "~> 2.0", ">= 2.5.0"
35
35
  s.add_development_dependency "rspec", "~> 3.0"
36
- s.add_development_dependency "rspec-its", "~> 1.0"
36
+ s.add_development_dependency "rspec-its", "~> 2.0"
37
37
  s.add_development_dependency "sqlite3", ">= 1.3"
38
38
  s.add_development_dependency "database_cleaner", ">= 1.0"
39
39
  s.add_development_dependency "simplecov", ">= 0.21"
@@ -41,7 +41,7 @@ Gem::Specification.new do |s|
41
41
  s.add_development_dependency "gem-release", ">= 0.7"
42
42
  s.add_development_dependency "timecop", ">= 0.7.1"
43
43
 
44
- s.required_ruby_version = ">= 2.7.0"
44
+ s.required_ruby_version = ">= 3.0.0"
45
45
 
46
46
  s.required_rubygems_version = ">= 1.4.0"
47
47
  end
@@ -6,5 +6,6 @@ gem "activesupport", "~> 7.0.0"
6
6
  gem "actionpack", "~> 7.0.0"
7
7
  gem "activerecord", "~> 7.0.0"
8
8
  gem "railties", "~> 7.0.0"
9
+ gem "sqlite3", "~> 1.3"
9
10
 
10
11
  gemspec path: "../"
@@ -0,0 +1,11 @@
1
+ # This file was generated by Appraisal
2
+
3
+ source "https://rubygems.org"
4
+
5
+ gem "activesupport", "~> 7.1.0"
6
+ gem "actionpack", "~> 7.1.0"
7
+ gem "activerecord", "~> 7.1.0"
8
+ gem "railties", "~> 7.1.0"
9
+ gem "sqlite3", "~> 1.3"
10
+
11
+ gemspec path: "../"
@@ -0,0 +1,10 @@
1
+ # This file was generated by Appraisal
2
+
3
+ source "https://rubygems.org"
4
+
5
+ gem "activesupport", "~> 7.2.0"
6
+ gem "actionpack", "~> 7.2.0"
7
+ gem "activerecord", "~> 7.2.0"
8
+ gem "railties", "~> 7.2.0"
9
+
10
+ gemspec path: "../"
@@ -0,0 +1,10 @@
1
+ # This file was generated by Appraisal
2
+
3
+ source "https://rubygems.org"
4
+
5
+ gem "activesupport", "~> 8.0.0"
6
+ gem "actionpack", "~> 8.0.0"
7
+ gem "activerecord", "~> 8.0.0"
8
+ gem "railties", "~> 8.0.0"
9
+
10
+ gemspec path: "../"
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module ActiveRecordTweaks
4
- VERSION = "0.2.5"
4
+ VERSION = "0.2.6"
5
5
 
6
6
  def self.version
7
7
  Gem::Version.new(VERSION)
@@ -292,8 +292,16 @@ describe Parent do
292
292
  before { person.update!(updated_at: nil, updated_on: Time.now) }
293
293
 
294
294
  it do
295
+ expected_time_str = klass.maximum(:updated_on).utc.yield_self do |utc_time|
296
+ if utc_time.respond_to?(:to_fs)
297
+ utc_time.to_fs(:nsec)
298
+ else
299
+ utc_time.to_s(:nsec)
300
+ end
301
+ end
302
+
295
303
  should eq "people/all/"\
296
- "#{klass.count}-#{klass.maximum(:updated_on).utc.to_s(:nsec)}"
304
+ "#{klass.count}-#{expected_time_str}"
297
305
  end
298
306
  end
299
307
  end
@@ -319,8 +327,16 @@ describe Parent do
319
327
  end
320
328
 
321
329
  it do
330
+ expected_time_str = klass.maximum(:updated_on).utc.yield_self do |utc_time|
331
+ if utc_time.respond_to?(:to_fs)
332
+ utc_time.to_fs(:nsec)
333
+ else
334
+ utc_time.to_s(:nsec)
335
+ end
336
+ end
337
+
322
338
  should eq "people/all/"\
323
- "#{klass.count}-#{klass.maximum(:updated_on).utc.to_s(:nsec)}"
339
+ "#{klass.count}-#{expected_time_str}"
324
340
  end
325
341
  end
326
342
 
@@ -333,8 +349,16 @@ describe Parent do
333
349
  end
334
350
 
335
351
  it do
352
+ expected_time_str = klass.maximum(:updated_at).utc.yield_self do |utc_time|
353
+ if utc_time.respond_to?(:to_fs)
354
+ utc_time.to_fs(:nsec)
355
+ else
356
+ utc_time.to_s(:nsec)
357
+ end
358
+ end
359
+
336
360
  should eq "people/all/"\
337
- "#{klass.count}-#{klass.maximum(:updated_at).utc.to_s(:nsec)}"
361
+ "#{klass.count}-#{expected_time_str}"
338
362
  end
339
363
  end
340
364
 
@@ -347,8 +371,16 @@ describe Parent do
347
371
  end
348
372
 
349
373
  it do
374
+ expected_time_str = klass.maximum(:updated_on).utc.yield_self do |utc_time|
375
+ if utc_time.respond_to?(:to_fs)
376
+ utc_time.to_fs(:nsec)
377
+ else
378
+ utc_time.to_s(:nsec)
379
+ end
380
+ end
381
+
350
382
  should eq "people/all/"\
351
- "#{klass.count}-#{klass.maximum(:updated_on).utc.to_s(:nsec)}"
383
+ "#{klass.count}-#{expected_time_str}"
352
384
  end
353
385
  end
354
386
  end
@@ -406,8 +438,16 @@ describe Parent do
406
438
  let!(:record) { klass.create! }
407
439
 
408
440
  it do
441
+ expected_time_str = klass.maximum(:updated_at).utc.yield_self do |utc_time|
442
+ if utc_time.respond_to?(:to_fs)
443
+ utc_time.to_fs(:number)
444
+ else
445
+ utc_time.to_s(:number)
446
+ end
447
+ end
448
+
409
449
  should eq "animals/all/"\
410
- "#{klass.count}-#{klass.maximum(:updated_at).utc.to_s(:number)}"
450
+ "#{klass.count}-#{expected_time_str}"
411
451
  end
412
452
  end
413
453
  end
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: active_record_tweaks
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.5
4
+ version: 0.2.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - PikachuEXE
8
- autorequire:
9
8
  bindir: bin
10
9
  cert_chain: []
11
- date: 2022-04-12 00:00:00.000000000 Z
10
+ date: 2024-12-18 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: activerecord
@@ -16,20 +15,20 @@ dependencies:
16
15
  requirements:
17
16
  - - ">="
18
17
  - !ruby/object:Gem::Version
19
- version: 5.2.0
18
+ version: 7.0.0
20
19
  - - "<"
21
20
  - !ruby/object:Gem::Version
22
- version: 8.0.0
21
+ version: 9.0.0
23
22
  type: :runtime
24
23
  prerelease: false
25
24
  version_requirements: !ruby/object:Gem::Requirement
26
25
  requirements:
27
26
  - - ">="
28
27
  - !ruby/object:Gem::Version
29
- version: 5.2.0
28
+ version: 7.0.0
30
29
  - - "<"
31
30
  - !ruby/object:Gem::Version
32
- version: 8.0.0
31
+ version: 9.0.0
33
32
  - !ruby/object:Gem::Dependency
34
33
  name: bundler
35
34
  requirement: !ruby/object:Gem::Requirement
@@ -71,6 +70,9 @@ dependencies:
71
70
  - - "~>"
72
71
  - !ruby/object:Gem::Version
73
72
  version: '2.0'
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: 2.5.0
74
76
  type: :development
75
77
  prerelease: false
76
78
  version_requirements: !ruby/object:Gem::Requirement
@@ -78,6 +80,9 @@ dependencies:
78
80
  - - "~>"
79
81
  - !ruby/object:Gem::Version
80
82
  version: '2.0'
83
+ - - ">="
84
+ - !ruby/object:Gem::Version
85
+ version: 2.5.0
81
86
  - !ruby/object:Gem::Dependency
82
87
  name: rspec
83
88
  requirement: !ruby/object:Gem::Requirement
@@ -98,14 +103,14 @@ dependencies:
98
103
  requirements:
99
104
  - - "~>"
100
105
  - !ruby/object:Gem::Version
101
- version: '1.0'
106
+ version: '2.0'
102
107
  type: :development
103
108
  prerelease: false
104
109
  version_requirements: !ruby/object:Gem::Requirement
105
110
  requirements:
106
111
  - - "~>"
107
112
  - !ruby/object:Gem::Version
108
- version: '1.0'
113
+ version: '2.0'
109
114
  - !ruby/object:Gem::Dependency
110
115
  name: sqlite3
111
116
  requirement: !ruby/object:Gem::Requirement
@@ -213,10 +218,10 @@ files:
213
218
  - Rakefile
214
219
  - active_record_tweaks.gemspec
215
220
  - gemfiles/.bundle/config
216
- - gemfiles/rails_5_2.gemfile
217
- - gemfiles/rails_6_0.gemfile
218
- - gemfiles/rails_6_1.gemfile
219
221
  - gemfiles/rails_7_0.gemfile
222
+ - gemfiles/rails_7_1.gemfile
223
+ - gemfiles/rails_7_2.gemfile
224
+ - gemfiles/rails_8_0.gemfile
220
225
  - lib/active_record_tweaks.rb
221
226
  - lib/active_record_tweaks/integration.rb
222
227
  - lib/active_record_tweaks/version.rb
@@ -226,7 +231,6 @@ homepage: http://github.com/PikachuEXE/active_record_tweaks
226
231
  licenses:
227
232
  - MIT
228
233
  metadata: {}
229
- post_install_message:
230
234
  rdoc_options: []
231
235
  require_paths:
232
236
  - lib
@@ -234,15 +238,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
234
238
  requirements:
235
239
  - - ">="
236
240
  - !ruby/object:Gem::Version
237
- version: 2.7.0
241
+ version: 3.0.0
238
242
  required_rubygems_version: !ruby/object:Gem::Requirement
239
243
  requirements:
240
244
  - - ">="
241
245
  - !ruby/object:Gem::Version
242
246
  version: 1.4.0
243
247
  requirements: []
244
- rubygems_version: 3.3.11
245
- signing_key:
248
+ rubygems_version: 3.6.1
246
249
  specification_version: 4
247
250
  summary: Some Tweaks for ActiveRecord
248
251
  test_files:
@@ -1,10 +0,0 @@
1
- # This file was generated by Appraisal
2
-
3
- source "https://rubygems.org"
4
-
5
- gem "activesupport", "~> 5.2.0"
6
- gem "actionpack", "~> 5.2.0"
7
- gem "activerecord", "~> 5.2.0"
8
- gem "railties", "~> 5.2.0"
9
-
10
- gemspec path: "../"
@@ -1,10 +0,0 @@
1
- # This file was generated by Appraisal
2
-
3
- source "https://rubygems.org"
4
-
5
- gem "activesupport", "~> 6.0.0"
6
- gem "actionpack", "~> 6.0.0"
7
- gem "activerecord", "~> 6.0.0"
8
- gem "railties", "~> 6.0.0"
9
-
10
- gemspec path: "../"
@@ -1,10 +0,0 @@
1
- # This file was generated by Appraisal
2
-
3
- source "https://rubygems.org"
4
-
5
- gem "activesupport", "~> 6.1.0"
6
- gem "actionpack", "~> 6.1.0"
7
- gem "activerecord", "~> 6.1.0"
8
- gem "railties", "~> 6.1.0"
9
-
10
- gemspec path: "../"