activerecord-cached_at 6.1.0.rc1 → 6.1.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: ffaa40afe11c877610e9ca9ba1072e47521c6b188522cf5bba065767129f9ced
4
- data.tar.gz: 06403fdc5c4303fc80105c5381771db103058bf0f762bd92fc0826c6afa46431
3
+ metadata.gz: 89f6c8c10ca1cb627c057112961cb80ff26440026b723b5cf4240e4873089604
4
+ data.tar.gz: 05374e1138987e67d9a0fb5866278f1d495168799859ccb8cc77e4bc8dc8b724
5
5
  SHA512:
6
- metadata.gz: 328f5606ca71e467cfab60b136bfe7429010f2adff5227c495916089feb03d6a98be86740fe488d833a510e7239467f192d91530d749b5fb9f67eb6a52e90e2d
7
- data.tar.gz: ca67eddf6423cb2930860dfd00943a7ea649fd5104b03c94c0b894f087d469ad0ef88f7e7b18cccadbf6c7410d07d92074f1bf137a6bd28dba58b1692ec6e7cf
6
+ metadata.gz: 2053953fe7212f64ee1d03ed6956f409f25ae3c53666c25acd7224ecefa3e8ed0b1d2daf99317087d7c7fed0ea846a10eceec4de9776c31c530f31bc518b54ab
7
+ data.tar.gz: fbeed1272d1d6a5961733ec128516a5b1dc9f093061775c24ba1c14c30bf28f8730436542d8ca45de738a41d957332fd5daf133d74d54c37b9f6f9db137c7eff
@@ -2,14 +2,16 @@ module ActiveRecord
2
2
  module ConnectionAdapters #:nodoc:
3
3
 
4
4
  class TableDefinition
5
- def timestamps(*args)
6
- options = args.extract_options!
7
-
5
+ def timestamps(**options)
8
6
  options[:null] = false if options[:null].nil?
9
7
 
10
- column(:created_at, :datetime, options)
11
- column(:updated_at, :datetime, options)
12
- column(:cached_at, :datetime, options)
8
+ if !options.key?(:precision) && @conn.supports_datetime_with_precision?
9
+ options[:precision] = 6
10
+ end
11
+
12
+ column(:created_at, :datetime, **options)
13
+ column(:updated_at, :datetime, **options)
14
+ column(:cached_at, :datetime, **options)
13
15
  end
14
16
  end
15
17
 
@@ -2,19 +2,42 @@ module ActiveRecord
2
2
  module ConnectionAdapters #:nodoc:
3
3
 
4
4
  module SchemaStatements
5
- def add_timestamps(table_name, options = {})
5
+ def add_timestamps(table_name, **options)
6
6
  options[:null] = false if options[:null].nil?
7
7
 
8
- add_column table_name, :created_at, :datetime, options
9
- add_column table_name, :updated_at, :datetime, options
10
- add_column table_name, :cached_at, :datetime, options
8
+ if !options.key?(:precision) && supports_datetime_with_precision?
9
+ options[:precision] = 6
10
+ end
11
+
12
+ add_column table_name, :created_at, :datetime, **options
13
+ add_column table_name, :updated_at, :datetime, **options
14
+ add_column table_name, :cached_at, :datetime, **options
11
15
  end
12
16
 
13
- def remove_timestamps(table_name, options = {})
17
+ def remove_timestamps(table_name, **options)
14
18
  remove_column table_name, :updated_at
15
19
  remove_column table_name, :created_at
16
20
  remove_column table_name, :cached_at
17
21
  end
22
+
23
+ def add_timestamps_for_alter(table_name, **options)
24
+ options[:null] = false if options[:null].nil?
25
+
26
+ if !options.key?(:precision) && supports_datetime_with_precision?
27
+ options[:precision] = 6
28
+ end
29
+
30
+ [
31
+ add_column_for_alter(table_name, :created_at, :datetime, **options),
32
+ add_column_for_alter(table_name, :updated_at, :datetime, **options),
33
+ add_column_for_alter(table_name, :cached_at, :datetime, **options)
34
+ ]
35
+ end
36
+
37
+ def remove_timestamps_for_alter(table_name, **options)
38
+ remove_columns_for_alter(table_name, :updated_at, :created_at, :cached_at)
39
+ end
40
+
18
41
  end
19
42
 
20
43
  end
