Files
Carlo CabreraandCarlo Cabrera 3c8d034a2d Normalize option names when deserializing cask config
A cask's configuration is persisted to its metadata directory at
install time, including the env section parsed from
$HOMEBREW_CASK_OPTS. Configs written before option names were
normalized (#23505), or while tools injected the documented hyphenated
spellings, contain keys like "input-methoddir" that from_json
symbolizes verbatim and Config then treats as unknown.

Previously these keys were dropped silently. Since the ignored-key
warning was added, every operation that instantiates installed casks
with their config prints one warning per affected cask, so a plain
`brew update` can emit dozens of lines of

  Warning: Ignoring unknown cask configuration keys: [...]

Normalize option names when deserializing too, so brew reads what it
wrote and the saved settings take effect. Note that this means
previously inert directory settings in saved configs now apply to
subsequent operations on those casks: for example, uninstall consults
the configured directories rather than the defaults that were in
effect at install time.
2026-08-12 23:51:20 +08:00
..

Library

This directory contains all the code run by the official brew command in Homebrew and all formulae (package descriptions) in taps (repositories containing formulae) in Taps subdirectories.