New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

0.7.4 Infinite Loop #493

Closed
justinmakaila opened this Issue May 26, 2015 · 18 comments

Comments

Projects
None yet
6 participants
@justinmakaila

justinmakaila commented May 26, 2015

All I have to really explain this bug is the video (Pardon the audio, but my FaceTime call seemed to sync up perfectly with what was happening):
https://www.dropbox.com/s/aywzqyhwcdp1kly/IMG_0104.MOV?dl=0

Pre-release 0.7.4

Let me know if there's any other information that I can provide.

@jspahrsummers

This comment has been minimized.

Member

jspahrsummers commented May 27, 2015

Are you positive that you're running 0.7.4? Could you please paste the output of carthage version?

If so, can you share the Cartfile that demonstrates the issue?

@justinmakaila

This comment has been minimized.

justinmakaila commented May 27, 2015

carthage version output:

~/W/S/PresentRooms (master) $ carthage version
0.7.4

Cartfile:

github "onevcat/Kingfisher" >= 1.4

github "ReactiveCocoa/ReactiveCocoa" "swift-1.2"

github "Present-Inc/CameraKit"
github "Present-Inc/TableAdapter"
github "Present-Inc/PresentPrePermissions"
github "Present-Inc/HLSKit"
github "Present-Inc/APIKit"

github "naoty/Timepiece"

github "pNre/ExSwift"

Heads up: HLSKit is private.

@justinmakaila

This comment has been minimized.

justinmakaila commented May 28, 2015

I think I've narrowed it down a bit...

If I comment out HLSKit and APIKit, it only loops on Fetching LLamaKit, and if I attempt to checkout after manually modifying my Cartfile.resolved (paying extra attention to dependencies!), I get:

~/W/S/PresentRooms (master) $ carthage checkout
*** Checking out Alamofire at "1.2.2"
*** Checking out PresentPrePermissions at "1.0.5"
*** Checking out Timepiece at "0.3.3"
*** Checking out SwiftyJSON at "2.2.0"
*** Checking out Kingfisher at "1.4.1"
*** Fetching LlamaKit
A shell task failed with exit code 128:
fatal: Not a git repository (or any of the parent directories): .git
XXXXXX

*** Checking out ReactiveCocoa at "43808aaf3e3034dcb96857f44291296786caa2c4"
fish: Job 1, 'carthage checkout' terminated by signal SIGSEGV (Address boundary error)

Where XXXXXX is the tail-end of my password for git, which is for some reason getting logged.

@jspahrsummers

This comment has been minimized.

Member

jspahrsummers commented May 28, 2015

Sounds like this could be an issue with prompting for Git credentials. Do you get prompted for username/password when you fetch any of those repos over HTTPS using git fetch?

cc @mdiep

@justinmakaila

This comment has been minimized.

justinmakaila commented May 28, 2015

Not on the ones that seem to cause problems.

—Justin Makaila

On Thu, May 28, 2015 at 2:45 PM, Justin Spahr-Summers
notifications@github.com wrote:

Sounds like this could be an issue with prompting for Git credentials. Do you get prompted for username/password when you fetch any of those repos over HTTPS using git fetch?

Reply to this email directly or view it on GitHub:
#493 (comment)

@mdiep

This comment has been minimized.

Member

mdiep commented May 28, 2015

What's the output of git --version?

@justinmakaila

This comment has been minimized.

justinmakaila commented May 28, 2015

$ git --version
git version 2.3.2 (Apple Git-55)
@mdiep

This comment has been minimized.

Member

mdiep commented May 28, 2015

Could Carthage be failing to capture the complete output of one of the git credential fill commands?

@jspahrsummers

This comment has been minimized.

Member

jspahrsummers commented May 29, 2015

It should no longer be on 0.7.4b2.

@justinmakaila Could you please try using the second beta and seeing if that helps?

@jspahrsummers jspahrsummers self-assigned this May 29, 2015

@justinmakaila

This comment has been minimized.

justinmakaila commented May 29, 2015

@jspahrsummers, still encountering the infinite loop issue, but I'm no longer running into the checkout issue.

I am now experiencing the segmentation fault issue mentioned in #497

@jspahrsummers jspahrsummers removed their assignment Jun 1, 2015

@jspahrsummers

This comment has been minimized.

Member

jspahrsummers commented Jun 6, 2015

I've tagged 0.7.4, which should fix all the hanging and crashing issues that we know about. The update should become available in Homebrew soon.

@zdavison

This comment has been minimized.

zdavison commented Jun 17, 2015

I'm still seeing this issue on 0.7.4.

Sometimes, rather than loop infinitely, it deadlocks.

