aboutsummaryrefslogtreecommitdiffstats
path: root/Library/Homebrew/cmd/bottle.rb
AgeCommit message (Collapse)Author
2016-09-08Move developer-focused commands to dev-cmd.Mike McQuaid
2016-09-08Add `--help` to all developer commands.Mike McQuaid
Also, flag those that we never want to be in a manpage.
2016-09-04Revert "bottle: fix --keep-old JSON generation."Mike McQuaid
This reverts commit 5e9bb877d54fc1803a866f49997f3e819c3ca650.
2016-09-04Revert "bottle: allow --keep-old to ignore same sha256s."Mike McQuaid
This reverts commit ec1437499a178a09805854469c5162d749270f3e.
2016-09-03bottle: allow --keep-old to ignore same sha256s.Mike McQuaid
It should refuse to change existing ones but it should allow them to be the same and silently ignore.
2016-09-03bottle: fix --keep-old JSON generation.Mike McQuaid
Ensure that the JSON file contains all the bottle checksums when using `--keep-old`. This avoids having to use the formula DSL when merging and relies on existing integrity checks. This change does nothing differently if `--keep-old` is not passed.
2016-08-18Rename bottle's revision to rebuild.Mike McQuaid
2016-08-05various: eliminate the usage of `any?` (#638)Xu Cheng
`any?` is not the opposite of `empty?`. Besides the case that `[false, nil].any?` will return false, `any?`(O(n)) has much worse performance than `empty?`(O(1)).
2016-07-27Make method names inquisitiveTim D. Smith
Closes #592. Signed-off-by: Tim D. Smith <git@tim-smith.us>
2016-07-27Don't fail on arbitrary absolute symlinksTim D. Smith
Still forbid absolute symlinks including prefix
2016-07-27Factor out absolute symlink testTim D. Smith
2016-07-13various: proper escape in regexXu Cheng
2016-07-09bottle: revert overeager rename in method callMartin Afanasjew
2016-07-09keg_relocate: port to generic OS. (#453)Mike McQuaid
2016-06-30bottle: add `--skip-relocation` flag to skip keg relocateXu Cheng
This flag is indented to be used in `homebrew/portable` to build vendor ruby/git/curl.
2016-06-24bottle: avoid raising exception in ensure blockMartin Afanasjew
The `ensure` block can be reached before the tab is modified (and thus before `original_tab` gets populated). Avoid raising an exception when attempting to restore a tab that hasn't been modified yet, e.g. because relocating some of the Mach-O binaries failed.
2016-06-03bottle: use short formula name in bottle commitMartin Afanasjew
2016-05-30bintray "package" should be name not full_nameilovezfs
Based on how it's used to construct URLs, the bintray "package" should be the formula name not the formula full_name. For core formulae, there is no difference, but that's not the case in other taps. See https://github.com/Homebrew/homebrew-gui/pull/10 Closes #301. Signed-off-by: ilovezfs <ilovezfs@icloud.com>
2016-05-28bottle/test-bot: deep merge bottle JSON hashes.Mike McQuaid
2016-05-28bottle: JSON-related tweaks/fixes.Mike McQuaid
2016-05-28Use JSON files for bottle upload data. (#166)Mike McQuaid
This means that we do not need to read formulae or evaluate Ruby at upload time.
2016-05-08Make bottle code cross-platform.Mike McQuaid
2016-02-10bottle: do not follow symlink when setting mtimeXu Cheng
Also set atime to mtime, which seems to be a more common practice. Fixes Homebrew/homebrew#49007 Closes Homebrew/homebrew#49027. Signed-off-by: Xu Cheng <xucheng@me.com>
2016-01-26bottle: clear tab cacheXu Cheng
We cached the tab file content during formula loading. Let's discard them, so we can read tab content after relocation
2016-01-26bottle: ensure to restore relocation on text filesXu Cheng
2016-01-15bottle: read source modified time from tabfileXu Cheng
* Avoid unnecessary stage overhead * Support different download strategy, e.g. `git`.
2016-01-14bottle: merging problem when head conatins commasbigbes
If `head` sections contains commas (e.g. `url "https://github.com/tarantool/tarantool.git", :branch => "1.6", :shallow => false`) then re thinks that it reached the end and inserts `bottle do <-> end` block before it, that leads to problems in ` brew audit --devel tarantool --strict --online`: ``` ==> audit problems tarantool: * `head` (line 11) should be put before `bottle block` (line 7) ``` It blocks Homebrew/homebrew#47495 Closes Homebrew/homebrew#47931. Signed-off-by: Dominyk Tiller <dominyktiller@gmail.com>
2015-12-26Revert "minor perf improvements"Baptiste Fontaine
This reverts commit 16a2a8274a7808e63a6c78475e12a7c0ef5812ef.
2015-12-26minor perf improvementsBaptiste Fontaine
Closes Homebrew/homebrew#47224. Signed-off-by: Baptiste Fontaine <batifon@yahoo.fr>
2015-12-26bottle: prevent bottling formula outside core or tapsXu Cheng
Closes Homebrew/homebrew#47233.
2015-12-21bottle: don't read mtime from nonexistant filesØyvind Ingebrigtsen Øvergaard
If the source contains a broken symlink, `brew bottle` would fail for no good reason when trying to determine the most recently modified file. To avoid this, we ignore any files for which stat(2) fails. Closes Homebrew/homebrew#47111. Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2015-12-16bottle: fix Ruby 1.8 breakageMartin Afanasjew
`OpenStruct` (of which `Tab` is a subclass) doesn't support subscripting with square brackets. Use normal dot notation to restore compatibility.
2015-12-15bottle: don't use empty tab.Mike McQuaid
2015-12-15bottle: make bottle checksums reproducible.Mike McQuaid
I've set all the variable data to versions that are dependent on the latest source file date and various modification dates also to the latest source file date. With this if you rerun `brew bottle` multiple times in a row you will see the same checksum even if you have `brew reinstall`ed (as long as upstream does not hardcode e.g. the build date). I debugged this with diffoscope and worked on this as part of the Athens 2015 reproducible builds workshop: https://reproducible-builds.org/events/athens2015/ Closes Homebrew/homebrew#46587. Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2015-11-11keg_relocate: remove options from Keg#dylib_id_forMartin Afanasjew
No longer used since commit 3b0cbe6a56d9133941482a9e2d033ad86cdb5e79. Closes Homebrew/homebrew#45835. Signed-off-by: Xu Cheng <xucheng@me.com>
2015-10-19bottle: fail if bottle is disabledXu Cheng
2015-10-15bottle: allow --merge --write without commitXu Cheng
2015-09-23bottle: output maximum number of strings matches.Mike McQuaid
`brew bottle --verbose` outputs all the matches for a string found in the files inside the Cellar. Instead of outputting all of these just output the first 100. Closes Homebrew/homebrew#44266. Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2015-09-12bottle: allow updating :any to :any_skip_relocation when keep oldXu Cheng
Closes Homebrew/homebrew#43849. Signed-off-by: Xu Cheng <xucheng@me.com>
2015-09-12bottle: only set prefix if un-relocatableXu Cheng
Closes Homebrew/homebrew#43819. Signed-off-by: Xu Cheng <xucheng@me.com>
2015-09-12bottle: auto detect any_skip_relocationXu Cheng
2015-09-12keg_relocate: split relocate_install_names and relocate_text_filesXu Cheng
For bottle with `:any_skip_relocation`, relocating text files is required.
2015-09-11bottle: improve --keep-old error message for merge as wellXu Cheng
2015-09-11bottle: fix output for absolute symlinksXu Cheng
Closes Homebrew/homebrew#43816. Signed-off-by: Xu Cheng <xucheng@me.com>
2015-09-11bottle: improve --keep-old error message.Mike McQuaid
2015-09-11bottle: allow to keep old bottle specificationXu Cheng
Closes Homebrew/homebrew#43766. Signed-off-by: Xu Cheng <xucheng@me.com>
2015-09-11bottle: use if-else branch instead of exitXu Cheng
2015-08-03Core files style updates.BrewTestBot
Closes Homebrew/homebrew#42354. Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2015-07-10bottle: improve relocationXu Cheng
* skip document for relocatable check * relocate INSTALL_RECEIPT.json file Fixes Homebrew/homebrew#41545. Closes Homebrew/homebrew#41568. Signed-off-by: Xu Cheng <xucheng@me.com>
2015-07-06stop setting root_url for offical taps' bottlesXu Cheng