| 
									
										
										
										
											2022-07-16 02:49:33 +01:00
										 |  |  | #!/usr/bin/env ruby | 
					
						
							| 
									
										
										
										
											2020-10-10 14:16:11 +02:00
										 |  |  | # typed: true | 
					
						
							| 
									
										
										
										
											2020-09-03 09:43:41 +01:00
										 |  |  | # frozen_string_literal: true | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | HOMEBREW_REQUIRED_RUBY_VERSION = ARGV.first.freeze | 
					
						
							|  |  |  | raise "No Ruby version passed!" if HOMEBREW_REQUIRED_RUBY_VERSION.to_s.empty? | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | require "rubygems" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ruby_version = Gem::Version.new(RUBY_VERSION) | 
					
						
							|  |  |  | # This will only happen if the Ruby is too old anyway. | 
					
						
							|  |  |  | abort unless ruby_version.respond_to?(:canonical_segments) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | homebrew_required_ruby_version = Gem::Version.new(HOMEBREW_REQUIRED_RUBY_VERSION) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ruby_version_major, ruby_version_minor, = ruby_version.canonical_segments | 
					
						
							|  |  |  | homebrew_required_ruby_version_major, homebrew_required_ruby_version_minor, = | 
					
						
							|  |  |  |   homebrew_required_ruby_version.canonical_segments | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-09-29 01:58:41 +01:00
										 |  |  | if (!ENV.fetch("HOMEBREW_DEVELOPER", "").empty? || !ENV.fetch("HOMEBREW_TESTS", "").empty?) && | 
					
						
							| 
									
										
										
										
											2022-07-15 15:19:59 +01:00
										 |  |  |    !ENV.fetch("HOMEBREW_USE_RUBY_FROM_PATH", "").empty? && | 
					
						
							| 
									
										
										
										
											2022-05-22 15:22:37 +02:00
										 |  |  |    ruby_version >= homebrew_required_ruby_version | 
					
						
							|  |  |  |   return | 
					
						
							|  |  |  | elsif ruby_version_major != homebrew_required_ruby_version_major || | 
					
						
							|  |  |  |       ruby_version_minor != homebrew_required_ruby_version_minor | 
					
						
							| 
									
										
										
										
											2020-09-03 09:43:41 +01:00
										 |  |  |   abort | 
					
						
							|  |  |  | end |