681 Commits

Author SHA1 Message Date
Dominique Orban
68a13b240f formula: define opt_pkgshare helper method.
Closes Homebrew/homebrew#42023.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2015-08-01 15:12:46 +01:00
Xu Cheng
ac738ae2cd enumerate all formulae by files rather than names
Before
```
$ time brew readall
brew readall  10.63s user 0.36s system 99% cpu 11.003 total
```

After
```
$ time brew readall
brew readall  5.62s user 0.24s system 99% cpu 5.859 total
```

Closes Homebrew/homebrew#42302.

Signed-off-by: Xu Cheng <xucheng@me.com>
2015-08-01 00:49:50 +08:00
Xu Cheng
21eecbf1d6 Formula: add set_acitve_spec method 2015-07-31 19:44:02 +08:00
Xu Cheng
03facd8554 Formula: add any_version_installed? method 2015-07-31 19:44:01 +08:00
Xu Cheng
8f5f27358a Formula#installed_prefix: use PkgVersion
Also check stable_prefix when current acitve_spec is not :stable
2015-07-31 19:44:01 +08:00
Xu Cheng
5aa6b5c5fa Formula#pkg_version: return the result based on current active_spec 2015-07-31 19:44:01 +08:00
Xu Cheng
78442232d0 Formula: add active_spec_sym 2015-07-31 19:44:00 +08:00
Xu Cheng
274f21388e Revert "formula: create empty zshrc when zsh is shell"
This reverts commit be55c800d0bf2750902df71d092906b49b49ffce.
2015-07-29 16:23:10 +08:00
Dominyk Tiller
4625fd335c formula: create empty zshrc when zsh is shell
One minor consequence of our seizing of the HOME variable during builds for
sandboxing purposes is that if you're doing an interactive or git installation
zsh flags up that it hasn't found any config files and throws you into the
`zsh-newuser-install` area.

Not really a problem, just a nuisance.

Since the check is just for existence rather than content, we can work around
this by creating an empty config file when the `SHELL` environmental variable
includes zsh.
2015-07-24 09:01:34 +01:00
Xu Cheng
33befcf312 tests: fix patching test for no-compat mode
Closes Homebrew/homebrew#41977.

Signed-off-by: Xu Cheng <xucheng@me.com>
2015-07-22 15:12:31 +08:00
Xu Cheng
744de30089 move deprecated codes into compat
Closes Homebrew/homebrew#41974.
2015-07-21 21:58:10 +08:00
Dominyk Tiller
ac523bac06 formula: always override user home
Closes Homebrew/homebrew#40444.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2015-07-18 20:48:00 -07:00
Alex Dunn
da2e4d417d fetch/build formula from source when modified
closes Homebrew/homebrew#36068

Closes Homebrew/homebrew#41397.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2015-07-18 19:30:30 -07:00
Tim D. Smith
10495fb1fa add Formula#pkgshare path
Formalizes the (share/"foo").install idiom.

Closes Homebrew/homebrew#41333.
2015-07-07 17:39:20 -07:00
Xu Cheng
37cd547d5c Formula: cache methods' output to reduce io
Closes Homebrew/homebrew#40855.

Signed-off-by: Xu Cheng <xucheng@me.com>
2015-06-21 15:20:37 +08:00
Jack Nagel
44feb5b8f9 Add opt_frameworks helper 2015-06-17 21:31:27 -04:00
Mike McQuaid
1e86730289 Rename requirements named *Dependency.
Dependency is another similar, related class and it's super confusing
to have some Requirements that are named *Dependency.

Closes Homebrew/homebrew#38891.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2015-06-16 08:12:01 +01:00
Xu Cheng
f2d0a88292 remove Pathname#find_formula
Closes Homebrew/homebrew#40486.

Signed-off-by: Xu Cheng <xucheng@me.com>
2015-06-11 15:28:30 +08:00
Xu Cheng
f8efea0cf3 formula#to_hash: record requirements
Closes Homebrew/homebrew#40451.

Signed-off-by: Xu Cheng <xucheng@me.com>
2015-06-07 20:32:46 +08:00
Johannes Wienke
de43ac7503 Add support for fish shell completions
* Library/Homebrew/caveats.rb: add caveats comparable to other shells
* Library/Homebrew/formula.rb: define completion directory along the
  conventions explained in the fish documentation for
  $fish_complete_path
* Library/Homebrew/keg.rb: add fish shell to check function for
  installed completions

Closes Homebrew/homebrew#39828.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2015-06-02 10:09:10 +01:00
Xu Cheng
9a90dbd275 Formula: add full_name variable 2015-05-29 17:01:53 +08:00
Xu Cheng
ec4011a46e Formula#installed: loading using Formulary.from_rack
Also handle TapFormulaAmbiguityError
2015-05-27 13:53:40 +08:00
Xu Cheng
e2b0bca931 add Formula.core_names Formula.tap_names and Formula.full_names 2015-05-27 13:53:40 +08:00
Xu Cheng
3a3a49bd93 add Formulary.core_path method, deprecate Formula.path 2015-05-27 13:53:40 +08:00
Nikolaus Wittenstein
86365470e6 Add a desc field to Formula 2015-05-25 17:23:49 +01:00
Jack Nagel
16dfe3dd40 Add Formula#logs 2015-04-25 23:14:05 -04:00
Mike McQuaid
9cfd768bfe formula: add more API docs for directories.
Closes Homebrew/homebrew#38571.
2015-04-12 21:49:12 -07:00
Dominyk Tiller
a5c4eb2d3e cmake: adjust standard built type
Moves from None to Release, but comments out the standard release
CFLAGS so we can continue using our own.

