From d044ffd77fb3a486bbaca350980beee3f222bdb1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?David=20Rodr=C3=ADguez?= Date: Sun, 5 Dec 2021 09:23:28 +0100 Subject: [rubygems/rubygems] Allow using `Gem::Version` without loading the rest of rubygems https://github.com/rubygems/rubygems/commit/1b862537a5 --- lib/rubygems/version.rb | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'lib/rubygems') diff --git a/lib/rubygems/version.rb b/lib/rubygems/version.rb index 20bbff4fdd..37fd71edc0 100644 --- a/lib/rubygems/version.rb +++ b/lib/rubygems/version.rb @@ -149,6 +149,15 @@ # For the last example, single-digit versions are automatically extended with # a zero to give a sensible result. +# Our code style opens classes directly without opening the intermediate +# modules. This works because tha main entrypoint `rubygems.rb`, which defines +# the root `Gem` module, is usually required first. But in this case we want to +# allow using `Gem::Version` without loading the rest of rubygems, so we +# explicit define the `Gem` placeholder module first. +module Gem; end + +require_relative "deprecate" + class Gem::Version autoload :Requirement, File.expand_path('requirement', __dir__) -- cgit v1.2.3