Xu Cheng
48950f2cc0
centralize the logic of handling homebrew-
in Tap.fetch
...
Closes Homebrew/homebrew#46537 .
Signed-off-by: Xu Cheng <xucheng@me.com>
2015-12-03 13:46:59 +08:00
Xu Cheng
0686ebfcc0
formula: use installed_prefixes/installed_kegs
...
Closes Homebrew/homebrew#46463 .
2015-11-29 20:24:30 +08:00
Xu Cheng
6273d464ee
add Formula#installed_prefixes and Formula#installed_kegs
2015-11-29 20:24:30 +08:00
Mike McQuaid
4a457d191d
formula: fix reference to self.
2015-11-27 20:43:13 +00:00
Andrew Thorburn
4c3a6c6022
formula: add missing require.
...
Closes Homebrew/homebrew#46433 .
Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2015-11-27 18:48:38 +00:00
Mike McQuaid
6054666fa6
formula: refactor outdated handling, add to hash.
2015-11-27 16:52:54 +00:00
Baptiste Fontaine
24a1eeceb3
Common build environment methods moved in build_environment.rb
...
Closes Homebrew/homebrew#45966 .
Signed-off-by: Baptiste Fontaine <batifon@yahoo.fr>
2015-11-17 00:17:22 +01:00
Xu Cheng
02d7abe2ec
add Formula#pinned_version
2015-11-16 20:59:12 +08:00
Xu Cheng
0d74967ceb
Formula.racks: exclude empty rack
...
Fixes https://github.com/Homebrew/homebrew-bundle/issues/121
Closes Homebrew/homebrew#45879 .
Signed-off-by: Xu Cheng <xucheng@me.com>
2015-11-11 19:37:05 +08:00
Tim D. Smith
55063f0ec7
set up Python sys.path from install HOME
...
Necessary to allow system Python to find Python modules installed by Homebrew.
Closes Homebrew/homebrew#45076 . Fixes Homebrew/homebrew#43919 . Probably fixes Homebrew/homebrew#44813 .
2015-11-08 11:58:28 -08:00
Alex Dunn
e891699342
formula.rb: define elisp
and opt_elisp
...
Closes Homebrew/homebrew#45567 .
Signed-off-by: Alex Dunn <dunn.alex@gmail.com>
2015-11-01 17:34:28 -08:00
Xu Cheng
ff9fdc078f
add Formula#bottle_defined?
2015-11-01 08:22:18 -08:00
Dominyk Tiller
674a350e6c
formula: update bottle criteria explanation
2015-10-24 00:25:46 +01:00
Xu Cheng
b5032ad2cb
Formula: add bottle disable DSL
2015-10-19 21:41:36 +08:00
Baptiste Fontaine
f3035333fb
FormulaValidationError: include full_name
...
Closes Homebrew/homebrew#44946 .
Signed-off-by: Baptiste Fontaine <batifon@yahoo.fr>
2015-10-14 16:21:42 +02:00
Xu Cheng
3d585d6e3f
add Formula#aliases
...
Fixes Homebrew/homebrew#44331 .
Closes Homebrew/homebrew#44709 .
Signed-off-by: Xu Cheng <xucheng@me.com>
2015-10-14 17:26:41 +08:00
Xu Cheng
98633e03c6
add alias_table and alias_reverse_table for core and tap
2015-10-14 17:26:41 +08:00
Xu Cheng
65488903f9
add Formula.core_alias_files
2015-10-14 17:26:41 +08:00
Xu Cheng
ee332c4550
handle TapFormulaWithOldnameAmbiguityError
...
Closes Homebrew/homebrew#44705 .
Signed-off-by: Xu Cheng <xucheng@me.com>
2015-10-08 16:02:33 +08:00
Robin Neatherway
0fee65bf12
link_overwrite if the owning keg no longer exists
2015-10-07 17:20:09 +08:00
Xu Cheng
3b520cf195
cache taps
...
There are plenty of IO operations inside Tap object, and it will be more
when implementing formula alias reverse look up(e.g. list all of alias
names for a formula). So let's cache them.
Some benchmark:
$ time brew info $(brew ruby -e 'puts Formula.tap_names') > /dev/null
Before: 6.40s user 2.42s system 96% cpu 9.134 total
After: 4.75s user 0.77s system 97% cpu 5.637 total
Closes Homebrew/homebrew#44377 .
Signed-off-by: Xu Cheng <xucheng@me.com>
2015-09-30 16:25:30 +08:00
Xu Cheng
c3813230c1
Formula#system: fix log output for travis
2015-09-24 16:44:39 +08:00
Xu Cheng
8c9f0120ca
Formula#system: print dot for travis
2015-09-23 21:46:44 +08:00
Mike McQuaid
9aecb1be2b
formula: increase fail log lines, allow config.
...
The default is almost never useful. 15 seems like a good medium as it'll
not fill a 80x24 default but provides a bit more context. Also allow it
to be overriden for developers and `test-bot`.
2015-09-23 21:46:43 +08:00
Xu Cheng
e21bb27c2e
Formula: add alias_full_names
2015-09-13 17:23:17 +08:00
Xu Cheng
1e344c9672
Formula#core_names: use core_files
2015-09-13 17:05:27 +08:00
Xu Cheng
034b19cea7
uniq before sort
...
http://blog.askit.org/post/18152870794/performance-of-sortuniq-vs-uniqsort
2015-09-13 16:58:06 +08:00
Xu Cheng
2df6ad1bed
Formula#to_hash: add bottle info
...
Closes Homebrew/homebrew#43848 .
Signed-off-by: Xu Cheng <xucheng@me.com>
2015-09-13 12:59:13 +08:00
Xu Cheng
81bd5c40d0
Formula: add tap alias
...
Closes Homebrew/homebrew#43851 .
Signed-off-by: Xu Cheng <xucheng@me.com>
2015-09-13 12:58:00 +08:00
Alex Dunn
818c65542d
remove Formula#file_modified?
...
It's been more trouble than it's worth.
Fixes Homebrew/homebrew#43607 .
Closes Homebrew/homebrew#43049 .
Closes Homebrew/homebrew#43615 .
Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2015-09-06 13:13:59 +01:00
Xu Cheng
faa6334774
Formula#file_modified?: use Utils.git_available?
2015-09-02 15:24:52 +08:00
Mike McQuaid
2c959a7d58
More API documentation.
...
And remove the documented stuff from the `example-formula.rb`.
Closes Homebrew/homebrew#43241 .
Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2015-08-29 15:43:16 +01:00
Xu Cheng
1df6e5d331
Formula#file_modfiled?: remove unnecessary git dir check
...
It's already covered by `$?.exitstatus == 0` in below.
2015-08-25 17:32:39 +08:00
Dominyk Tiller
b808eed08f
formula: use which over locate
2015-08-25 04:18:46 +01:00
Misty De Meo
98bb638f29
Formula#file_modified?: fix for Xcodes without git
...
Fixes Homebrew/homebrew#43206 .
2015-08-24 20:10:53 -07:00
Xu Cheng
09c810c7f4
add link_overwrite DSL
...
Sometimes we accidentally install files outside prefix. After we fix that,
users will get nasty link conflict error. So we create a whitelist here to
allow overwriting certain files. e.g.
link_overwrite "bin/foo", "lib/bar"
link_overwrite "share/man/man1/baz-*"
During FormulaInstaller#link, the whitelist conflict files will be
backup into HOMEBREW_CACHE/Backup
2015-08-23 21:43:03 +08:00
Misty De Meo
727239e12f
Merge bottle install without Xcode branch
...
Merge branch 'bottle_hooks'
2015-08-21 11:04:22 -07:00
William Woodruff
1face808f5
Add guards to calls that would trigger Xcode install requests
...
add guard in Formula#file_modified? to prevent git popup
add guard in Superenv.bin before calling MacOS::Xcode.version
add guard against missing Xcode/CLT in Xcode.uncached_version
return nil instread of 0 in uncached_version when Xcode/CLT are not present, to distinguish from linuxbrew behavior
checks against pour_bottle? and needs_relocation?, add guard around keg.relocate_install_names to check pour_bottle?/needs_relocation? as well
needs_relocation? becomes skip_relocation?, use cellar attr to indicate relocation instead of does_not_need_relocation
MacOS.can_build? becomes MacOS.has_apple_developer_tools?
2015-08-21 11:02:33 -07:00
Xu Cheng
b6c64ae46a
also lock oldname when applied
2015-08-20 15:47:41 +08:00
Baptiste Fontaine
8ba0fb9fcf
unnecessary calls to .select simplified
...
These are minor perf optimizations.
Closes Homebrew/homebrew#43028 .
Signed-off-by: Baptiste Fontaine <batifon@yahoo.fr>
2015-08-18 00:18:22 +02:00
Xu Cheng
203cecb463
add Formula.racks
...
Also exclude symlink when enumerating installed racks.
2015-08-14 15:52:56 +08:00
Vlad Shablinsky
ae9bf4aaaa
formula: add oldname method
...
- add Formula#oldname to get oldname for formula
- add formula_renames.rb to store information about formula renames
2015-08-10 13:57:58 +01:00
Xu Cheng
ae0e270727
favor flat_map over map...flatten
2015-08-06 22:33:46 +08:00
BrewTestBot
13d544e11e
Core files style updates.
...
Closes Homebrew/homebrew#42354 .
Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2015-08-03 13:22:35 +01:00
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