#!/usr/bin/env ruby require "bundler/inline" gemfile do source "https://rubygems.org" gem "activesupport", "~> #{ENV["AS_VERSION"]}" end require "active_support" p RUBY_VERSION p ActiveSupport.version.to_s module C extend ActiveSupport::DescendantsTracker end p C.subclasses module M extend ActiveSupport::DescendantsTracker end p M.subclasses # $ AS_VERSION=6.1 ruby module-subclasses.rb # "3.1.0" # "6.1.4.6" # [] # [] # $ AS_VERSION=7.0 ruby module-subclasses.rb # "3.0.2" # "7.0.2.2" # [] # [] # $ AS_VERSION=7.0 ruby module-subclasses.rb # "3.1.0" # "7.0.2.2" # [] # /path/to/activesupport-7.0.2.2/lib/active_support/descendants_tracker.rb:83:in `subclasses': super: no superclass method `subclasses' for M:Module (NoMethodError)