438 Commits

Author SHA1 Message Date
Jack Nagel
73a206a316 doctor: avoid pointless creation of pathname object 2012-12-21 17:12:00 -06:00
Jack Nagel
a64e9e542f doctor: run slowest checks last 2012-12-21 15:15:42 -06:00
Jack Nagel
3dcce70a6a Better reporting for MacPorts/Fink installations
closes Homebrew/homebrew#15853.
2012-12-17 17:18:22 -06:00
Jack Nagel
3589465297 doctor: don't check keg-onlies if cellar doesn't exist 2012-12-08 16:41:31 -06:00
Mike McQuaid
ff356b6192 Whitelist 10.8.2 Supplemental Update static libs.
Fixes Homebrew/homebrew#16215.
2012-11-26 09:41:05 +00:00
Jack Nagel
6c4c37a01f bash completion for doctor checks 2012-11-13 16:49:43 -06:00
Jack Nagel
6b6e22ffae Don't advise XQuartz upgrades for system X11
Yeah, yeah. The XQuartz/X11 stuff is confusing.
2012-11-12 19:48:09 -06:00
Adam Vandenberg
847baa9e14 doctor checks XQuartz version
Closes Homebrew/homebrew#14182.
2012-11-11 12:33:50 -08:00
Jack Nagel
1cb59ea5fd Fix curlrc existence check
Enumerable#one? is not available under Ruby 1.8.6. Further, we really
want #any? here, as setting both HOME and CURL_HOME can trigger a false
negative.

