sequel-activerecord_connection 1.4.0 → 1.4.1
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 +4 -4
- data/CHANGELOG.md +6 -0
- data/lib/sequel/extensions/activerecord_connection.rb +15 -4
- data/sequel-activerecord_connection.gemspec +1 -1
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f6e3934544ded0f6495b75e5a04a8a9adb1d98d9d6b5d76420c45b72c94a4898
|
4
|
+
data.tar.gz: 44fcd4c9c5b5c0f3c1fc9804b9ae3568aca9d7d2623fbb3e3181b52c1e2acc2a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 560c34801be1e01717c4d1939ab5745c473df770dbe0d6366ad6cf9f14fe2b7920ae0bd39c8b59b602a70b12a1bbeb3ef34522c02410ad7c6a1d8fb8139340dc
|
7
|
+
data.tar.gz: fe7b20203fafa3414360e5cee9aeb6994b0205838dc82abcc83c9a03b17a8e707c69c49c5f06c4ec6c4019216d80a1e6b0c0f843a935ef11c35601a323064146
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,9 @@
|
|
1
|
+
## 1.4.1 (2024-05-10)
|
2
|
+
|
3
|
+
* Fix `#rollback_checker`, `#rollback_on_exit` and `#after_rollback` not working reliably on JRuby and Sequel 5.78+ (@janko)
|
4
|
+
|
5
|
+
* Use native transaction callbacks on Active Record 7.2+ (@janko)
|
6
|
+
|
1
7
|
## 1.4.0 (2024-03-19)
|
2
8
|
|
3
9
|
* Only warn when Sequel extension fails to initialize because there is no database (@janko)
|
@@ -1,7 +1,5 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
require "after_commit_everywhere"
|
4
|
-
|
5
3
|
module Sequel
|
6
4
|
module ActiveRecordConnection
|
7
5
|
Error = Class.new(Sequel::Error)
|
@@ -16,6 +14,7 @@ module Sequel
|
|
16
14
|
def self.extended(db)
|
17
15
|
db.activerecord_model = ActiveRecord::Base
|
18
16
|
db.opts[:test] = false unless db.opts.key?(:test)
|
17
|
+
db.instance_variable_set(:@transactions, {}) if RUBY_ENGINE == "jruby"
|
19
18
|
|
20
19
|
begin
|
21
20
|
require "sequel/extensions/activerecord_connection/#{db.adapter_scheme}"
|
@@ -120,7 +119,7 @@ module Sequel
|
|
120
119
|
# after_commit_everywhere gem.
|
121
120
|
def add_transaction_hook(conn, type, block)
|
122
121
|
if _trans(conn)[:activerecord]
|
123
|
-
|
122
|
+
activerecord_transaction_callback(type, &block)
|
124
123
|
else
|
125
124
|
super
|
126
125
|
end
|
@@ -132,12 +131,24 @@ module Sequel
|
|
132
131
|
# after_commit_everywhere gem.
|
133
132
|
def add_savepoint_hook(conn, type, block)
|
134
133
|
if _trans(conn)[:savepoints].last[:activerecord]
|
135
|
-
|
134
|
+
activerecord_transaction_callback(type, &block)
|
136
135
|
else
|
137
136
|
super
|
138
137
|
end
|
139
138
|
end
|
140
139
|
|
140
|
+
if ActiveRecord.version >= Gem::Version.new("7.2.0.alpha")
|
141
|
+
def activerecord_transaction_callback(type, &block)
|
142
|
+
activerecord_connection.current_transaction.public_send(type, &block)
|
143
|
+
end
|
144
|
+
else
|
145
|
+
require "after_commit_everywhere"
|
146
|
+
|
147
|
+
def activerecord_transaction_callback(type, &block)
|
148
|
+
AfterCommitEverywhere.public_send(type, &block)
|
149
|
+
end
|
150
|
+
end
|
151
|
+
|
141
152
|
# Prevents sql_log_normalizer DB extension from skipping the normalization.
|
142
153
|
def skip_logging?
|
143
154
|
return false if @loaded_extensions.include?(:sql_log_normalizer)
|
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.4.
|
4
|
+
version: 1.4.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Janko Marohnić
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-
|
11
|
+
date: 2024-05-09 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: sequel
|
@@ -138,7 +138,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
138
138
|
- !ruby/object:Gem::Version
|
139
139
|
version: '0'
|
140
140
|
requirements: []
|
141
|
-
rubygems_version: 3.5.
|
141
|
+
rubygems_version: 3.5.9
|
142
142
|
signing_key:
|
143
143
|
specification_version: 4
|
144
144
|
summary: Allows Sequel to use ActiveRecord connection for database interaction.
|