Carthage: Normalize GitHub repository names specified with git keyword

Created on 14 Dec 2016  路  6Comments  路  Source: Carthage/Carthage

  • carthage version: 0.18.1
  • xcodebuild -version: 8b62
  • Are you using --no-build? no
  • Are you using --no-use-binaries?no
  • Are you using --use-submodules? no

Cartfile

some other framework with some common frameworks

Cartfile.resolved

...
github "Alamofire/Alamofire" "4.2.0"
git "[email protected]:Alamofire/Alamofire.git" "4.2.0"
github "steipete/Aspects" "1.4.2"
git "[email protected]:iOS/AudioProtocol.git" "0.1.5"
github "CodeEagle/CoverFlowPlainLayout" "0.0.6"
git "[email protected]:krzyzanowskim/CryptoSwift.git" "0.6.6"
github "krzyzanowskim/CryptoSwift" "0.6.6"
github "CodeEagle/DGElasticPullToRefresh" "2.0.0"
github "CodeEagle/FDFullscreenPopGesture" "1.2"
github "hkellaway/Gloss" "1.1.1"
git "[email protected]:hkellaway/Gloss.git" "1.1.1"
git "[email protected]:CodeEagle/HMSegmentedControl_CodeEagle.git" "0.2.4"
github "CodeEagle/HMSegmentedControl_CodeEagle" "0.2.4"
github "CodeEagle/KVOBlock" "0.1.3"
git "[email protected]:iOS/LoIconFont.git" "0.0.7"
git "[email protected]:jdg/MBProgressHUD.git" "1.0.0"
github "nixzhu/MonkeyKing" "1.1.0"
git "[email protected]:iOS/NetworkImageExtension.git" "0.0.7"
github "CodeEagle/OpaqueTextLayer" "0.0.6"
git "[email protected]:SnapKit/SnapKit.git" "3.1.1"
github "SnapKit/SnapKit" "3.1.1"
git "[email protected]:radex/SwiftyTimer.git" "2.0.0"
git "[email protected]:iOS/SystemEnhancement.git" "0.2.9"
github "CodeEagle/TimeAgo" "0.1.5"
github "CodeEagle/YYCache" "1.0.6"
git "[email protected]:ibireme/YYCache.git" "1.0.4"
github "ibireme/YYText" "1.0.7"
github "CodeEagle/ZLSwipeableViewSwift" "0.0.9"
git "[email protected]:CodeEagle/CacheLeaf.git" "0.0.3"
github "CodeEagle/CacheLeaf" "0.0.3"
git "[email protected]:iOS/LoDI.git" "0.1.5"
git "[email protected]:iOS/NavigationBarRightButtonsProvidable.git" "0.0.1"
github "CodeEagle/RainbowTransition" "0.0.7"
github "CodeEagle/ScrollviewBatchFetchingable" "0.1.5"
github "CodeEagle/TipsManager" "0.1.5"
git "[email protected]:iOS/Persistence.git" "0.3.3"
git "[email protected]:CodeEagle/SSPageViewController.git" "1.0.2"
...

Carthage Output

