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
Kiwi 2.0 - Installing/configuring Kiwi #180
Comments
I think your analysis is spot on. If I were able to see the future it looks as if Apple is working to address this with their module proposals but that doesn't help us at this point. I like the idea of having a static versioned libKiwi.a library and headers. You may want to narrow your focus by just saying Kiwi 2.0 is for ARC projects. There seem to be enough requests for Kiwi for OS X projects that we need to think about installations for both platforms. I don't know if you need to worry about a framework or target - just clear instructions (i.e. Go to Build Phases and do this...) should be fine. That said - maybe a simple prebaked target might be nice ... |
My thoughts, for what they're worth:
|
@eraserhd totally agree. One more - what about providing a plug and play .framework download, that doesn't have to be compiled by the end user? |
https://github.com/kstenerud/iOS-Universal-Framework actually seems like it would really help with this - there would be official versioned framework drops of Kiwi. At that point, it's simply a matter of using the framework with the correctly configured target - no header headaches, clear versioning, etc. I like CocoaPods a lot, but my main hesitation of making it the 'only' supported way is that there are developers who are hesitant about installing another software manager like tool on their machines. It also adds complexity in the sense that there will be one more prerequisite for using Kiwi. But definitely I'd keep CocoaPods support around. Also, @shepting has a guide on OS X usage of Kiwi here, I think it would be great to integrate the documentation - https://github.com/shepting/kiwi-mac-demo. Also, a sample project really really makes sense. Not only in terms of showing how to configure Kiwi, but also as a gold standard for how tests should be written. |
My vote for setup is obviously for CocoaPods but there's certainly no downside to having other directions as well. I've added my Mac directions to this project as https://github.com/allending/Kiwi/wiki/Up-and-Running-with-Kiwi-for-Mac. I left the sample app where it is for the time being. |
Hey everyone, happy new year.. kinda. I've been playing around with the framework approach and it is really appealing to me. It reduces the setup to these steps:
2, 3, and 4 are pretty unavoidable (unless you use a script) in any case. 1 is awesome cause it pushes the versioning, packaging, and annoyance of how to add Kiwi to a project to the maintainers (us). It also more closely emulates how SenTestingKit is deployed by default when you use test targets.
Attaching an example of a built framework that works like described above. |
I have a few arguments which make me favor CocoaPods.
|
Persuasive arguments Jonah. I can tell when I'm wrong. Lets go for cocoapods then since there hasn't been any data in the form of a developer that does not want to use it. On Jan 10, 2013, at 1:02 PM, Jonah notifications@github.com wrote:
|
@allending I'm glad we can win you over, hopefully without steamrolling you. I'll try to make sure I'm up to date with the current state of and work on CocoaPods. For users unfamiliar with pods I'm afraid this does complicate the install process, hopefully we can provide clear guidelines on how to get up and running, or at least refer them to good documentation provided by pods (I know an update to their docs is in the works). Hopefully anyone who really cannot use pods (e.g. me trying to add some test coverage to a real mess of a project whose config structure might conflict with pods') will be willing and able to deal with a more complex and not recommended manual installation from source. Otherwise if there is real demand for a non-pod install maybe we need to offer both and can have the pod install build and link against a framework you could also install manually. |
Sorry for my late reply. Totally agreed with @jonah-carbonfive In my opinion, we can try supporting both, or at least major updates in a .framework form. |
Having CocoaPods as the recommended solution (but still with a manual option if necessary) sounds like a good idea, and seems to be the way that projects like RestKit and AFNetworking are doing it. I've been starting a new project this week, and trying to mix a couple of non-Cocoapods frameworks (specifically testing frameworks, it seems) with other Cocoapods libraries has caused me no end of issues. In fact, I've wound up doing manual installs of the other frameworks I was using rather than fighting a losing battle. A supported, official Cocoapod installation of Kiwi would be great. |
Also, for what it's worth - I've been exploring the various options for iOS testing recently, and a few setup-related niceties have really stuck out to me:
|
Updated podspec to point to version 2.0.x. Working on fixing project structure and docs. |
Initial 2.0.x install guide based on previous CocoaPods guide here: https://github.com/allending/Kiwi/wiki/Kiwi-2.0.x-Installation |
Sigh. Allen - if you keep improving things at this pace, I'm going to have to rewrite my book. Great job - Daniel
|
Fantastic, nice work @allending. |
Great work, @allending! I'm having a few issues after simply following your initial Kiwi 2.0 installation guide, however. It may be something wrong with my Xcode setup, but I followed your guide step-by-step. The only deviation was when Cocoapods warned me:
I added
Other Linker Flags for my test bundle target includes Is this my problem, or something wrong with the Kiwi setup? |
Aha. After a bit of searching, it appears that the issue I'm hitting is the one discussed in this commit: allending@68ae5c0, which looks like it's a Cocoapods issue: CocoaPods/CocoaPods#653 |
Started work on revised 2.0 docs - https://github.com/allending/Kiwi/wiki. @dimsumthinking sorry ;) |
@allending is this ready for closing? :) |
Lets tackle streamlined installation as the first task in 2.0 as I think that is the biggest barrier to entry for new uses.
I'd like to get feedback on how people are installing/using Kiwi in their projects in terms of configuration.
The current documentation (https://github.com/allending/Kiwi/wiki/Guide:-Up-and-Running-with-Kiwi) requires adding the Kiwi project directly to the main project and creating a test target.
What sucks:
My current thoughts:
What are your thoughts? What can we do to make this elegant?
The text was updated successfully, but these errors were encountered: