active_type 2.1.0 → 2.2.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: 4ed97bd5057f4193d1ced6df666bc9250c4d57cbf830db65112c7686311ed2e5
4
- data.tar.gz: 9b38760b9e205770507223ef9c11aae1813abb078b48e6a9e5bb5210a6fa464b
3
+ metadata.gz: bf7e0c548ca85d6d7cea9ffa097c10ec2c488d631e8c2919ba49b30a2f5849e1
4
+ data.tar.gz: fa88fa1d79a60dcc26b732157993f51b018b7e229b633aba605e1f03bf746ed2
5
5
  SHA512:
6
- metadata.gz: 79d3b07256931a655d9a761485ffeb5a630442a83e13b12d44b519f4f485d5b05485c457273de50e9381ca8beddc9b1d6368c901b5ba121fc7761910b9f3c81a
7
- data.tar.gz: 2c36129837464338002cb14c90442654ec7dc3b647ee4c9f01ace6b5611018600edd37927ce9882051336c54a54169cd1e4292e7c7e819e3e914170ea1720de4
6
+ metadata.gz: d44944e817c52c3bb2cea812a4fd6ae59eb5222c9a692f194721a1caf64037092535952e5b1badbb1a78b488331876a0fb6e68fe1ba134e5231236c420b1fa06
7
+ data.tar.gz: b208069bad2606d6d9cac527350cf2df5b0ad25aa54c134e10cb038b3b6fe8bf6f4b4e89e9db12658c9fd308ddcfecea98ff64c1d8a62bb45c4ec05c23338b0d
@@ -28,8 +28,6 @@ jobs:
28
28
  gemfile: Gemfile.6.0.sqlite3
29
29
  - ruby: "2.6.3"
30
30
  gemfile: Gemfile.6.1.sqlite3
31
- - ruby: "2.6.3"
32
- gemfile: Gemfile.7.0.sqlite3
33
31
  - ruby: "2.7.4"
34
32
  gemfile: Gemfile.5.2.sqlite3
35
33
  - ruby: "2.7.4"
@@ -97,10 +95,6 @@ jobs:
97
95
  uses: ruby/setup-ruby@v1
98
96
  with:
99
97
  ruby-version: ${{ matrix.ruby }}
100
- - name: Install database client
101
- run: |
102
- sudo apt-get update
103
- sudo apt-get install -y mariadb-client libmariadbclient-dev
104
98
  - name: Bundle
105
99
  run: |
106
100
  gem install bundler:2.2.27
data/CHANGELOG.md CHANGED
@@ -4,6 +4,14 @@ All notable changes to this project will be documented in this file.
4
4
 
5
5
  ## Unreleased changes
6
6
 
7
+ ## 2.2.0 (2022-06-02)
8
+
9
+ * Fixed: ActiveType now actually works for Rails 7. Sorry for that. Thanks to @atcruice.
10
+
11
+ ## 2.1.1 (2021-12-22)
12
+
13
+ * Fixed: Ruby compiler warning and suboptimal attribut name validation. Thanks to @remofrizsche.
14
+
7
15
  ## 2.1.0 (2021-12-22)
8
16
 
9
17
  * Fixed: ActiveType now works for Rails 7.
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- active_type (2.0)
4
+ active_type (2.2.0)
5
5
  activerecord (>= 3.2)
6
6
 
7
7
  GEM
data/Gemfile.4.2.pg.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- active_type (2.0)
4
+ active_type (2.2.0)
5
5
  activerecord (>= 3.2)
6
6
 
7
7
  GEM
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- active_type (2.0)
4
+ active_type (2.1.1)
5
5
  activerecord (>= 3.2)
6
6
 
7
7
  GEM
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- active_type (2.0)
4
+ active_type (2.2.0)
5
5
  activerecord (>= 3.2)
6
6
 
7
7
  GEM
@@ -56,4 +56,4 @@ DEPENDENCIES
56
56
  rspec (~> 3.4)
57
57
 
58
58
  BUNDLED WITH
59
- 2.2.16
59
+ 2.2.27
data/Gemfile.5.2.pg.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- active_type (2.1.0)
4
+ active_type (2.2.0)
5
5
  activerecord (>= 3.2)
6
6
 
