clickhouse-activerecord 1.0.9 → 1.0.10

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: f32d998cd41ae14becbea5f03a9b83b996a6622808c49c124d466771825163d7
4
- data.tar.gz: 3f49b195d406ce1a7b5ec2f50bba2e12fc37d2c0f4d312998f3ce2a3173ec88d
3
+ metadata.gz: fcb4b8401a210b2fafb35c9947df32c772b83740102b95b982146c573ae76f12
4
+ data.tar.gz: 41e059ab9a032725874117f4d7f18e6e0c22e568aaec142002b2f9bf5400ddac
5
5
  SHA512:
6
- metadata.gz: 99195548b29bdc67139eff0537099c4ee6384efec7eaa5733cd0edbe6b6998ade9c1fcce775b3f8e576ad63ca9dc62a5626cb6b1d9e8d5fb0410611e264d0121
7
- data.tar.gz: f9d9fd7a8d3be305447f5612da41fa4dffdfac2536b7015a3b8404395f143feb28ca08ac132c3bfe0bab9b73302e9a7fd59067754410ab629f20fb5280209aba
6
+ metadata.gz: f6242025f4207c68d8ac1e9a7cb87ede0fcbcbf4f7937b44d9b9e8faff43a121af2cb8c58bbdb2fac0d1959d197efb95e1718968c054ef9e213641fe2da6641a
7
+ data.tar.gz: 4a007e48f1f7f3866d90cf5080847d0e6af9dba41e525bdd78890419f9edc0f8484dbd3d83d01529185477210d1878527d85506a65a927970c864e9f7d6a60f4
@@ -93,6 +93,12 @@ module ActiveRecord
93
93
 
94
94
  args.each { |name| column(name, kind, **options.except(:limit)) }
95
95
  end
96
+
97
+ private
98
+
99
+ def valid_column_definition_options
100
+ super + [:array, :low_cardinality, :fixed_string, :value, :type]
101
+ end
96
102
  end
97
103
 
98
104
  class IndexDefinition
@@ -143,7 +143,10 @@ module ActiveRecord
143
143
  def request(sql, format = nil, settings = {})
144
144
  formatted_sql = apply_format(sql, format)
145
145
  request_params = @connection_config || {}
146
- @connection.post("/?#{request_params.merge(settings).to_param}", formatted_sql, 'User-Agent' => "Clickhouse ActiveRecord #{ClickhouseActiverecord::VERSION}")
146
+ @connection.post("/?#{request_params.merge(settings).to_param}", formatted_sql, {
147
+ 'User-Agent' => "Clickhouse ActiveRecord #{ClickhouseActiverecord::VERSION}",
148
+ 'Content-Type' => 'application/x-www-form-urlencoded',
149
+ })
147
150
  end
148
151
 
149
152
  def apply_format(sql, format)
@@ -293,7 +293,11 @@ module ActiveRecord
293
293
  options = apply_replica(table_name, options)
294
294
  td = create_table_definition(apply_cluster(table_name), **options)
295
295
  block.call td if block_given?
296
- td.column(:id, options[:id], null: false) if options[:id].present? && td[:id].blank? && options[:as].blank?
296
+ # support old migration version: in 5.0 options id: :integer, but 7.1 options empty
297
+ # todo remove auto add id column in future
298
+ if (!options.key?(:id) || options[:id].present? && options[:id] != false) && td[:id].blank? && options[:as].blank?
299
+ td.column(:id, options[:id] || :integer, null: false)
300
+ end
297
301
 
298
302
  if options[:force]
299
303
  drop_table(table_name, options.merge(if_exists: true))
@@ -1,3 +1,3 @@
1
1
  module ClickhouseActiverecord
2
- VERSION = '1.0.9'
2
+ VERSION = '1.0.10'
3
3
  end
@@ -37,6 +37,8 @@ namespace :clickhouse do
37
37
  end
38
38
 
39
39
  namespace :structure do
40
+ config = ActiveRecord::Base.configurations.configs_for(env_name: Rails.env, name: 'clickhouse')
41
+
40
42
  desc 'Load database structure'
41
43
  task load: ['db:check_protected_environments'] do
42
44
  ClickhouseActiverecord::Tasks.new(config).structure_load(Rails.root.join('db/clickhouse_structure.sql'))
@@ -85,8 +87,4 @@ namespace :clickhouse do
85
87
  Rake::Task['clickhouse:schema:dump'].execute(simple: true)
86
88
  end
87
89
  end
88
-
89
- def config
90
- ActiveRecord::Base.configurations.configs_for(env_name: Rails.env, name: 'clickhouse')
91
- end
92
90
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: clickhouse-activerecord
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.9
4
+ version: 1.0.10
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sergey Odintsov
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-05-03 00:00:00.000000000 Z
11
+ date: 2024-07-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler