From 5f82dd1880e205771d25344695c4cb7111ed0b63 Mon Sep 17 00:00:00 2001 From: Mike McQuaid Date: Tue, 3 Dec 2024 09:08:50 +0000 Subject: [PATCH] cmd/developer: fix HOMEBREW_UPDATE_TO_TAG handling. The handling of `HOMEBREW_UPDATE_TO_TAG` was incorrect as it implied it also enabled developer mode whereas the opposite was true. --- Library/Homebrew/cmd/developer.rb | 31 +++++++++++++++++++------------ 1 file changed, 19 insertions(+), 12 deletions(-) diff --git a/Library/Homebrew/cmd/developer.rb b/Library/Homebrew/cmd/developer.rb index 7788536ea9..0c4feb5134 100644 --- a/Library/Homebrew/cmd/developer.rb +++ b/Library/Homebrew/cmd/developer.rb @@ -24,28 +24,35 @@ module Homebrew sig { override.void } def run - env_vars = [] - env_vars << "HOMEBREW_DEVELOPER" if Homebrew::EnvConfig.developer? - env_vars << "HOMEBREW_UPDATE_TO_TAG" if Homebrew::EnvConfig.update_to_tag? - env_vars.map! do |var| - "#{Tty.bold}#{var}#{Tty.reset}" - end - case args.named.first when nil, "state" - if env_vars.any? - verb = (env_vars.count == 1) ? "is" : "are" - puts "Developer mode is enabled because #{env_vars.to_sentence} #{verb} set." + if Homebrew::EnvConfig.developer? + puts "Developer mode is enabled because #{Tty.bold}HOMEBREW_DEVELOPER#{Tty.reset} is set." elsif Homebrew::EnvConfig.devcmdrun? - puts "Developer mode is enabled." + puts "Developer mode is enabled because a developer command or `brew developer on` was run." else puts "Developer mode is disabled." end + if Homebrew::EnvConfig.developer? || Homebrew::EnvConfig.devcmdrun? + if Homebrew::EnvConfig.update_to_tag? + puts "However, `brew update` will update to the latest stable tag because " \ + "#{Tty.bold}HOMEBREW_UPDATE_TO_TAG#{Tty.reset} is set." + else + puts "`brew update` will update to the latest commit on the `master` branch." + end + else + puts "`brew update` will update to the latest stable tag." + end when "on" Homebrew::Settings.write "devcmdrun", true + if Homebrew::EnvConfig.update_to_tag? + puts "To fully enable developer mode, you must unset #{Tty.bold}HOMEBREW_UPDATE_TO_TAG#{Tty.reset}." + end when "off" Homebrew::Settings.delete "devcmdrun" - puts "To fully disable developer mode, you must unset #{env_vars.to_sentence}." if env_vars.any? + if Homebrew::EnvConfig.developer? + puts "To fully disable developer mode, you must unset #{Tty.bold}HOMEBREW_DEVELOPER#{Tty.reset}." + end else raise UsageError, "unknown subcommand: #{args.named.first}" end