7
7
  GEM
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- active_type (2.0)
4
+ active_type (2.2.0)
5
5
  activerecord (>= 3.2)
6
6
 
7
7
  GEM
@@ -56,4 +56,4 @@ DEPENDENCIES
56
56
  sqlite3
57
57
 
58
58
  BUNDLED WITH
59
- 2.2.16
59
+ 2.2.27
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- active_type (2.0)
4
+ active_type (2.2.0)
5
5
  activerecord (>= 3.2)
6
6
 
7
7
  GEM
@@ -56,4 +56,4 @@ DEPENDENCIES
56
56
  sqlite3
57
57
 
58
58
  BUNDLED WITH
59
- 2.2.16
59
+ 2.2.27
data/Gemfile.6.1.pg.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- active_type (2.0)
4
+ active_type (2.2.0)
5
5
  activerecord (>= 3.2)
6
6
 
7
7
  GEM
@@ -56,4 +56,4 @@ DEPENDENCIES
56
56
  rspec (~> 3.4)
57
57
 
58
58
  BUNDLED WITH
59
- 2.2.16
59
+ 2.2.27
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- active_type (2.0)
4
+ active_type (2.2.0)
5
5
  activerecord (>= 3.2)
6
6
 
7
7
  GEM
@@ -56,4 +56,4 @@ DEPENDENCIES
56
56
  sqlite3
57
57
 
58
58
  BUNDLED WITH
59
- 2.2.16
59
+ 2.2.27
data/Gemfile.7.0.pg CHANGED
@@ -1,6 +1,6 @@
1
1
  source 'https://rubygems.org'
2
2
 
3
- gem 'activerecord', '~>6.1.0'
3
+ gem 'activerecord', '~>7.0.3'
4
4
  gem 'rspec', '~>3.4'
5
5
  gem 'pg'
6
6
  gem 'rake'
data/Gemfile.7.0.pg.lock CHANGED
@@ -1,54 +1,52 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- active_type (2.0)
4
+ active_type (2.2.0)
5
5
  activerecord (>= 3.2)
6
6
 
7
7
  GEM
8
8
  remote: https://rubygems.org/
9
9
  specs:
10
- activemodel (6.1.4.4)
11
- activesupport (= 6.1.4.4)
12
- activerecord (6.1.4.4)
13
- activemodel (= 6.1.4.4)
14
- activesupport (= 6.1.4.4)
15
- activesupport (6.1.4.4)
10
+ activemodel (7.0.3)
11
+ activesupport (= 7.0.3)
12
+ activerecord (7.0.3)
13
+ activemodel (= 7.0.3)
14
+ activesupport (= 7.0.3)
15
+ activesupport (7.0.3)
16
16
  concurrent-ruby (~> 1.0, >= 1.0.2)
17
17
  i18n (>= 1.6, < 2)
18
18
  minitest (>= 5.1)
19
19
  tzinfo (~> 2.0)
20
- zeitwerk (~> 2.3)
21
- concurrent-ruby (1.1.9)
22
- diff-lcs (1.4.4)
23
- gemika (0.6.1)
24
- i18n (1.8.11)
20
+ concurrent-ruby (1.1.10)
21
+ diff-lcs (1.5.0)
22
+ gemika (0.7.1)
23
+ i18n (1.10.0)
25
24
  concurrent-ruby (~> 1.0)
26
25
  minitest (5.15.0)
27
- pg (1.2.3)
26
+ pg (1.3.5)
28
27
  rake (13.0.6)
29
- rspec (3.10.0)
30
- rspec-core (~> 3.10.0)
31
- rspec-expectations (~> 3.10.0)
32
- rspec-mocks (~> 3.10.0)
33
- rspec-core (3.10.1)
34
- rspec-support (~> 3.10.0)
35
- rspec-expectations (3.10.1)
28
+ rspec (3.11.0)
29
+ rspec-core (~> 3.11.0)
30
+ rspec-expectations (~> 3.11.0)
31
+ rspec-mocks (~> 3.11.0)
32
+ rspec-core (3.11.0)
33
+ rspec-support (~> 3.11.0)
34
+ rspec-expectations (3.11.0)
36
35
  diff-lcs (>= 1.2.0, < 2.0)
