From 9375fc21f472d0929fdb27d2d32f45384d25e980 Mon Sep 17 00:00:00 2001 From: Mike McQuaid Date: Tue, 17 Jun 2025 16:34:59 +0100 Subject: [PATCH] requirements: set `typed: strict` --- Library/Homebrew/requirements/xcode_requirement.rb | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/Library/Homebrew/requirements/xcode_requirement.rb b/Library/Homebrew/requirements/xcode_requirement.rb index 0d74f0e945..b5514b925a 100644 --- a/Library/Homebrew/requirements/xcode_requirement.rb +++ b/Library/Homebrew/requirements/xcode_requirement.rb @@ -1,4 +1,4 @@ -# typed: true # rubocop:todo Sorbet/StrictSigil +# typed: strict # frozen_string_literal: true require "requirement" @@ -7,6 +7,7 @@ require "requirement" class XcodeRequirement < Requirement fatal true + sig { returns(T.nilable(String)) } attr_reader :version satisfy(build_env: false) do @@ -14,8 +15,10 @@ class XcodeRequirement < Requirement xcode_installed_version end + sig { params(tags: T::Array[String]).void } def initialize(tags = []) - @version = tags.shift if tags.first.to_s.match?(/(\d\.)+\d/) + version = tags.shift if tags.first.to_s.match?(/(\d\.)+\d/) + @version = T.let(version, T.nilable(String)) super end @@ -53,6 +56,7 @@ class XcodeRequirement < Requirement "#<#{self.class.name}: version>=#{@version.inspect} #{tags.inspect}>" end + sig { returns(String) } def display_s return "#{name.capitalize} (on macOS)" unless @version