dalli 5.3.0 → 5.3.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 2bf7ed15c1eb033940d2d1fb04d6577f9676d12bb30b547da704a56b282f0cdf
4
- data.tar.gz: 65208448d43b257b0cd4f3af9b6f4d01e13c509f13482a2f641d6d01a1573bd7
3
+ metadata.gz: ecf53cb1683b72cd89df9074f442a040de892003a6f39254e4958654a9f430a7
4
+ data.tar.gz: 46b400e8a5cb63261af72340de184bf7f1188a7b5fc2454a052af13e8ff62167
5
5
  SHA512:
6
- metadata.gz: ee59bbf0d4795a614a143f00594f0f90fcb17592ffb7439bf72a824dbb19d135718e18b5101706819f01039999b4d0c6c7f59c9aea98f09d78e7d6bfee4176ea
7
- data.tar.gz: ffe4b0170ad6a31071ba8fe5275a4479b83efd31fe83bb97c790b19b86bf44d19ed6fc5bb67d2c2862a5e2d82068106d114e06a566c71c92d780e714762f5f26
6
+ metadata.gz: 518451bbab10db4e47140cd9b716c1845ca1b1be08f95e5e5996d4f6dc655f7a9bfd2a40e51c968cdaa45eaa3355518d41a0e7c36a37367d2c387bc9dcb18bed
7
+ data.tar.gz: 84c9fa710a82fb7f444f50b84820e43c7697050fd70376117d6d9daa30f905d159bd1639e29762c027391b8521361888075b47df476f6cfb59ddcb0e76496f78
data/CHANGELOG.md CHANGED
@@ -4,6 +4,13 @@ Dalli Changelog
4
4
  Unreleased
5
5
  ==========
6
6
 
7
+ 5.3.1
8
+ ==========
9
+
10
+ Bug fixes:
11
+
12
+ - `Rack::Session::Dalli`'s 401 for a session deleted mid-request called `Hash#slice` on the session options. A Rails session store puts an `ActionDispatch::Request::Session::Options` there, so the 401 raised `NoMethodError` instead of expiring the cookie (#1291, @seballot)
13
+
7
14
  5.3.0
8
15
  ==========
9
16
 
data/lib/dalli/version.rb CHANGED
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Dalli
4
- VERSION = '5.3.0'
4
+ VERSION = '5.3.1'
5
5
 
6
6
  MIN_SUPPORTED_MEMCACHED_VERSION = '1.6.27'
7
7
  end
@@ -195,9 +195,12 @@ module Rack
195
195
  end
196
196
  end
197
197
 
198
+ # Rails stores an ActionDispatch::Request::Session::Options in the env, not a
199
+ # Hash. It implements [] (and to_hash) but not Hash#slice, so slicing it
200
+ # raised NoMethodError instead of returning this 401.
198
201
  def missing_session_response(env)
199
202
  options = env[Rack::RACK_SESSION_OPTIONS] || @default_options
200
- cookie = Rack::Utils.delete_set_cookie_header(key, options.slice(:path, :domain))
203
+ cookie = Rack::Utils.delete_set_cookie_header(key, { path: options[:path], domain: options[:domain] })
201
204
  [401, { 'content-type' => 'text/plain', 'set-cookie' => cookie }, ['Wrong session ID']]
202
205
  end
203
206
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dalli
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.3.0
4
+ version: 5.3.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Peter M. Goldstein