Exception: FormulaConflictError Private
Overview
This class is part of a private API. This class may only be used in the Homebrew/brew repository. Third parties should avoid using this class if possible, as it may be removed or changed without warning.
Raised when a formula conflicts with another one.
Instance Attribute Summary collapse
- #conflicts ⇒ Array<Formula::FormulaConflict> readonly private
- #formula ⇒ Formula readonly private
Instance Method Summary collapse
- #conflict_message(conflict) ⇒ String private
- #initialize(formula, conflicts) ⇒ void constructor private
- #message ⇒ String private
Constructor Details
#initialize(formula, conflicts) ⇒ void
This method is part of a private API. This method may only be used in the Homebrew/brew repository. Third parties should avoid using this method if possible, as it may be removed or changed without warning.
536 537 538 539 540 |
# File 'exceptions.rb', line 536 def initialize(formula, conflicts) @formula = formula @conflicts = conflicts super end |
Instance Attribute Details
#conflicts ⇒ Array<Formula::FormulaConflict> (readonly)
This method is part of a private API. This method may only be used in the Homebrew/brew repository. Third parties should avoid using this method if possible, as it may be removed or changed without warning.
533 534 535 |
# File 'exceptions.rb', line 533 def conflicts @conflicts end |
#formula ⇒ Formula (readonly)
This method is part of a private API. This method may only be used in the Homebrew/brew repository. Third parties should avoid using this method if possible, as it may be removed or changed without warning.
530 531 532 |
# File 'exceptions.rb', line 530 def formula @formula end |
Instance Method Details
#conflict_message(conflict) ⇒ String
This method is part of a private API. This method may only be used in the Homebrew/brew repository. Third parties should avoid using this method if possible, as it may be removed or changed without warning.
543 544 545 546 547 548 |
# File 'exceptions.rb', line 543 def (conflict) = [] << " #{conflict.name}" << ": because #{conflict.reason}" if conflict.reason .join end |
#message ⇒ String
This method is part of a private API. This method may only be used in the Homebrew/brew repository. Third parties should avoid using this method if possible, as it may be removed or changed without warning.
551 552 553 554 555 556 557 558 559 560 561 562 563 564 |
# File 'exceptions.rb', line 551 def = [] << "Cannot install #{formula.full_name} because conflicting formulae are installed." .concat conflicts.map { |c| (c) } << "" << <<~EOS Please `brew unlink #{conflicts.map(&:name) * " "}` before continuing. Unlinking removes a formula's symlinks from #{HOMEBREW_PREFIX}. You can link the formula again after the install finishes. You can `--force` this install, but the build may fail or cause obscure side effects in the resulting software. EOS .join("\n") end |