diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 56110ec..e16f0c3 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -10,7 +10,7 @@ on: - main env: - ruby_version: 3.3 + ruby_version: 3.4 jobs: test: @@ -18,7 +18,7 @@ jobs: strategy: fail-fast: false matrix: - ruby: [2.7, '3.0', 3.1, 3.2, 3.3, jruby-9.4] + ruby: [2.7, '3.0', 3.1, 3.2, 3.3, 3.4, jruby-9.4, jruby-10.0] services: dynamodb: image: amazon/dynamodb-local:latest diff --git a/lib/aws/session_store/dynamo_db/locking/pessimistic.rb b/lib/aws/session_store/dynamo_db/locking/pessimistic.rb index 7f5c3d7..36d15bf 100644 --- a/lib/aws/session_store/dynamo_db/locking/pessimistic.rb +++ b/lib/aws/session_store/dynamo_db/locking/pessimistic.rb @@ -59,7 +59,7 @@ def get_lock_time_opts(sid) # @return [Time] Time stamp for which the session was locked. def lock_time(sid) result = @config.dynamo_db_client.get_item(get_lock_time_opts(sid)) - (result[:item]['locked_at']).to_f if result[:item]['locked_at'] + result[:item]['locked_at']&.to_f end # @return [String] Session data. @@ -138,7 +138,7 @@ def expect_lock_time(env) { expected: { 'locked_at' => { - value: (env['locked_at']).to_s, + value: env['locked_at'].to_s, exists: true } } diff --git a/spec/aws/session_store/dynamo_db/rack_middleware_integration_spec.rb b/spec/aws/session_store/dynamo_db/rack_middleware_integration_spec.rb index 6fbbced..a6ee843 100644 --- a/spec/aws/session_store/dynamo_db/rack_middleware_integration_spec.rb +++ b/spec/aws/session_store/dynamo_db/rack_middleware_integration_spec.rb @@ -24,7 +24,7 @@ def attr_opts def extract_time(sid) options = table_opts(sid).merge(attr_opts) - Time.at((config.dynamo_db_client.get_item(options)[:item]['created_at']).to_f) + Time.at(config.dynamo_db_client.get_item(options)[:item]['created_at'].to_f) end let(:options) do