@@ -3,5 +3,5 @@ require 'active_record'
3
3
  require File.expand_path(File.join(__FILE__, '../cached_at/base'))
4
4
  require File.expand_path(File.join(__FILE__, '../cached_at/helpers'))
5
5
  require File.expand_path(File.join(__FILE__, '../cached_at/timestamp'))
6
- require File.expand_path(File.join(__FILE__, '../cached_at/connection_adapters/abstract/schema_definitions'))
7
- require File.expand_path(File.join(__FILE__, '../cached_at/connection_adapters/abstract/schema_statements'))
6
+ require File.expand_path(File.join(__FILE__, '../../ext/active_record/connection_adapters/abstract/schema_definitions'))
7
+ require File.expand_path(File.join(__FILE__, '../../ext/active_record/connection_adapters/abstract/schema_statements'))
@@ -7,11 +7,13 @@ module ActiveRecord
7
7
  private
8
8
 
9
9
  def timestamp_attributes_for_update
10
- ['updated_at']
10
+ ["updated_at", "updated_on", 'cached_at'].map! { |name| attribute_aliases[name] || name }
11
11
  end
12
12
 
13
13
  def timestamp_attributes_for_create
14
- ['created_at', 'udpated_at', 'cached_at'] + column_names.select{|c| c.end_with?('_cached_at') }
14
+ (['created_at', 'udpated_at', 'cached_at'] + column_names.select{|c| c.end_with?('_cached_at') }).map! do |name|
15
+ attribute_aliases[name] || name
16
+ end
15
17
  end
16
18
 
17
19
  end
@@ -1,3 +1,3 @@
1
1
  module CachedAt
2
- VERSION = '6.1.0.rc1'
2
+ VERSION = '6.1.0'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: activerecord-cached_at
3
3
  version: !ruby/object:Gem::Version
4
- version: 6.1.0.rc1
4
+ version: 6.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jon Bracy
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-12-28 00:00:00.000000000 Z
11
+ date: 2021-01-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activerecord
@@ -143,8 +143,6 @@ files:
143
143
  - lib/cached_at/associations/has_many_through_association.rb
144
144
  - lib/cached_at/associations/has_one_association.rb
145
145
  - lib/cached_at/base.rb
146
- - lib/cached_at/connection_adapters/abstract/schema_definitions.rb
147
- - lib/cached_at/connection_adapters/abstract/schema_statements.rb
148
146
  - lib/cached_at/helpers.rb
149
147
  - lib/cached_at/reflections/abstract_reflection.rb
150
148
  - lib/cached_at/timestamp.rb
@@ -166,11 +164,11 @@ required_ruby_version: !ruby/object:Gem::Requirement
166
164
  version: '0'
167
165
  required_rubygems_version: !ruby/object:Gem::Requirement
168
166
  requirements:
169
- - - ">"
167
+ - - ">="
170
168
  - !ruby/object:Gem::Version
171
- version: 1.3.1
169
+ version: '0'
172
170
  requirements: []
173
- rubygems_version: 3.1.4
171
+ rubygems_version: 3.2.3
174
172
  signing_key:
175
173
  specification_version: 4
176
174
  summary: Allows ActiveRecord and Rails to use a `cached_at` column for the `cache_key`
@@ -1,15 +0,0 @@
1
- module ActiveRecord
2
- module ConnectionAdapters #:nodoc:
3
-
4
- class TableDefinition
5
- def timestamps(**options)
6
- options[:null] = false if options[:null].nil?
7
-
8
- column(:created_at, :datetime, options)
9
- column(:updated_at, :datetime, options)
10
- column(:cached_at, :datetime, options)
11
- end
12
- end
13
-
14
- end
15
- end
@@ -1,21 +0,0 @@
1
- module ActiveRecord
2
- module ConnectionAdapters #:nodoc:
3
-
4
- module SchemaStatements
5
- def add_timestamps(table_name, options = {})
6
- options[:null] = false if options[:null].nil?
7
-
8
- add_column table_name, :created_at, :datetime, options
9
- add_column table_name, :updated_at, :datetime, options
10
- add_column table_name, :cached_at, :datetime, options
11
- end
12
-
13
- def remove_timestamps(table_name, options = {})
14
- remove_column table_name, :updated_at
15
- remove_column table_name, :created_at
16
- remove_column table_name, :cached_at
17
- end
18
- end
19
-
20
- end
21
- end