tab: include aliases.

Including aliases in the tab allows e.g. `brew switch` to correctly
handle switching between different keg’s aliases.
This commit is contained in:
Mike McQuaid 2017-07-21 17:20:54 +01:00
parent 43c8223dcc
commit fe35bb32e8
2 changed files with 4 additions and 0 deletions

View File

@ -863,6 +863,7 @@ class FormulaInstaller
tab.source["path"] = formula.specified_path.to_s
tab.installed_as_dependency = installed_as_dependency
tab.installed_on_request = installed_on_request
tab.aliases = formula.aliases
tab.write
end

View File

@ -33,6 +33,7 @@ class Tab < OpenStruct
"HEAD" => HOMEBREW_REPOSITORY.git_head,
"compiler" => compiler,
"stdlib" => stdlib,
"aliases" => formula.aliases,
"runtime_dependencies" => formula.runtime_dependencies.map do |dep|
f = dep.to_formula
{ "full_name" => f.full_name, "version" => f.version.to_s }
@ -185,6 +186,7 @@ class Tab < OpenStruct
"HEAD" => nil,
"stdlib" => nil,
"compiler" => DevelopmentTools.default_compiler,
"aliases" => [],
"runtime_dependencies" => [],
"source" => {
"path" => nil,
@ -328,6 +330,7 @@ class Tab < OpenStruct
"HEAD" => self.HEAD,
"stdlib" => (stdlib.to_s if stdlib),
"compiler" => (compiler.to_s if compiler),
"aliases" => aliases,
"runtime_dependencies" => runtime_dependencies,
"source" => source,
}