37
- rspec-support (~> 3.10.0)
38
- rspec-mocks (3.10.2)
36
+ rspec-support (~> 3.11.0)
37
+ rspec-mocks (3.11.1)
39
38
  diff-lcs (>= 1.2.0, < 2.0)
40
- rspec-support (~> 3.10.0)
41
- rspec-support (3.10.3)
39
+ rspec-support (~> 3.11.0)
40
+ rspec-support (3.11.0)
42
41
  tzinfo (2.0.4)
43
42
  concurrent-ruby (~> 1.0)
44
- zeitwerk (2.5.1)
45
43
 
46
44
  PLATFORMS
47
45
  ruby
48
46
 
49
47
  DEPENDENCIES
50
48
  active_type!
51
- activerecord (~> 6.1.0)
49
+ activerecord (~> 7.0.3)
52
50
  gemika
53
51
  pg
54
52
  rake
data/Gemfile.7.0.sqlite3 CHANGED
@@ -1,6 +1,6 @@
1
1
  source 'https://rubygems.org'
2
2
 
3
- gem 'activerecord', '~>6.1.0'
3
+ gem 'activerecord', '~>7.0.3'
4
4
  gem 'rspec', '~>3.4'
5
5
  gem 'sqlite3'
6
6
  gem 'rake'
@@ -1,54 +1,52 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- active_type (2.0)
4
+ active_type (2.2.0)
5
5
  activerecord (>= 3.2)
6
6
 
7
7
  GEM
8
8
  remote: https://rubygems.org/
9
9
  specs:
10
- activemodel (6.1.4.4)
11
- activesupport (= 6.1.4.4)
12
- activerecord (6.1.4.4)
13
- activemodel (= 6.1.4.4)
14
- activesupport (= 6.1.4.4)
15
- activesupport (6.1.4.4)
10
+ activemodel (7.0.3)
11
+ activesupport (= 7.0.3)
12
+ activerecord (7.0.3)
13
+ activemodel (= 7.0.3)
14
+ activesupport (= 7.0.3)
15
+ activesupport (7.0.3)
16
16
  concurrent-ruby (~> 1.0, >= 1.0.2)
17
17
  i18n (>= 1.6, < 2)
18
18
  minitest (>= 5.1)
19
19
  tzinfo (~> 2.0)
20
- zeitwerk (~> 2.3)
21
- concurrent-ruby (1.1.9)
22
- diff-lcs (1.4.4)
23
- gemika (0.6.1)
24
- i18n (1.8.11)
20
+ concurrent-ruby (1.1.10)
21
+ diff-lcs (1.5.0)
22
+ gemika (0.7.1)
23
+ i18n (1.10.0)
25
24
  concurrent-ruby (~> 1.0)
26
25
  minitest (5.15.0)
27
26
  rake (13.0.6)
28
- rspec (3.10.0)
29
- rspec-core (~> 3.10.0)
30
- rspec-expectations (~> 3.10.0)
31
- rspec-mocks (~> 3.10.0)
32
- rspec-core (3.10.1)
33
- rspec-support (~> 3.10.0)
34
- rspec-expectations (3.10.1)
27
+ rspec (3.11.0)
28
+ rspec-core (~> 3.11.0)
29
+ rspec-expectations (~> 3.11.0)
30
+ rspec-mocks (~> 3.11.0)
31
+ rspec-core (3.11.0)
32
+ rspec-support (~> 3.11.0)
33
+ rspec-expectations (3.11.0)
35
34
  diff-lcs (>= 1.2.0, < 2.0)
36
- rspec-support (~> 3.10.0)
37
- rspec-mocks (3.10.2)
35
+ rspec-support (~> 3.11.0)
36
+ rspec-mocks (3.11.1)
38
37
  diff-lcs (>= 1.2.0, < 2.0)
39
- rspec-support (~> 3.10.0)
40
- rspec-support (3.10.3)
38
+ rspec-support (~> 3.11.0)
39
+ rspec-support (3.11.0)
41
40
  sqlite3 (1.4.2)
42
41
  tzinfo (2.0.4)
43
42
  concurrent-ruby (~> 1.0)
44
- zeitwerk (2.5.1)
45
43
 
46
44
  PLATFORMS
47
45
  ruby
48
46
 
49
47
  DEPENDENCIES
50
48
  active_type!
51
- activerecord (~> 6.1.0)
49
+ activerecord (~> 7.0.3)
52
50
  gemika
