Mike McQuaid
3710beda66
download_strategy: fix Git repo updating.
...
Git repositories should always be updated when the ref is a branch.
They should be also updated if no ref was specified or if the ref isn’t
present. This stops the repo being updated if we’re building a specific
revision and it is present. Additionally, this stops the update barfing
on repositories where we’re using a revision and there is no upstream
`master` branch.
Closes Homebrew/homebrew#29218 .
2014-05-13 16:23:06 +01:00
Jack Nagel
260a351663
Recognize and extract xar files
2014-04-06 12:35:54 -05:00
Jack Nagel
7541f13164
Extract common decompression code to a method
2014-04-06 11:34:08 -05:00
Jack Nagel
cb5da28b5c
Handle untarred bzip2 files
...
Fixes Homebrew/homebrew#28187 .
2014-04-06 11:33:50 -05:00
Jack Nagel
45bdeadd94
Set bottle download strategy directly
...
We know what strategy we want, so going through DownloadStrategyDetector
is wasted work. Now we can remove those patterns from the detector and
have two fewer branches each time through.
2014-03-18 21:28:33 -05:00
Jack Nagel
aaea4d236a
Reorder download strategy symbols by frequency
2014-03-18 21:28:33 -05:00
Jack Nagel
eace29a50e
Reorder download strategy regexps by frequency
2014-03-18 21:28:29 -05:00
Josh Tilles
2225ebc44e
Adapt to Git 1.9's submodule foreach
changes
...
Closes Homebrew/homebrew#26871 .
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2014-02-21 00:05:42 -05:00
Jack Nagel
457d409f80
GitDownloadStrategy: fix typo'd parameter name
...
This should be "resource", not "resources", though it works anyway
because there is a also "resource" reader method.
2014-02-15 01:43:06 -05:00
Jack Nagel
7eec2d8b5a
GitDownloadStrategy: allow disabling of shallow clone
...
Closes Homebrew/homebrew#25751 .
Closes Homebrew/homebrew#26730 .
2014-02-14 16:55:26 -05:00
Jack Nagel
5ce4c2a3f8
VCSDownloadStrategy: use REF_TYPES when extracting ref to use
2014-02-14 15:33:37 -05:00
Jack Nagel
41e3b2cad0
VCSDownloadStrategy: document acceptable ref types
2014-02-14 15:33:37 -05:00
Jack Nagel
a25152b5a1
GitDownloadStrategy: inline simple method
2014-02-14 15:33:37 -05:00
Jack Nagel
df9a8a3365
GitDownloadStrategy: move constant to top of class body
2014-02-14 15:33:37 -05:00
Adam Vandenberg
5252c35f34
fix typo in this notice
2013-12-05 20:26:40 -08:00
Jack Nagel
fa5b633650
SubversionDownloadStrategy: handle changed repository URL
...
Fixes Homebrew/homebrew#22159 .
2013-12-03 21:13:02 -06:00
Jack Nagel
94333c64c1
SubversionDownloadStrategy: no need to escape 'svn'
2013-12-03 21:13:02 -06:00
Jack Nagel
6d7a3d7fa4
download_strategy: use clear_cache where appropriate
2013-12-03 10:14:11 -06:00
Adam Vandenberg
268feffae4
support .lz archives
...
Closes Homebrew/homebrew#24775 .
2013-11-29 15:18:49 -08:00
Jack Nagel
ea32b5166c
ApacheDownloadStrategy: fall back to specified mirrors
...
Fixes Homebrew/homebrew#24157 .
2013-11-26 22:57:10 -06:00
Jack Nagel
1f190890fd
Implement inferred CVS dependency
...
Fixes Homebrew/homebrew#24444 .
Closes Homebrew/homebrew#24445 .
Closes Homebrew/homebrew#24458 .
2013-11-18 19:56:15 -06:00
Jack Nagel
c137f030bc
Whitelist llvm.org for shallow git clones
2013-11-13 01:56:25 -06:00
Jack Nagel
9dd2f1a2c3
Fix Apache download strategy in verbose mode
...
A better fix would be to rewrite the curl method to yield its output,
but I don't feel like doing that right now.
2013-11-11 12:36:14 -06:00
Jack Nagel
e470010f2e
Add git.sv.gnu.org repositories to shallow-clone whitelist
2013-11-05 22:06:20 -06:00
Jack Nagel
d35e465671
fetch: clear partial downloads when --force is given
...
Fixes Homebrew/homebrew#23764 .
2013-10-31 14:29:38 -05:00
Jack Nagel
a5b2814770
Use curl to download list of Apache mirrors
...
Ruby's OpenURI library is somewhat broken under 1.8 and chokes on
otherwise valid values of http(s)_proxy. Use curl to get the mirror list
instead.
Fixes Homebrew/homebrew#23708 .
2013-10-30 00:11:46 -05:00
Jack Nagel
bf93748c6a
CurlDownloadStrategy: no need to to_s, name should never be nil
2013-10-12 20:19:21 -05:00
Jack Nagel
40c0ed8a9a
SubversionDownloadStrategy: don't mutate URL string
2013-10-11 19:26:14 -05:00
Jack Nagel
284a3716ea
CurlDownloadStrategy: dup mirror list before mutating it
2013-10-11 19:14:52 -05:00
Jack Nagel
3f0a409ec5
GitDownloadStrategy: remove redundant use of nostdout
2013-10-11 00:21:25 -05:00
Jack Nagel
9705e922e3
GitDownloadStrategy: remove redundant use of :quiet_flag
2013-10-11 00:21:25 -05:00
Jack Nagel
90b1102f1a
GitDownloadStrategy: @@git is always a string, so inline it
2013-10-11 00:21:24 -05:00
Jack Nagel
069d5d2dce
SubversionDownloadStrategy: @@svn is always a string, so inline it
2013-10-11 00:21:24 -05:00
Jack Nagel
932091f9e0
VCSDownloadStrategy: pull construction of @clone into superclass
2013-10-11 00:21:23 -05:00
Jack Nagel
ed7f8faed2
VCSDownloadStrategy: rename checkout_name to cache_filename
2013-10-11 00:21:23 -05:00
Jack Nagel
dd719e7ca6
Move cached_location up to VCSDownloadStrategy
2013-10-10 11:24:36 -05:00
Jack Nagel
1626282c45
download_strategy: rename @co to @clone for uniformity
2013-10-10 11:24:35 -05:00
Jack Nagel
05a2261877
MercurialDownloadStrategy: avoid creating Formula object just for opt_prefix
2013-10-10 10:31:08 -05:00
Jack Nagel
4a2fc89c46
S3DownloadStrategy: use temporary_path accessor
2013-10-09 21:55:58 -05:00
Jack Nagel
bf1d04f039
Move checkout_name from AbstractDownloadStrategy to VCSDownloadStrategy
2013-10-09 21:41:15 -05:00
Jack Nagel
3cda215881
VCSDownloadStrategy: destructure spec hash more efficiently
2013-10-09 21:41:15 -05:00
Jack Nagel
6c5a9ae0fb
Extract a new superclass for VCS-based download strategies
2013-10-09 21:41:15 -05:00
Jack Nagel
e27574b27b
SubversionDownloadStrategy: stop mutating revisions hash
2013-10-09 21:41:14 -05:00
Jack Nagel
3d7de0065b
download_strategy: style nits
2013-10-09 21:41:14 -05:00
Jack Nagel
c790a4f45e
download_strategy: rename @spec to @ref_type
2013-10-09 21:41:14 -05:00
Jack Nagel
57560c03e6
Handle invalid names in download strategies
...
When subformulae are initialized without a name parameter, Homebrew
assigns the name "__UNKNOWN__". This may cause collisions in the cache.
Currently CurlDownloadStrategy and its descendants handles this by
extracting the basename form the URL and using that as the cached
filename. However, other strategies simply raise an exception.
We can improve the other strategies by URL-encoding the URL string and
using that as the cached directory name.
Note that this happens very rarely, especially now that resources (which
always have a name) are preferred to subformulae. The most common case
is a subformula that specifies a head download.
Closes Homebrew/homebrew#22949 .
2013-09-30 22:56:02 -05:00
Jack Nagel
a380265e90
BazaarDownloadStrategy: handle corrupt checkouts
2013-09-28 18:38:32 -05:00
Jack Nagel
06d2aa11ee
Remove commented out code, this is in git after all
2013-09-28 18:38:30 -05:00
Jack Nagel
da2efa46aa
SubversionDownloadStrategy: handle corrupt checkouts
2013-09-28 18:01:00 -05:00
Jack Nagel
5468733e63
MercurialDownloadStrategy: pull quietly in non-verbose mode
2013-09-28 17:09:05 -05:00