Skip to content

Commit a8ffee4

Browse files
Ruby 3 Patch
1 parent 50e8131 commit a8ffee4

File tree

4 files changed

+18
-123
lines changed

4 files changed

+18
-123
lines changed

lib/action_dispatch/session/active_record_store.rb

+13-16
Original file line numberDiff line numberDiff line change
@@ -58,15 +58,11 @@ class ActiveRecordStore < ActionDispatch::Session::AbstractStore
5858
cattr_accessor :session_class
5959

6060
SESSION_RECORD_KEY = 'rack.session.record'
61-
if Rack.const_defined?(:RACK_SESSION_OPTIONS)
62-
ENV_SESSION_OPTIONS_KEY = Rack::RACK_SESSION_OPTIONS
63-
else
64-
ENV_SESSION_OPTIONS_KEY = Rack::Session::Abstract::ENV_SESSION_OPTIONS_KEY
65-
end
61+
ENV_SESSION_OPTIONS_KEY = Rack::RACK_SESSION_OPTIONS
6662

6763
private
6864
def get_session(request, sid)
69-
logger.silence_logger do
65+
logger.silence do
7066
unless sid and session = @@session_class.find_by_session_id(sid)
7167
# If the sid was nil or if there is no pre-existing session under the sid,
7268
# force the generation of a new sid and associate a new session associated with the new sid
@@ -79,7 +75,7 @@ def get_session(request, sid)
7975
end
8076

8177
def write_session(request, sid, session_data, options)
82-
logger.silence_logger do
78+
logger.silence do
8379
record = get_session_model(request, sid)
8480
record.data = session_data
8581
return false unless record.save
@@ -96,7 +92,7 @@ def write_session(request, sid, session_data, options)
9692
end
9793

9894
def delete_session(request, session_id, options)
99-
logger.silence_logger do
95+
logger.silence do
10096
if sid = current_session_id(request)
10197
if model = @@session_class.find_by_session_id(sid)
10298
data = model.data
@@ -120,7 +116,7 @@ def delete_session(request, session_id, options)
120116
end
121117

122118
def get_session_model(request, id)
123-
logger.silence_logger do
119+
logger.silence do
124120
model = @@session_class.find_by_session_id(id)
125121
if !model
126122
id = generate_sid
@@ -141,14 +137,15 @@ def find_session(request, id)
141137
[model.session_id, model.data]
142138
end
143139

140+
module NilLogger
141+
def self.silence
142+
yield
143+
end
144+
end
145+
144146
def logger
145-
ActiveRecord::Base.logger || ActiveRecord::SessionStore::NilLogger
147+
ActiveRecord::Base.logger || NilLogger
146148
end
147149
end
148150
end
149-
end
150-
151-
if ActiveRecord::VERSION::MAJOR == 4
152-
require 'action_dispatch/session/legacy_support'
153-
ActionDispatch::Session::ActiveRecordStore.send(:include, ActionDispatch::Session::LegacySupport)
154-
end
151+
end

lib/active_record/session_store.rb

+1-9
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
require 'active_record'
22
require 'active_record/session_store/version'
33
require 'action_dispatch/session/active_record_store'
4-
require "active_record/session_store/extension/logger_silencer"
54
require 'active_support/core_ext/hash/keys'
65
require 'multi_json'
76

@@ -116,11 +115,4 @@ def self.dump(value)
116115
end
117116

118117
require 'active_record/session_store/sql_bypass'
119-
require 'active_record/session_store/railtie' if defined?(Rails)
120-
121-
Logger.send :include, ActiveRecord::SessionStore::Extension::LoggerSilencer
122-
123-
begin
124-
require "syslog/logger"
125-
Syslog::Logger.send :include, ActiveRecord::SessionStore::Extension::LoggerSilencer
126-
rescue LoadError; end
118+
require 'active_record/session_store/railtie' if defined?(Rails)

lib/active_record/session_store/extension/logger_silencer.rb

-78
This file was deleted.

test/logger_silencer_test.rb

+4-20
Original file line numberDiff line numberDiff line change
@@ -10,11 +10,7 @@ def set_session_value
1010
end
1111

1212
def get_session_value
13-
if ActiveRecord::VERSION::MAJOR == 4
14-
render :text => "foo: #{session[:foo].inspect}"
15-
else
16-
render :plain => "foo: #{session[:foo].inspect}"
17-
end
13+
render :plain => "foo: #{session[:foo].inspect}"
1814
end
1915
end
2016

@@ -41,25 +37,13 @@ def setup
4137
end
4238

4339
def test_log_silencer_with_logger_not_raise_exception
44-
with_logger Logger.new(Tempfile.new("tempfile")) do
40+
with_logger ActiveSupport::Logger.new(Tempfile.new("tempfile")) do
4541
with_test_route_set do
4642
get "/set_session_value"
4743
end
4844
end
4945
end
5046

51-
begin
52-
require "syslogger/logger"
53-
54-
def test_log_silencer_with_syslog_logger_not_raise_exception
55-
with_logger Syslog::Logger.new("ar_session_store_test") do
56-
with_test_route_set do
57-
get "/set_session_value"
58-
end
59-
end
60-
end
61-
rescue LoadError; end
62-
6347
private
6448

6549
def with_logger(logger)
@@ -71,10 +55,10 @@ def with_logger(logger)
7155
end
7256

7357
def with_fake_logger(&block)
74-
with_logger(Logger.new(fake_logger), &block)
58+
with_logger(ActiveSupport::Logger.new(fake_logger), &block)
7559
end
7660

7761
def fake_logger
7862
@fake_logger ||= StringIO.new
7963
end
80-
end
64+
end

0 commit comments

Comments
 (0)