*** Fetching RecommandTab
*** Fetching LuooMyAccount
*** Fetching YYText
*** Fetching OpaqueTextLayer
*** Fetching TimeAgo
*** Fetching FDFullscreenPopGesture
*** Fetching RainbowTransition
*** Fetching SSPageViewController
*** Fetching HMSegmentedControl_CodeEagle
*** Fetching DGElasticPullToRefresh
*** Fetching CoverFlowPlainLayout
*** Fetching ZLSwipeableViewSwift
*** Fetching CacheLeaf
*** Fetching YYCache
*** Fetching Gloss
*** Fetching CryptoSwift
*** Fetching SnapKit
*** Fetching Alamofire
*** Fetching LoPay
*** Fetching NavigationBarRightButtonsProvidable
*** Fetching LoMusicIcon
*** Fetching LoButtons
*** Fetching LoIconFont
*** Fetching NetCore
*** Fetching Persistence
*** Fetching LoDI
*** Fetching NetworkImageExtension
*** Fetching SystemEnhancement
*** Fetching AudioProtocol
*** Fetching LoBanner
*** Fetching LoSearch
*** Fetching libPhoneNumber-iOS
*** Fetching MonkeyKing
*** Fetching qiniu_upload
*** Fetching TOCropViewController
*** Fetching UITextView-Placeholder
*** Fetching TipsManager
*** Fetching STPopup
*** Fetching ScrollviewBatchFetchingable
*** Fetching AlamofireImage
*** Fetching LoWebViewController
*** Fetching FreePlayer
*** Fetching LoEmptyState
*** Fetching KVOBlock
*** Fetching Aspects
*** Fetching LoPath
*** Fetching SwiftyTimer
*** Checking out Alamofire at "4.2.0"
*** Checking out Alamofire at "4.2.0"
*** Checking out AlamofireImage at "3.2.0"
*** Checking out Aspects at "1.4.2"
*** Checking out AudioProtocol at "0.1.5"
*** Checking out CacheLeaf at "0.0.3"
*** Checking out CacheLeaf at "0.0.3"
*** Checking out CoverFlowPlainLayout at "0.0.6"
*** Checking out CryptoSwift at "0.6.6"
*** Checking out CryptoSwift at "0.6.6"
*** Checking out DGElasticPullToRefresh at "2.0.0"
*** Checking out DGElasticPullToRefresh at "2.0.0"
*** Checking out FDFullscreenPopGesture at "1.2"
*** Checking out Gloss at "1.1.1"
*** Checking out Gloss at "1.1.1"
*** Checking out HMSegmentedControl_CodeEagle at "0.2.4"
*** Checking out HMSegmentedControl_CodeEagle at "0.2.4"
*** Checking out KVOBlock at "0.1.3"
*** Checking out libPhoneNumber-iOS at "0.9.1"
*** Checking out LoDI at "0.1.5"
*** Checking out LoIconFont at "0.0.7"
*** Checking out MBProgressHUD at "1.0.0"
*** Checking out MonkeyKing at "1.1.0"
*** Checking out MonkeyKing at "1.1.0"
*** Checking out NavigationBarRightButtonsProvidable at "0.0.1"
*** Checking out NetworkImageExtension at "0.0.7"
*** Checking out OpaqueTextLayer at "0.0.6"
*** Checking out qiniu_upload at "3.0.1"
*** Checking out RainbowTransition at "0.0.7"
*** Checking out ScrollviewBatchFetchingable at "0.1.5"
*** Checking out ScrollviewBatchFetchingable at "0.1.5"
*** Checking out SnapKit at "3.1.1"
*** Checking out SnapKit at "3.1.1"
*** Checking out SSPageViewController at "1.0.2"
*** Checking out SSPageViewController at "1.0.2"
*** Checking out STPopup at "1.8.2"
*** Checking out SwiftyTimer at "2.0.0"
*** Checking out SystemEnhancement at "0.2.9"
*** Checking out LoPath at "0.0.3"
*** Checking out TimeAgo at "0.1.5"
*** Checking out TimeAgo at "0.1.5"
*** Checking out TipsManager at "0.1.5"
*** Checking out TipsManager at "0.1.5"
*** Checking out TOCropViewController at "2.1.1"
*** Checking out UITextView-Placeholder at "1.2.1"
*** Checking out YYCache at "1.0.4"
*** Checking out Persistence at "0.3.3"
*** Checking out FreePlayer at "0.4.2"
*** Checking out LoEmptyState at "0.0.4"
*** Checking out LoMusicIcon at "0.1.0"
*** Checking out LoWebViewController at "0.0.3"
*** Checking out NetCore at "0.3.5"
*** Checking out LoBanner at "0.0.3"
*** Checking out LoButtons at "0.3.4"
*** Checking out LoPay at "0.0.6"
*** Checking out LoSearch at "0.1.0"
*** Checking out YYCache at "1.0.6"
*** Checking out YYText at "1.0.7"
*** Checking out YYText at "1.0.7"
*** Checking out LuooMyAccount at "0.0.7"
*** Checking out ZLSwipeableViewSwift at "0.0.9"
*** Checking out RecommandTab at "0.1.4"
*** xcodebuild output can be found in /var/folders/qt/yjd8dzt156sb16s8x2zpn5gr0000gn/T/carthage-xcodebuild.YwkvDG.log
*** Building scheme "Alamofire iOS" in Alamofire.xcworkspace
*** Building scheme "Alamofire iOS" in Alamofire.xcworkspace
*** Building scheme "AlamofireImage iOS" in AlamofireImage.xcworkspace
*** Building scheme "Aspects-iOS" in Aspects.xcodeproj
*** Building scheme "GenericAudioProtocol" in GenericAudioProtocol.xcodeproj
*** Building scheme "CacheLeaf" in CacheLeaf.xcodeproj
*** Building scheme "CacheLeaf" in CacheLeaf.xcodeproj
*** Building scheme "CoverFlowPlainLayout" in CoverFlowPlainLayout.xcodeproj
*** Building scheme "CryptoSwift" in CryptoSwift.xcworkspace
*** Building scheme "CryptoSwift" in CryptoSwift.xcworkspace
*** Building scheme "DGElasticPullToRefresh" in DGElasticPullToRefreshExample.xcodeproj
*** Building scheme "DGElasticPullToRefresh" in DGElasticPullToRefreshExample.xcodeproj