Fixes Homebrew/homebrew#15883.
2012-11-06 19:02:02 -06:00
Jack Nagel
f8183d9510 Hoist top-level directory list into a constant 2012-11-06 12:32:09 -06:00
Charlie Sharpsteen
c92971f475 doctor: Remove fuse.pc from the whitelist
Having a third-party `fuse.pc` file will conflict with the `fuse4x` formula.
2012-11-03 15:44:51 -07:00
Max Howell
f6091b1c85 Specify where to get the CLT package 2012-10-28 10:52:07 -04:00
Stephen Nelson
e7a9f6eb89 Homebrew should not ignore curlrc
Added doctor check for .curlrc rather than silently ignoring it (#13836).

Closes Homebrew/homebrew#15419.

Signed-off-by: Max Howell <mxcl@me.com>

Removed test in doctor where it actually curl'd a file. It's enough to warn if the curlrc exists. I understand people want to remove the warnings, but the point in the doctor is to help diagnose and not to be some ramification of your UNIX system.
2012-10-28 10:52:07 -04:00
Adam Vandenberg
babf25af1a doctor: check that Xcode prefix actually exists
Closes Homebrew/homebrew#14373.
2012-10-24 11:16:57 -07:00
Adam Vandenberg
d88158b9fe doctor: fix iconv dylib name 2012-10-03 12:41:20 -07:00
Max Howell
82c58bb615 Fix doctor hanging if xcode-select is bad
Also fix typo in the superenv DEVELOPER_DIR set detection code.
2012-09-24 08:49:58 -04:00
Misty De Meo
3473bbc010 Make check for stray developer dir more specific
It looks like there can be harmless stuff leftover in
/Developer/Library, even after Xcode uninstalls older versions. The
existence of the uninstall-developer-folder script should be a better
indicator.

Fixes Homebrew/homebrew#14970.
2012-09-16 14:07:38 -05:00
Misty De Meo
e8c372a315 Skip standard compilers check for unknown Xcode
Rescuing false on the StandardCompilers map meant that the doctor
check assumed that the compilers were incorrect, not merely
unknown.

Instead, skip the check and return nil for unknown Xcode; nil
should be interpreted as "dunno", instead of "true" or "false",
and the doctor check no longer prints on nil.
2012-09-14 17:11:51 -05:00
Misty De Meo
0329307770 doctor: Add check for stray pre-4.3 Xcode files
/Developer/Library shouldn't exist if all the remnants of old
Xcode versions have been uninstalled, and tends to cause problems if
it's kept alongside modern Xcode.

"uninstall-developer-folder" should only remove /Developer/Library.
2012-09-13 10:18:21 -05:00
Jack Nagel
b20c35cf0e doctor: ignore case when checking PATH for config scripts
Fixes Homebrew/homebrew#14752.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-09-06 10:05:49 -05:00
Max Howell
b98c4792d0 Doctor check for unlicensed Xcode
Checking the license text is probably the most future proofed method. Though for future reference other possible methods are listed in the below ticket.

Closes Homebrew/homebrew#14558.
2012-08-31 10:22:11 -04:00
Max Howell
b834027b17 Doctor suggest git clean -f if unstaged files
This is safe, I tested various scenarios, including Homebrew installed in ~. The only files that are removed are unexpected files in Homebrew's already managed directories.
2012-08-29 12:41:37 -04:00
Max Howell
9274f7cda1 Formula.Enumerable
Deprecated Formula.all, replaced usage with more appropriate enumerable options. Just check out how much nicer `brew audit` runs now.
2012-08-21 12:09:05 -04:00
Max Howell
c5266654ff In fact, there are 2 xcode-select files to delete 2012-08-21 12:09:04 -04:00
Jack Nagel
d95f467362 Refactor brew missing
The heuristic for determining whether something is installed changes
from "f.installed?" to "f.rack.exist? and f.rack.subdirs.length > 0" in
order to properly consider outdated formulae.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-08-18 11:25:59 -05:00
Jack Nagel
166a9ba0ed Deprecate MacOS.version? style methods
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-08-18 11:25:59 -05:00
Max Howell
6ffe27fa98 Stop warning about CLT w/o Xcode
Also made the latest_versions checks smarter. Hopefully correct too.
2012-08-17 17:18:17 -04:00
Max Howell
3dec84de8a Improve libiconv diagnostic and suggestion
This is coming up a lot at the moment, so here is an attempt to be more helpful.
2012-08-14 11:46:18 -04:00
Max Howell
fef6d5b8c0 brew doctor -D (diagnostic-dump)
-D is now the switch for diagnostic-dumps. Let it be so.

Shows how long each doctor method takes in a sorted table at end. I used this to move the two slowest methods to the end of the doctor run so that as much useful information can be shown as quickly as possible.

Also now possible to specify on command line which tests should be run.
2012-08-14 11:46:18 -04:00
Jack Nagel
c9f824b54a Make Set available globally
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-08-12 00:58:31 -05:00
Brandon Black
bcde6432f3 Fix issues with writable? detection in brew doctor
Closes Homebrew/homebrew#13689.

Signed-off-by: Max Howell <mxcl@me.com>

There are subtle distinctions between writable? and writable_real? we don't
understand precisely why we need this, but it fixes the bugs :/
2012-08-06 22:02:38 -04:00
Max Howell
1f62284384 Restore check for broken xcode-select path
How did this get removed? Had a bug today where user had this but no doctor check so I was confused!
2012-08-06 19:28:39 -04:00
Patrick Lucas
47cdd4d819 Suggest git clean -f for untracked changes
Currently, if brew doctor detects untracked changes in the local repo,
it suggests doing 'git reset --hard', but that doesn't remove untracked
files. This change adds an additional suggestion to run 'git clean -f'
to remove them.

Closes Homebrew/homebrew#12814.

Signed-off-by: Max Howell <mxcl@me.com>

Changed the path to Library as we don't want to clean -f all over the whole /usr/local :P
2012-08-06 15:59:12 -04:00
Max Howell
28c9b8f601 Put the CLT advice warning in the right place
Refs Homebrew/homebrew#13982.
2012-08-06 13:26:39 -04:00
Max Howell
a9f246eaad Point out to that you may want to install the CLT
You have to hold people's hands, they won't google anything.

Refs Homebrew/homebrew#13982.
2012-08-06 13:06:36 -04:00
Jack Nagel
bbcbbcdaa1 Remove X11 doctor check
Now that X11 components are specified as dependencies, users will be
prompted to install these components when necessary, and this check is
no longer needed.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-08-06 00:42:43 -05:00
Max Howell
3ea35f3351 Some users require hands to be held constantly
Tell user exactly what command to use rather than thinking they'll figure it out by applying some negation logic to the main verb in the sentence they just read.

Closes Homebrew/homebrew#12790.
2012-08-05 10:46:35 -04:00
Jack Nagel
148617bc11 Move X11 machinery into MacOS::XQuartz namespace
In order to better support Xcode-only systems, where X11 libs and
executables live under /usr/X11 but headers live in the SDK, move the
x11_* helper methods into a new module.

This allows us to keep some of the CLT/Xcode-only and Apple X11/XQuartz
logic hidden from outside code, like ENV.x11.

Since Apple's X11 is actually XQuartz, name the module "MacOS::XQuartz".
2012-08-01 00:31:38 -05:00
Mike McQuaid
450dcf75dc Fix brew doctor warnings and spurious newline.
Fixes the problems discussed in 34c970 to ensure that `brew doctor`
does not look like it is broken on user setup problems but still
returns a sensible exit code for e.g. BrewBot.
2012-07-25 22:54:44 +01:00
Jack Nagel
74839417ea Rename xctools_fucked?
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-07-25 12:04:42 -05:00
Jack Nagel
4eeb0e6441 Use new Xcode module
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-07-25 12:04:41 -05:00
Jack Nagel
62482504a9 Split Xcode and CLT methods into separate modules
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-07-25 11:58:01 -05:00
Adam Vandenberg
fd7cf8f293 doctor: be consistent in path advice 2012-07-24 12:28:02 -07:00
Adam Vandenberg
5de94e48bd doctor: check for DYLD_FALLBACK_LIBRARY_PATH 2012-07-23 16:08:05 -07:00
Misty De Meo
a8a16928e4 doctor: Skip outdated check when offline
Fixes Homebrew/homebrew#13535.
2012-07-22 12:57:03 -05:00
Misty De Meo
3696180fd7 Update Xcode checks for 10.8 2012-07-12 14:34:00 -05:00
Jack Nagel
bb2e67f37e doctor: fix incorrect usage of 'or'
Eventually I will stop making this mistake.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-07-12 03:01:28 -05:00
Adam Vandenberg
126b1c77e3 doctor: update xcode chceck
* 4.3.3 is the latest on 10.7
* Give up if we don't know what the latest is (10.8 and beyond)
2012-07-07 11:59:01 -07:00
Jack Nagel
e65c3a71eb Update doctor checks for XQuartz
- pkg-config no longer defaults to checking /usr/X11/lib/pkgconfig;
   instead this path is added via ENV.x11 or depends_on :x11. Formulae
   that expect X11 libs should be explicitly marked as depends_on :x11.
 - Remove warning about /usr/X11 as a symlink.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-07-01 12:23:19 -05:00
samueljohn
4aed55cccb doctor: suggest the correct xcode-select path to the user
Shortened the part about the CLT-only systems, because this message is
never shown to them.

Closes Homebrew/homebrew#13061.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-06-29 12:40:26 -05:00