From d331101822af752ab97bdf63557968146cbb8cee Mon Sep 17 00:00:00 2001 From: Jason Lee Date: Fri, 26 Dec 2025 19:03:38 +1100 Subject: [PATCH] add ruby4? --- lib/scout_apm/environment.rb | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/lib/scout_apm/environment.rb b/lib/scout_apm/environment.rb index 52702a37..31855d49 100644 --- a/lib/scout_apm/environment.rb +++ b/lib/scout_apm/environment.rb @@ -190,6 +190,11 @@ def ruby_3? @ruby_3 = defined?(RUBY_VERSION) && RUBY_VERSION.match(/^3/) end + def ruby_4? + return @ruby_4 if defined?(@ruby_4) + @ruby_4 = defined?(RUBY_VERSION) && RUBY_VERSION.match(/^4/) + end + def ruby_minor return @ruby_minor if defined?(@ruby_minor) @ruby_minor = defined?(RUBY_VERSION) && RUBY_VERSION.split(".")[1].to_i @@ -197,12 +202,12 @@ def ruby_minor # Returns true if this Ruby version supports Module#prepend. def supports_module_prepend? - ruby_2? || ruby_3? + ruby_4? || ruby_3? || ruby_2? end # Returns true if this Ruby version makes positional and keyword arguments incompatible def supports_kwarg_delegation? - ruby_3? || (ruby_2? && ruby_minor >= 7) + ruby_4? || ruby_3? || (ruby_2? && ruby_minor >= 7) end # Returns a string representation of the OS (ex: darwin, linux)