image

expect to build same framework once,but twice

enhancement help wanted

All 6 comments

Multiple *** Fetching or *** Checking out shouldn't happen, but it doesn't meant that the framework is getting built multiple times.

*** Building scheme "Alamofire iOS" in Alamofire.xcworkspace
*** Building scheme "Alamofire iOS" in Alamofire.xcworkspace
*** Building scheme "AlamofireImage iOS" in AlamofireImage.xcworkspace
*** Building scheme "Aspects-iOS" in Aspects.xcodeproj
*** Building scheme "GenericAudioProtocol" in GenericAudioProtocol.xcodeproj
*** Building scheme "CacheLeaf" in CacheLeaf.xcodeproj
*** Building scheme "CacheLeaf" in CacheLeaf.xcodeproj
*** Building scheme "CoverFlowPlainLayout" in CoverFlowPlainLayout.xcodeproj
*** Building scheme "CryptoSwift" in CryptoSwift.xcworkspace
*** Building scheme "CryptoSwift" in CryptoSwift.xcworkspace
*** Building scheme "DGElasticPullToRefresh" in DGElasticPullToRefreshExample.xcodeproj
*** Building scheme "DGElasticPullToRefresh" in DGElasticPullToRefreshExample.xcodeproj

It does build twice

Carthage treats

github "Alamofire/Alamofire" "4.2.0"
git "[email protected]:Alamofire/Alamofire.git" "4.2.0"

as different framework

Thanks! That's very helpful.

@mdiep I'll take this one

Seems to be a non-issue on Carthage 0.23.0

I have tried with:

github "SnapKit/SnapKit" ~> 3.2.0
git "[email protected]:SnapKit/SnapKit" ~> 3.2.0

and I see only one checkout.

Further more the oder of the lines make a difference, only the first found specification is used for checkout.

Should this produce a duplicate dependency error?

Good, I guess! 馃槄

Should this produce a duplicate dependency error?

Yes, ideally. 馃憤

Was this page helpful?
0 / 5 - 0 ratings

Related issues

3lvis picture 3lvis  路  3Comments

willhains picture willhains  路  3Comments

akaffenberger picture akaffenberger  路  3Comments

justinmakaila picture justinmakaila  路  4Comments

faustperic picture faustperic  路  3Comments