aboutsummaryrefslogtreecommitdiffstats
path: root/Library/Homebrew/formula_installer.rb
AgeCommit message (Collapse)Author
2014-11-23formula_installer: don't always post_install.Mike McQuaid
We don't want to do so when building bottles or we can end up with some weird stuff being bottled unintentionally (and it'll run twice; once before bottling, once afterwards). Fixes #34349. Closes #34397. Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2014-11-17Regard any installation of the formula as conflictsaereal
Closes #34159. Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2014-11-03Revert "Revert "FormulaInstaller: make mode reader methods private""Jack Nagel
This reverts commit c622f27e525de4a9cc9a209a6cc0e26be60b5919.
2014-11-03Make quieter an installer modeJack Nagel
2014-11-03Make git an installer modeJack Nagel
2014-11-03Revert "FormulaInstaller: make mode reader methods private"Jack Nagel
This reverts commit 44bff238434a48c4a8531bc2d1a29c81f18f8fab. Conflicts: Library/Homebrew/formula_installer.rb Fixes #33882.
2014-11-02FormulaInstaller: make mode predicate methods privateJack Nagel
2014-11-02FormulaInstaller: make mode reader methods privateJack Nagel
2014-10-31Remove FormulaAlreadyInstalledErrorJack Nagel
install is the only command that can trigger this warning, so it should be handled before instantiating the installer.
2014-10-29Add predicate methods for specs and stop testing internalsJack Nagel
2014-10-29Rename "f" to "formula" in the installerJack Nagel
2014-10-29Remove unreachable branchJack Nagel
Requirements meeting this condition are skipped by the first branch on the caller side: https://github.com/Homebrew/homebrew/blob/6c54de812f00658404501719d315202a5551cc1b/Library/Homebrew/formula_installer.rb
2014-10-29Test default formula requirements against correct dependentJack Nagel
2014-10-29Reduce explicit branches in dependency expansionJack Nagel
2014-10-27formula_installer: set exit code to failed always.Mike McQuaid
If we say something failed we should communicate that through the exit code for the bot and scripts.
2014-10-19formula_installer: tweak argument migration warn.Mike McQuaid
Make it clear that we've done the right thing and this message is just for informational purposes.
2014-10-19formula_installer: warn on deprecated options.Mike McQuaid
2014-10-17Pull conditional out of begin blockJack Nagel
2014-10-17Move some code to the pour methodJack Nagel
2014-10-13Reorganize post-install checks so we can share more codeJack Nagel
2014-10-13Remove repeated conditionalJack Nagel
The post-install audit methods are not run for keg-only installs, so we don't need to repeat the conditional here.
2014-10-13Simplify post-install audit outputJack Nagel
2014-10-01Post-install audit for shadowed header filesJack Nagel
2014-09-28Rearrange build process cleanup to avoid spawning a reader threadJack Nagel
This is a follow-up to bbf9f7460fc8e6e4c63f5bbe8630b11ca53f3710. If we read from the pipe before calling Process.wait, we can avoid spawning a thread to do the read while continuing to avoid the deadlock that the thread was introduced to solve.
2014-09-18Rewrite debugger to remove monkeypatches and use of call/ccJack Nagel
2014-09-16Fix variable shadowing bug in requirement expansionJack Nagel
Long term we should probably rename the installer's "f" attribute to "formula".
2014-09-14Consistently call name on formula instead of relying on to_sJack Nagel
2014-09-14Remove InstallationError superclassJack Nagel
None of these subclasses share any behavior other than what is inherited from RuntimeError, so we can just get rid of the superclass.
2014-08-26Structure the build process so that we don't need an at_exit hookJack Nagel
2014-08-26Avoid intermediate option objectsJack Nagel
2014-08-24Revert "Use the dependency object as the key in the inherited_options hash"Jack Nagel
This reverts commit c8d3b39165bb11799d7849ee13a3559ad0bd63f4.
2014-08-24Use the dependency object as the key in the inherited_options hashJack Nagel
2014-08-24Consider on-disk state when computing dependenciesJack Nagel
Fixes #28754. Fixes #29846. Fixes #30920.
2014-08-22Pull common stdlib checking code into a methodJack Nagel
2014-08-16Remove the universal accessor from BuildOptionsJack Nagel
BuildOptions is now immutable (finally).
2014-08-13More idiomatic way to combine arraysJack Nagel
2014-08-13Simplify build_argvJack Nagel
2014-08-13Replace Options.coerce with an alternate constructorJack Nagel
2014-08-13Revert "Replace Options.coerce with an alternate constructor"Mike McQuaid
This reverts commit 8d2ef974a3a87bf4207f71ccb8a7b4776e16a016.
2014-08-12Replace Options.coerce with an alternate constructorJack Nagel
2014-08-12Clarify keg-only caveatsMisty De Meo
2014-08-11Replace the build object rather than mutate itJack Nagel
2014-08-11formula_installer: check for recommended/optional.Mike McQuaid
build.without? seemingly always returns true for requirements that are neither recommended nor optional so check these before deciding not to install a default formula. Closes #31511.
2014-08-11formula_installer: default_formula using build.Mike McQuaid
Use the build options instead of whether the requirement is optional to work out if it is needed. This handles the case of an optional requirement becoming needed because it's a dependency for another formula. Closes #31476.
2014-08-10options.each only yields one argument to the blockJack Nagel
2014-08-10Disconnect defined options from the build objectJack Nagel
2014-08-10Revert "formula_installer: fix reqs default formulae."Mike McQuaid
This reverts commit 435092ae0521e79d8ea21c8d4708031e3b4b17a3.
2014-08-10formula_installer: fix reqs default formulae.Tomasz Pajor
(Commit message written by Mike McQuaid) With the change in a0a93f1b3b7b2be9b8a319be91086ffe220f8e32 unfortunately requirements with default formulae no longer could be resolved when the default formulae were not installed. This commit fixes this problem. Closes #31476. Closes #31444. Closes #30901. Closes #31471. Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2014-08-08Read from the error pipe in a separate threadJack Nagel
If the build process tries to write more bytes than will fit in the pipe buffer, it will block until the parent process does a read. However, the parent process will only do a read after the child process has exited or died, leading to a deadlock. Fix this by doing the read in a separate thread.
2014-08-02Use polymorphism to simplify stdlib compatibility checkJack Nagel