53
51
  rake
54
52
  rspec (~> 3.4)
data/active_type.gemspec CHANGED
@@ -10,6 +10,7 @@ Gem::Specification.new do |s|
10
10
  s.summary = 'Make any Ruby object quack like ActiveRecord'
11
11
  s.description = s.summary
12
12
  s.license = 'MIT'
13
+ s.metadata = { 'rubygems_mfa_required' => 'true' }
13
14
 
14
15
  s.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
15
16
  s.executables = s.files.grep(%r{^bin/}) { |f| File.basename(f) }
@@ -16,11 +16,15 @@ module ActiveType
16
16
  @allow_destroy = options.fetch(:allow_destroy, false)
17
17
  @reject_if = options.delete(:reject_if)
18
18
  @options = options.dup
19
- @index_errors = if ActiveRecord::VERSION::MAJOR < 5
20
- @options[:index_errors]
21
- else
22
- @options[:index_errors] || ActiveRecord::Base.index_nested_attribute_errors
23
- end
19
+
20
+ @index_errors = case
21
+ when ActiveRecord::VERSION::MAJOR < 5
22
+ @options[:index_errors]
23
+ when ActiveRecord::VERSION::MAJOR < 7
24
+ @options[:index_errors] || ActiveRecord::Base.index_nested_attribute_errors
25
+ else
26
+ @options[:index_errors] || ActiveRecord.index_nested_attribute_errors
27
+ end
24
28
  end
25
29
 
26
30
  def assign_attributes(parent, attributes)
@@ -126,7 +130,7 @@ module ActiveType
126
130
  end
127
131
 
128
132
  def add_errors_to_parent(parent, child, index)
129
- if ActiveRecord::VERSION::MAJOR >= 6 && ActiveRecord::VERSION::MINOR >= 1
133
+ if Gem::Version.new(ActiveRecord::VERSION::STRING) >= Gem::Version.new("6.1")
130
134
  child.errors.each do |error|
131
135
  attribute = translate_error_attribute(error.attribute, index)
132
136
  parent.errors.add(attribute, error.message)
@@ -101,7 +101,7 @@ module ActiveType
101
101
  def columns_hash(table_name)
102
102
  {}
103
103
  end
104
-
104
+
105
105
  def columns_hash?(table_name)
106
106
  return false
107
107
  end
@@ -144,6 +144,10 @@ module ActiveType
144
144
  []
145
145
  end
146
146
 
147
+ def _query_by_sql(*)
148
+ []
149
+ end
150
+
147
151
  end
148
152
 
149
153
  def destroy
@@ -1,3 +1,3 @@
1
1
  module ActiveType
2
- VERSION = '2.1.0'
2
+ VERSION = '2.2.0'
3
3
  end
@@ -112,7 +112,7 @@ module ActiveType
112
112
  end
113
113
 
114
114
  def validate_attribute_name!(name)
115
- unless name.to_s =~ /\A[A-z0-9_]*\z/
115
+ unless name.to_s =~ /\A[A-Za-z0-9_]*\z/
116
116
  raise InvalidAttributeNameError.new("'#{name}' is not a valid name for a virtual attribute")
117
117
  end
118
118
  end
@@ -273,7 +273,7 @@ module ActiveType
273
273
  if value.is_a?(String) && value.length > 50
274
274
  "#{value[0, 50]}...".inspect
275
275
  elsif value.is_a?(Date) || value.is_a?(Time)
276
- %("#{value.to_s(:db)}")
276
+ %("#{value.to_formatted_s(:db)}")
277
277
  elsif value.is_a?(Array) && value.size > 10
278
278
  inspected = value.first(10).inspect
279
279
  %(#{inspected[0...-1]}, ...])
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: active_type
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.1.0
4
+ version: 2.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tobias Kraze
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2021-12-22 00:00:00.000000000 Z
12
+ date: 2022-06-02 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: bundler
@@ -114,7 +114,8 @@ files:
114
114
  homepage: https://github.com/makandra/active_type
115
115
  licenses:
116
116
  - MIT
117
- metadata: {}
117
+ metadata:
118
+ rubygems_mfa_required: 'true'
118
119
  post_install_message:
119
120
  rdoc_options: []
120
121
  require_paths: