From e582ba55916579adf6a1cb1a41ec37301e84b4ab Mon Sep 17 00:00:00 2001 From: Matt Muller Date: Sun, 17 Nov 2024 10:19:38 -0500 Subject: [PATCH 1/3] Prepare version 1 --- CHANGELOG.md | 8 +++++ aws-actiondispatch-dynamodb.gemspec | 2 +- .../session/dynamo_db_store.rb | 32 +++---------------- 3 files changed, 13 insertions(+), 29 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index c7b351b..e33868e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,14 @@ Unreleased Changes ------------------ +* Feature - [Major Version] Bump major version to 1.0.0. + +* Issue - Drop support for any non-aws prefixed configuration keys. + +* Issue - Drop support for the `:dynamodb_store` configuration name. + +* Feature - Bump `aws-sessionstore-dynamodb` dependency to `~> 3`. + 0.1.0 (2024-11-16) ------------------ diff --git a/aws-actiondispatch-dynamodb.gemspec b/aws-actiondispatch-dynamodb.gemspec index d11c94c..43bc24a 100644 --- a/aws-actiondispatch-dynamodb.gemspec +++ b/aws-actiondispatch-dynamodb.gemspec @@ -13,7 +13,7 @@ Gem::Specification.new do |spec| spec.license = 'Apache-2.0' spec.files = Dir['LICENSE', 'CHANGELOG.md', 'VERSION', 'lib/**/*'] - spec.add_dependency('aws-sessionstore-dynamodb', '~> 2') + spec.add_dependency('aws-sessionstore-dynamodb', '~> 3') spec.add_dependency('actionpack', '>= 7.1.0') spec.add_dependency('railties', '>= 7.1.0') diff --git a/lib/action_dispatch/session/dynamo_db_store.rb b/lib/action_dispatch/session/dynamo_db_store.rb index 0a6e7ff..429baab 100644 --- a/lib/action_dispatch/session/dynamo_db_store.rb +++ b/lib/action_dispatch/session/dynamo_db_store.rb @@ -13,15 +13,13 @@ module Session # unless otherwise provided. # # Configuration can also be provided in YAML files from Rails config, either - # in `config/dynamo_db_session_store.yml` or `config/dynamo_db_session_store/{Rails.env}.yml`. + # in `config/aws_dynamo_db_session_store.yml` or + # `config/aws_dynamo_db_session_store/{Rails.env}.yml`. # Configuration files that are environment-specific will take precedence. # # @see https://docs.aws.amazon.com/sdk-for-ruby/aws-sessionstore-dynamodb/api/Aws/SessionStore/DynamoDB/Configuration.html class DynamoDbStore < ActionDispatch::Session::AbstractStore def initialize(app, options = {}) - Rails.logger.warn('** Dynamo DB Session Storage no longer lives in aws-sdk-rails. ' \ - 'To avoid disruption, please add aws-actiondispatch-dynamodb ~> 0 to your Gemfile to ' \ - 'enable this feature when upgrading to aws-sdk-rails ~> 5. **') options[:config_file] ||= config_file options[:secret_key] ||= Rails.application.secret_key_base @middleware = Aws::SessionStore::DynamoDB::RackMiddleware.new(app, options) @@ -51,34 +49,12 @@ def delete_session(req, sid, options) @middleware.delete_session(req, sid, options) end - # rubocop:disable Metrics def config_file file = ENV.fetch('AWS_DYNAMO_DB_SESSION_CONFIG_FILE', nil) - file ||= Rails.root.join("config/dynamo_db_session_store/#{Rails.env}.yml") - file = Rails.root.join('config/dynamo_db_session_store.yml') unless File.exist?(file) - if File.exist?(file) - Rails.logger.warn('The dynamo_db_session_store configuration file has been renamed.' \ - 'Please use aws_dynamo_db_session_store/.yml or ' \ - 'aws_dynamo_db_session_store.yml. This will be removed in ' \ - 'aws-actiondispatch-dynamodb ~> 1') - else - file = Rails.root.join("config/aws_dynamo_db_session_store/#{Rails.env}.yml") - file = Rails.root.join('config/aws_dynamo_db_session_store.yml') unless File.exist?(file) - end - + file = Rails.root.join("config/aws_dynamo_db_session_store/#{Rails.env}.yml") unless file + file = Rails.root.join('config/aws_dynamo_db_session_store.yml') unless File.exist?(file) file if File.exist?(file) end end - # rubocop:enable Metrics - - # @api private - class DynamodbStore < DynamoDbStore - def initialize(app, options = {}) - Rails.logger.warn('** Session Store :dynamodb_store configuration key has been renamed to :dynamo_db_store, ' \ - 'please use the new key instead. The :dynamodb_store key name will be removed in ' \ - 'aws-actiondispatch-dynamodb ~> 1 **') - super - end - end end end From 5d2e41a61061a2e4495ce89ddc6bf5dd4c44b0de Mon Sep 17 00:00:00 2001 From: Matt Muller Date: Sun, 17 Nov 2024 10:23:49 -0500 Subject: [PATCH 2/3] Rubocop --- lib/action_dispatch/session/dynamo_db_store.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/action_dispatch/session/dynamo_db_store.rb b/lib/action_dispatch/session/dynamo_db_store.rb index 429baab..c664788 100644 --- a/lib/action_dispatch/session/dynamo_db_store.rb +++ b/lib/action_dispatch/session/dynamo_db_store.rb @@ -51,7 +51,7 @@ def delete_session(req, sid, options) def config_file file = ENV.fetch('AWS_DYNAMO_DB_SESSION_CONFIG_FILE', nil) - file = Rails.root.join("config/aws_dynamo_db_session_store/#{Rails.env}.yml") unless file + file ||= Rails.root.join("config/aws_dynamo_db_session_store/#{Rails.env}.yml") file = Rails.root.join('config/aws_dynamo_db_session_store.yml') unless File.exist?(file) file if File.exist?(file) end From 2c4050215039d5056c261bf3e43b50eb31bc8729 Mon Sep 17 00:00:00 2001 From: Matt Muller Date: Sun, 17 Nov 2024 11:48:01 -0500 Subject: [PATCH 3/3] Remove changelog entry --- CHANGELOG.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index e33868e..b454669 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,8 +7,6 @@ Unreleased Changes * Issue - Drop support for the `:dynamodb_store` configuration name. -* Feature - Bump `aws-sessionstore-dynamodb` dependency to `~> 3`. - 0.1.0 (2024-11-16) ------------------