Some Git versions create absolute `gitdir:` pointers in a submodule's
`.git` file, which can be problematic once the resource is staged and
causes various Git operations for those submodules to fail. Work around
this issue by fixing the submodule `.git` files after submodule update.
See Homebrew/homebrew-core#1520 for details and an affected formula.
This mainly fixes the problems for subclasses of CurlDownloadStrategy.
More specifically it fixes two things:
* It allows the no insecure redirect check to be applied to
CurlApacheMirrorDownloadStrategy.
* It fixes previous broken CurlPostDownloadStrategy.
Closes#280.
Signed-off-by: Xu Cheng <xucheng@me.com>
Also enables sandbox for --interactive and --debug use of install
and test, using automatic retention.
Closes#66.
Signed-off-by: Andrew Janke <andrew@apjanke.net>
Moves the "Checking out" output to where checkouts actually happen, to avoid spurious checkout announcements.
ClosesHomebrew/homebrew#45019.
Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
The ASF now has a preferred .lua mirror script on top of the .cgi file
ClosesHomebrew/homebrew#43521.
Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
This allows some curl options to be always passed to curl, with raw
head calls (`curl -I`) (in `CurlDownloadStrategy#actual_urls`) or with
actual `curl` (in `CurlDownloadStrategy#curl`).
This also avoid the need for overriding whole `_fetch` in a few cases
and just override `_curl_opts` to append additional options instead.
ClosesHomebrew/homebrew#41506.
Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
Adds some added security to Git tags so we are able to provide an
effective checksum rather than letting them be changed without our
knowing.
Also:
- Reprioritise ref_types. Tag should take priority over branch and revisions over a single one.
- Add current_revision method. Used to verify the current repository revision matches the specified
revision. Currently only implemented for Git.
This is causing submodules to be checked out into a path with a literal
"$path" component:
$ find . | grep "\$path$"
./$path
./Carthage/Checkouts/Commandant/$path
./Carthage/Checkouts/Commandant/Carthage/Checkouts/Quick/$path
./Carthage/Checkouts/PrettyColors/$path
./Carthage/Checkouts/Quick/$path
./Carthage/Checkouts/ReactiveCocoa/$path
./Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/$path
./Carthage/Checkouts/ReactiveTask/$path
./Carthage/Checkouts/ReactiveTask/Carthage/Checkouts/Quick/$path
./Carthage/Checkouts/ReactiveTask/Carthage/Checkouts/ReactiveCocoa/$path
./Carthage/Checkouts/ReactiveTask/Carthage/Checkouts/ReactiveCocoa/Carthage.checkout/Quick/$path
This reverts commit 3a5f099297e9ab3b799af5f7a65edd8d64bc7bae.