Bumped Libgit2 as an example/test to play with.

Closes Homebrew/homebrew#37332, hopefully.

Closes Homebrew/homebrew#37361.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2015-04-09 08:50:51 +01:00
Tim D. Smith
a5e1f698d5 Keep Homebrew site-packages in sys.path during brew test
Formulas that build python things and which are tested with system
Python will encounter test failures unless system Python is configured
to add Homebrew's site-packages to sys.path. This change makes sure that
configuration is performed in the test environment.

Both lines are needed; the first reads and processes .pth files and the
second makes sure that Homebrew's site-packages is read before the
system extras, so that formulas depending on Homebrew/python/numpy get
the Homebrew/python version and not the old system version.

Closes Homebrew/homebrew#38466.
2015-04-09 00:42:43 -07:00
Tim D. Smith
5a0ec0c491 add SoftwareSpec#go_resource
by analogy to similar code in formula.rb.

Permits Homebrew/homebrew#37877. Closes Homebrew/homebrew#38330.
2015-04-06 20:26:52 -07:00
Jack Nagel
abb0cb3aa0 Switch to a more useful serialization of tap info
Closes Homebrew/homebrew#37383.
2015-03-14 21:14:37 -04:00
Xu Cheng
c8835afead move formula_specialties to compat
Closes Homebrew/homebrew#37365.

Signed-off-by: Xu Cheng <xucheng@me.com>
2015-03-04 23:20:13 +08:00
Xu Cheng
40087e30df ruby 1.8 doesn't have sort_by!
Closes Homebrew/homebrew#36935

Closes Homebrew/homebrew#36936.

Signed-off-by: Xu Cheng <xucheng@me.com>
2015-02-19 02:02:43 +08:00
Mike McQuaid
0caa1912d9 Move "path or URL" tap string to global constant. 2015-02-13 10:58:43 +00:00
Xu Cheng
e547438ff4 cmd/info: prevent duplicate dependency display.
Before:

    $ brew info llvm
    ==> Dependencies
    Build: xz ✔, xz ✔, xz ✔, xz ✔, xz ✔, xz ✔

    $ brew info --json=v1 llvm
    ... "dependencies":["xz","xz","xz","xz","xz","xz"], ...

After

    $ brew info llvm
    ==> Dependencies
    Build: xz ✔

    $ brew info --json=v1 llvm
    ... "dependencies":["xz"], ...

Closes Homebrew/homebrew#36653.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2015-02-08 15:53:30 +00:00
Xu Cheng
f8791da2ec formula: sort installed version in to_hash
https://github.com/Homebrew/homebrew-brewdler/pull/43#discussion_r24248760

Closes Homebrew/homebrew#36611.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2015-02-07 20:43:03 +00:00
Jack Nagel
9f3d88158b Save and restore build attribute
This probably doesn't matter in practice, but I don't want to take any
chances.
2015-02-07 11:02:35 -05:00
Jack Nagel
cd522b1719 Always respect build options when invoking post_install
Fixes Homebrew/homebrew#36335.
2015-02-07 11:02:35 -05:00
Jack Nagel
4851b1e7a8 Use a local instead of an instance variable 2015-02-07 11:02:35 -05:00
Jack Nagel
f0fc15ade8 Remove unnecessary early return
Iterating over an empty list is a no-op so we can remove this early
return.
2015-01-22 17:36:31 -05:00
Jack Nagel
2804e0ed3b Hide "Patching" message when there aren't any patches 2015-01-22 17:04:38 -05:00
Jack Nagel
7978209469 Use formula patches accessor 2015-01-22 17:03:54 -05:00
Jack Nagel
af1e9a9610 Expose bottle details on the formula object
Fixes Homebrew/homebrew#36032.
2015-01-20 22:27:23 -05:00
Jack Nagel
909a5af075 Omit post-install warning unless formula defines it
Closes Homebrew/homebrew#34744.
2015-01-12 21:57:47 -05:00
Mike McQuaid
ae0a7bcad4 formula: set HOME to testpath in tests. 2015-01-09 11:35:03 +00:00
Jack Nagel
eec4feccaa Include selected spec in Formula#inspect 2015-01-04 21:36:22 -05:00
Jack Nagel
50514678d1 Make active_spec protected 2015-01-04 15:33:25 -05:00
Jack Nagel
991f540855 Doc most DSL methods as write-only
The public readers for these attributes are on the instance, not the
class.
2015-01-04 14:25:59 -05:00
Jack Nagel
85dfece168 Fix markup 2015-01-04 14:25:59 -05:00
Jack Nagel
6eb0b3505b Top-level DSL methods only manipulate the stable spec 2015-01-04 14:25:59 -05:00