From 2699ec6c395e505c3e3505fc95f2a28f6bacc017 Mon Sep 17 00:00:00 2001 From: Mike Dalessio Date: Sat, 7 Feb 2026 12:42:35 -0500 Subject: [PATCH] Fix circular require warning in railtie MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The railtie unconditionally required "active_resource", which created a circular dependency when loaded from active_resource.rb: active_resource.rb → active_resource/railtie.rb → active_resource.rb (circular!) This produced the following warning on Ruby 3.4: warning: loading in progress, circular require considered harmful - .../activeresource/lib/active_resource.rb Guard the require so it only loads active_resource when the module isn't already defined. This avoids the circular require in the normal load path (where active_resource.rb loads the railtie) while still supporting the direct `require "active_resource/railtie"` entry point used by some applications. --- lib/active_resource/railtie.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/active_resource/railtie.rb b/lib/active_resource/railtie.rb index 800f1208e2..9b59c61442 100644 --- a/lib/active_resource/railtie.rb +++ b/lib/active_resource/railtie.rb @@ -1,6 +1,6 @@ # frozen_string_literal: true -require "active_resource" +require "active_resource" unless defined?(ActiveResource) require "rails" module ActiveResource