aboutsummaryrefslogtreecommitdiffstats
path: root/Library/Homebrew/tap.rb
AgeCommit message (Collapse)Author
2017-08-05Merge pull request #2965 from reitermarkus/cask-tapMarkus Reiter
Detect `Tap` in `CaskLoader`.
2017-08-03Tap.each: return an enumerable when no block givenMisty De Meo
2017-07-30Detect `Tap` in `CaskLoader`.Markus Reiter
2017-06-19Merge pull request #2778 from jasonkarns/tap-full-nameMike McQuaid
refactor: DRY up redundant formulations of {#user}/homebrew-{#repo}
2017-06-19Tap learns to form its own full_nameJason Karns
full_name is formed from `{user}/homebrew-{repo}` and is always lowercase.
2017-06-10Autocorrect Rubocop Style/PerlBackrefs.Mike McQuaid
2017-04-25tap: fix env typo.Mike McQuaid
2017-04-25Allow forcing Homebrew GitHub organisation.Mike McQuaid
On Linux this defaults to Linuxbrew but in some cases (i.e. a Linux machine performing uploads for Homebrew) we want to allow this to be overridden back to the defaults. Relies on a change incoming to `brew test-bot` to set this there.
2017-04-22tap: warn on tapping deprecated, official taps.Mike McQuaid
They don't contain any formulae so tapping them will add pointless clutter.
2017-03-20Tap: add from_path helper method.Mike McQuaid
This makes it easier to turn an arbitrary path into a tap path.
2017-03-16Use a `Formulary`-like approach to load Casks.Markus Reiter
2017-03-11Add `Formatter::pluralize`.Markus Reiter
2017-02-26Install tap command completions and manpagesJoshua McKinney
Taps can include completion scripts for external commands under `completions/bash`, `completions/fish`, or `completions/zsh`. `brew tap` will automatically install these into the correct directories during install.
2016-12-13diagnostic: check for bad tap files.Mike McQuaid
Check for Ruby files in taps that are outside of the detected `Formula` directory for a tap but inside one of the other potential directories. This usually indicates a formula has been added in the wrong directory in a tap and is used to fail CI in this case.
2016-11-20Replace Utils::JSON with corelib JSON calls.William Woodruff
2016-10-22Update Rubocop style.Mike McQuaid
Another look at the current Rubocop rules and how they fit with our existing and desired future style. Almost all of these changes were automatic. Split some rules between formulae/brew where brew doesn't have millions of cases that need fixed.
2016-10-04Make `core_tap_version_string` reusable.Markus Reiter
2016-09-24Fix Style/GuardClause.Markus Reiter
2016-09-17rubocop --auto-correct all hash-rocket usage.Mike McQuaid
2016-09-17rubocop --auto-correct all remaining files.Mike McQuaid
But remove some manual `.freeze`s on constants that shouldn't be constants.
2016-09-05Add `cask_files` method to `Tap` class.Markus Reiter
2016-08-24tap: use utils link_path_manpages.Mike McQuaid
2016-08-20Install Cask’s default tap if untapped.Markus Reiter
2016-08-08tap: allow Homebrew developers to tap broken taps.Mike McQuaid
2016-08-04tap: add cask methods.Anastasia Sulyagina
2016-08-02Revert "tap: add cask methods."Mike McQuaid
This reverts commit 05daa0574732a7884bd158b2c3e14bd0709367da.
2016-08-02tap: add cask methods.AnastasiaSulyagina
Closes #562.
2016-07-27tap: more thoroughly validate tap namesMartin Afanasjew
`Tap.fetch` and commands building on top of it accepted tap names like `homebrew/homebrew/bogus` causing some misbehavior. Ensure neither `user` nor `repo` include slashes and print a more helpful error message that additionally includes the problematic tap name. Closes #585. Closes #591. Signed-off-by: Martin Afanasjew <martin@afanasjew.de>
2016-07-10tap-info: expose whether a tap is privateMartin Afanasjew
Or how many taps are private when summarizing all installed taps.
2016-07-09tap: run readall when tapping. (#396)Mike McQuaid
* readall: move readall logic to new class. * tap: run readall when tapping. This will prevent tapping an tap with syntax errors from causing issues for users. Fixes #58.
2016-07-07Use GitRepositoryExtension for 'path' in TapMartin Afanasjew
Closes #464. Signed-off-by: Martin Afanasjew <martin@afanasjew.de>
2016-06-20tap: --config unsupported on old Gits.Mike McQuaid
2016-04-19add Tap#default_remoteXu Cheng
* without `default_remote`, `CoreTap#install` won't be able to tell whether user has passed to custom remote to it. * simplify some part of logics
2016-04-19Tap#install: better TapRemoteMismatchError checkXu Cheng
* remote check requires `git` installed. * Do not perform check if user does not passing remote explicitly. Fixes #108
2016-04-12tap: various improvements (#77)Xu Cheng
* make `read_or_set_private_config` private * add doc * add test
2016-04-12Cache `Tap#private?` checks.Mike McQuaid
Use both an in-class and a `.git/config` cache for this so we can ensure that the `Tap#private?` check is fast. Also, make sure this cache value is set both when initially installing and updating a tap. Thanks to @xu-cheng for most of the implementation here.
2016-04-05tap: support --full even if installedilovezfs
Makes `tap` re-runnable and unshallows when requested with `--full`. Tapping with a different URL raises an exception. The homebrew/core tap cannot be untapped with `untap` so running `brew tap --full homebrew/core` is now a built-in way to get a full clone of this tap without resorting to workarounds. Closes #17. Signed-off-by: ilovezfs <ilovezfs@icloud.com>
2016-04-05CoreTap#install: fix clone target settingXu Cheng
When invoking `brew tap homebrew/core`, the input options will be like `{ :clone_target => nil }`. This renders `Hash#merge` a dead operation. It doesn't impact Homebrew itself, but could cause problem for downstream projects Linxubrew/Tigerbrew when they adopt core/formula separation.
2016-04-02various: Homebrew/core is the core tapXu Cheng
Also make `Homebrew/homebrew` as an alias of this tap to keep backward compatibility.
2016-04-02introduce `Homebrew/core` tap as new default core tap.Xu Cheng
It will be auto installed whenever necessary.
2016-03-31Tap#install: set autocrlf to falseXu Cheng
Ensure we don't munge line endings on checkout regardless with user's global git config. Closes Homebrew/homebrew#50514. Signed-off-by: Xu Cheng <xucheng@me.com>
2016-03-23tap: cache dir path to avoid duplicated Pathname operationsXu Cheng
As discovered in Homebrew/homebrew#50256, this becomes a performance bottleneck as we are repeating construct same Pathname object. At the same, this commit makes the behaviors between Tap and CoreTap more consistence.
2016-03-07rename CoreFormulaRepository to CoreTapXu Cheng
Core tap will be separated from core code in the near future. It makes sense to rename it to CoreTap.
2016-03-06tap: add methods to get git related informationXu Cheng
These methods will be used in `brew --version`, `brew config` and `brew doctor` after core/formula separation. Closes Homebrew/homebrew#49796. Signed-off-by: Xu Cheng <xucheng@me.com>
2016-02-26Tap#install: support quiet optionXu Cheng
2016-02-25add Tap#tap_migrationsXu Cheng
This enables tap migration feature in per tap case, which will ultimately help core/formula separation.
2016-02-16add Tap#formula_file?Xu Cheng
Return true if given path would present a Formula file in this Tap. Accepts both absolute path and relative path (relative to this Tap's path) It offer an abstraction such that caller would not need to worry about low level file system in the tap. It will be used in `brew pull` and `brew update`. Closes Homebrew/homebrew#49191. Signed-off-by: Xu Cheng <xucheng@me.com>
2016-02-07Tap: clear_cache for Tap#(un)installXu Cheng
If a tap is installed during the installation, the original cache need to be purged. Otherwise, it will return wrong information afterwards. Closes Homebrew/homebrew#48887. Signed-off-by: Xu Cheng <xucheng@me.com>
2016-01-17Tap: allow invoking formula_file_to_name by Homebrew internallyXu Cheng
2016-01-04tap: require string extensionsMisty De Meo
Fixes Homebrew/homebrew#47684.