....
*** Fetching ReactiveCocoa
*** Fetching LlamaKit
*** Fetching Alamofire
2015-06-17 16:43:19.161 carthage[51408:76271] *** -[NSLock lock]: deadlock (<NSLock: 0x7fbdfa43f5c0> 'org.reactivecocoa.ReactiveCocoa.SignalProducer.buffer')
2015-06-17 16:43:19.162 carthage[51408:76271] *** Break on _NSLockError() to debug.
2015-06-17 16:43:27.417 carthage[51408:76678] *** -[NSLock lock]: deadlock (<NSLock: 0x7fbdfa70aed0> 'org.reactivecocoa.ReactiveCocoa.SignalProducer.buffer')
2015-06-17 16:43:27.417 carthage[51408:76678] *** Break on _NSLockError() to debug.
@evgenyneu

This comment has been minimized.

evgenyneu commented Jun 25, 2015

It looks like I have similar locking issue. Carthage version 0.7.5, git version 2.3.6, OS X 10.10.3. The error occurs consistently preventing me to complete carthage update.

$ carthage update --platform iOS
*** Fetching OHHTTPStubs
*** Fetching Nimble
*** Fetching Quick
*** Fetching Cosmos
*** Fetching UnderKeyboard
*** Fetching FitLoader
*** Fetching load-facebook-profile-ios-swift
*** Fetching keychain-swift
*** Fetching SVProgressHUD
*** Fetching JsonSwiftson
*** Fetching Kingfisher
*** Fetching AwesomeCache
*** Fetching Bond
*** Fetching braintree-framework-builder
*** Fetching BrightFutures
*** Fetching MprHttp
*** Fetching Dodo
*** Fetching Result
2015-06-26 09:21:14.250 carthage[12617:2434212] *** -[NSLock lock]: deadlock (<NSLock: 0x7ff5ae0c1090> 'org.reactivecocoa.ReactiveCocoa.SignalProducer.buffer')
2015-06-26 09:21:14.253 carthage[12617:2434212] *** Break on _NSLockError() to debug.

... and then it keep showing those deadlock line forever until I press Control-C.

Cartfile

github "exchangegroup/braintree-framework-builder" ~> 3.8.1
github "sync/Bond" "feature/swift-2.0"
github "sync/AwesomeCache" "feature/swift-2.0"
github "sync/Kingfisher" "swift-2.0"
github "evgenyneu/JsonSwiftson" ~> 2.0
github "sync/SVProgressHUD" ~> 1.1.4
github "exchangegroup/keychain-swift" ~> 2.0
github "exchangegroup/load-facebook-profile-ios-swift" == 2.0.2
github "exchangegroup/FitLoader" ~> 2.0
github "exchangegroup/UnderKeyboard" ~> 1.0
github "exchangegroup/Cosmos" ~> 1.0

Carfile.private

github "Quick/Quick" == 0.4.0
github "Quick/Nimble" == 2.0.0
github "AliSoftware/OHHTTPStubs" == 4.0.2

I hope it will help fixing the issue.

Update

I think I found the possible source of the issue. The Cartfile pulls this library

github "exchangegroup/load-facebook-profile-ios-swift" == 2.0.2

That library has a Cartfile itself with this dependency:

github "sync/BrightFutures" "swift2-2.0-development-update-result"

The branch swift2-2.0-development-update-result does not exist (it has been deleted). And that's what is probably causing the issue. If I change swift2-2.0-development-update-result to existing branch swift2.0-update-result the issue goes away.

So I think the lock issue appears when Cartfile has a library which depends on a repo with non-existing branch.

@ikesyo

This comment has been minimized.

Member

ikesyo commented Sep 1, 2015

@evgenyneu Thank you for digging into this!

So I think the lock issue appears when Cartfile has a library which depends on a repo with non-existing branch.

That seems correct. The Cartfile entries of @justinmakaila have same situation, the branch in github "SwiftyJSON/SwiftyJSON" "xcode6.3" which comes from github "Present-Inc/APIKit" does not exist now.

@justinmakaila

This comment has been minimized.

justinmakaila commented Sep 2, 2015

@ikesyo, Present-Inc/APIKit does exist, it's just private.

@ikesyo

This comment has been minimized.

Member

ikesyo commented Sep 2, 2015

@justinmakaila I didn't say that the Present-Inc/APIKit repository does not exist, but said xcode6.3 branch of SwiftyJSON/SwiftyJSON which is specified in the Cartfile of Present-Inc/APIKit does not.

@justinmakaila

This comment has been minimized.

justinmakaila commented Sep 2, 2015

@ikesyo Ah. My fault!

@ikesyo

This comment has been minimized.

Member

ikesyo commented May 31, 2017

Closing this due to inactivity.

@ikesyo ikesyo closed this May 31, 2017

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment