From 2337724443f62f4612c97801bd024c2c15a9d536 Mon Sep 17 00:00:00 2001 From: Matthew Keeler Date: Thu, 9 Oct 2025 11:41:35 -0400 Subject: [PATCH 1/2] fix: Explicitly require openssl gem OpenSSL 3.6.0 introduced a change in behavior which prevents the SDK from initializing. To learn more, refer to [this github ticket][1]. To mitigate this, we explicitly depend on the openssl gem instead of loading the default version shipped with Ruby. This SDK still advertises Ruby 3.1+ support, which should require a minimum threshold of openssl-v3.0+. However, Ruby 3.1 is EOL and the openssl maintainer only implemented fixes in openssl-v3.1+. Thus, we set the minimum to openssl-v3.1. [1]: https://github.com/ruby/openssl/issues/949 fixes #333 --- launchdarkly-server-sdk.gemspec | 1 + 1 file changed, 1 insertion(+) diff --git a/launchdarkly-server-sdk.gemspec b/launchdarkly-server-sdk.gemspec index 5a54c526..7bc450db 100644 --- a/launchdarkly-server-sdk.gemspec +++ b/launchdarkly-server-sdk.gemspec @@ -39,6 +39,7 @@ Gem::Specification.new do |spec| spec.add_runtime_dependency "concurrent-ruby", "~> 1.1" spec.add_runtime_dependency "ld-eventsource", "2.2.6" spec.add_runtime_dependency "observer", "~> 0.1.2" + spec.add_runtime_dependency "openssl", "~> 3.1" spec.add_runtime_dependency "semantic", "~> 1.6" spec.add_runtime_dependency "zlib", "~> 3.1" unless RUBY_PLATFORM == "java" # Please keep ld-eventsource dependency as an exact version so that bugfixes to From fefbbb815bc1b3004c8260a370cc5340f77ce7d5 Mon Sep 17 00:00:00 2001 From: Matthew Keeler Date: Thu, 9 Oct 2025 13:29:34 -0400 Subject: [PATCH 2/2] Set minimum at 3.1.2 --- launchdarkly-server-sdk.gemspec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/launchdarkly-server-sdk.gemspec b/launchdarkly-server-sdk.gemspec index 7bc450db..8c7bfc5a 100644 --- a/launchdarkly-server-sdk.gemspec +++ b/launchdarkly-server-sdk.gemspec @@ -39,7 +39,7 @@ Gem::Specification.new do |spec| spec.add_runtime_dependency "concurrent-ruby", "~> 1.1" spec.add_runtime_dependency "ld-eventsource", "2.2.6" spec.add_runtime_dependency "observer", "~> 0.1.2" - spec.add_runtime_dependency "openssl", "~> 3.1" + spec.add_runtime_dependency "openssl", "~> 3.1", ">= 3.1.2" spec.add_runtime_dependency "semantic", "~> 1.6" spec.add_runtime_dependency "zlib", "~> 3.1" unless RUBY_PLATFORM == "java" # Please keep ld-eventsource dependency as an exact version so that bugfixes to