sequel-activerecord_connection 1.2.1 → 1.2.2

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: 72a4a1bf22a4a83664c7925b1d0b78ee5d20777eb12ffec4df9bd4b0c60a9930
4
- data.tar.gz: 58c32e5d224d136cb797453bd8ac70f40d964160c4996377909349c8bb324af5
3
+ metadata.gz: 4bb2b81760b45990a9bea2801f8a243cfc180853ad450d652cf888cd45844033
4
+ data.tar.gz: 73ae4c6341a3c694423b4e20da86f01cce3324d37a9a29143eb2f2e420d45288
5
5
  SHA512:
6
- metadata.gz: 7cc94ff1690360f805eec685404d9017b9df0f327c32110e54694dd1da148f1141990a468b69787896ea5e9a4b13d84c41783d4dcee0fd8b1f020defd9288961
7
- data.tar.gz: b67647d492d7d31478ca6db7ba4b107914d8ba692bd41bf4596cab5f06a16ee62b2f19ab199dfce9566234ac876b349c212199a23cbec2c15884108cf1e41f79
6
+ metadata.gz: 4e27142472fabc36703d3cca6828e005858d60088a88bbb8f78c58dba5f6e9a2b2ae349ff6d39451558d7dd3e4e32e92d49818af88af9bb6bc18a522c283bc38
7
+ data.tar.gz: 6dff47d6fe0adf995dc3738e932bda92b15279b56bdf22750e6c42058031ca2b2f152e26cd80b2a09e3be460a1be8695a3645df8a2bcd4a87430ebfc3243fa98
@@ -1,4 +1,10 @@
1
- ## 1.2.1 (2020-01-10)
1
+ ## 1.2.2 (2021-01-11)
2
+
3
+ * Ensure Active Record queries inside a Sequel transaction are typemapped correctly in postgres adapter (@janko)
4
+
5
+ * Fix executing Active Record queries inside a Sequel transaction not working in mysql2 adapter (@janko)
6
+
7
+ ## 1.2.1 (2021-01-10)
2
8
 
3
9
  * Fix original mysql2 query options not being restored after nested `DB#synchronize` calls, e.g. when using Sequel transactions (@janko)
4
10
 
@@ -5,21 +5,26 @@ module Sequel
5
5
  module Mysql2
6
6
  def synchronize(*)
7
7
  super do |conn|
8
- if conn.instance_variable_defined?(:@sequel_default_query_options)
9
- return yield(conn)
10
- end
11
-
12
8
  # required for prepared statements
13
- conn.instance_variable_set(:@sequel_default_query_options, conn.query_options.dup)
14
9
  Utils.add_prepared_statements_cache(conn)
15
10
 
16
- conn.query_options.merge!(as: :hash, symbolize_keys: true, cache_rows: false)
11
+ yield conn
12
+ end
13
+ end
14
+
15
+ private
16
+
17
+ def _execute(conn, sql, opts)
18
+ if conn.instance_variable_defined?(:@sequel_default_query_options)
19
+ return super
20
+ end
17
21
 
18
- begin
19
- yield conn
20
- ensure
21
- conn.query_options.replace(conn.remove_instance_variable(:@sequel_default_query_options))
22
- end
22
+ conn.instance_variable_set(:@sequel_default_query_options, conn.query_options.dup)
23
+ conn.query_options.merge!(as: :hash, symbolize_keys: true, cache_rows: false)
24
+ begin
25
+ super
26
+ ensure
27
+ conn.query_options.replace(conn.remove_instance_variable(:@sequel_default_query_options))
23
28
  end
24
29
  end
25
30
  end
@@ -10,9 +10,7 @@ module Sequel
10
10
 
11
11
  Utils.add_prepared_statements_cache(conn)
12
12
 
13
- Utils.set_value(conn, :type_map_for_results, PG::TypeMapAllStrings.new) do
14
- yield conn
15
- end
13
+ yield conn
16
14
  end
17
15
  end
18
16
 
@@ -84,7 +82,9 @@ module Sequel
84
82
  # Return the PG::Result containing the query results.
85
83
  def execute_query(sql, args)
86
84
  @db.log_connection_yield(sql, self, args) do
87
- args ? async_exec_params(sql, args) : async_exec(sql)
85
+ Utils.set_value(self, :type_map_for_results, PG::TypeMapAllStrings.new) do
86
+ args ? async_exec_params(sql, args) : async_exec(sql)
87
+ end
88
88
  end
89
89
  end
90
90
  end
@@ -15,8 +15,16 @@ module Sequel
15
15
 
16
16
  Utils.add_prepared_statements_cache(conn)
17
17
 
18
+ yield conn
19
+ end
20
+ end
21
+
22
+ private
23
+
24
+ def _execute(type, sql, opts, &block)
25
+ synchronize(opts[:server]) do |conn|
18
26
  Utils.set_value(conn, :results_as_hash, nil) do
19
- yield conn
27
+ super
20
28
  end
21
29
  end
22
30
  end
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |spec|
2
2
  spec.name = "sequel-activerecord_connection"
3
- spec.version = "1.2.1"
3
+ spec.version = "1.2.2"
4
4
  spec.authors = ["Janko Marohnić"]
5
5
  spec.email = ["janko.marohnic@gmail.com"]
6
6
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sequel-activerecord_connection
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.1
4
+ version: 1.2.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Janko Marohnić
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-01-10 00:00:00.000000000 Z
11
+ date: 2021-01-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: sequel