Skip to content
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

Add missing Carthage support #520

Merged
merged 1 commit into from
Feb 7, 2019
Merged

Conversation

DmitryPR
Copy link

@DmitryPR DmitryPR commented Jan 25, 2019

For some reason the Cartfile was missing so when adding this library using Carthage the SWXMLhash dependency did not get downloaded

@DmitryPR
Copy link
Author

Hi, can this get merged?

@ystrot ystrot self-assigned this Feb 1, 2019
@ystrot ystrot added this to the 0.9.4 milestone Feb 1, 2019
@ystrot
Copy link
Member

ystrot commented Feb 1, 2019

Hi Dmitry,

Sorry for delay. Macaw team are not using Carthage, so it needs a bit more time to check this. We'll try to merge it on the next week.

@amarunko
Copy link
Contributor

amarunko commented Feb 3, 2019

Hi, @DmitryPR, can you explain in little details, what wrong with automatical fetching by Carthage? For me everyting work as expected in current setup.

@DmitryPR
Copy link
Author

DmitryPR commented Feb 4, 2019

Hello, the integrators who are using Macaw with Carthage need to supply

github "Exyte/Macaw" ~> 0.9.3

and

github "drmohundro/SWXMLHash" == 4.7.5

Because Macaw uses this dependency

This is incorrect behaviour as all the dependencies that Macaw rely on should be listed in the Cartfile so that when the integrators specify github "Exyte/Macaw" ~> 0.9.3 the SWXMLHash would be downloaded along with Macaw

@amarunko
Copy link
Contributor

amarunko commented Feb 4, 2019

@DmitryPR, so, I added in cartfile only Macaw dependency, follow Carthage instructions in readme, project successfully run on OS X and iOS. Found in dependencies folder SWXMLHash, sorry I'm not an expert in Carthage, maybe I missed something, can you explain, please.

@DmitryPR
Copy link
Author

DmitryPR commented Feb 5, 2019

So here is the setup:

We have an iOS library which has Macaw as a dependency using Cocoapods where the SWXMLHash is specified as dynamic dependency
https://github.com/exyte/Macaw/blob/master/Macaw.podspec#L43

After our library is integrated into another project it requires dynamic libraries to be loaded along side with our iOS library:
https://github.com/salemove/ios-carthage-integration/blob/master/Cartfile

Here we have to define SWXMLHash as a Carthage dependency because Macaw brings this dependency in
https://github.com/salemove/ios-bundle/blob/master/Cartfile

This PR makes sure that when there is no need to manually add
github "drmohundro/SWXMLHash" == 4.7.5

as it should be listed in your repository in Carthage file

@amarunko
Copy link
Contributor

amarunko commented Feb 6, 2019

@DmitryPR, I checked, you are right, thank you for your work! One more moment, can you change equality in dependency == to ~>, please. As soon you change this, PR will be merged.

Dependenices for the libraries used in the project should be
list in the Cartfile so when an integrator adds Macaw to his
Cartfile the dependencies should be also downloaded
@amarunko amarunko merged commit bf79a59 into exyte:master Feb 7, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants