Add framework target#97
Conversation
|
Hello Daniel! Thanks a lot, that's a very welcome pull request. Carthage integration was also a request from our fellow Marc Palmer, so let me invite him here: hello, @marcpalmer! I have two immediate questions, before I dive deeper in your PR:
|
|
Carthage only requires the availability of dynamic frameworks. iOS 9.0 reference as a deployment target was my mistake, I didn't pay attention last night and was on Xcode 7.0. I will remove JRSwizzle submodule and associated code around NSUndefinedKeyException prevention. |
|
That's pretty cool, thank you Daniel :-) |
|
By leaving no dead code, do you still want me to deprecate the methods in question or simply remove them? Probably deprecating is preferred although I will end up with some empty no-op methods. In such empty methods it would make sense to raise an exception or have an assert, the former would of course be hilariously ironic. :) |
|
If we were to deprecate preventNSUndefinedKeyExceptionAttack, we would need to keep JRSwizzle, so that it would still work. Yet if we remove this method, and JRSwizzle with it, GRMustache-enabled applications won't lose anything at all: PreventNSUndefinedKeyExceptionAttack used to be useful a few years ago, when GRMustache had no security and would call Since v7.0.0, GRMustache does not blindly call So the gain in not worth the pain. Deprecating preventNSUndefinedKeyExceptionAttack, and finding a way to integrate JRSwizzle in a way that does not break applications that would link to both the future GRMustache framework and JRSwizzle without any conflict is just too much work for a feature which is no longer that useful. Let's push GRMustache forward! |
|
So yes, I really meant "remove". Don't spend too much time on that, though: I can handle my part of the cleanup job, even if I do appreciate clean PRs. I'll have to add a Carthage-enabled OSX target, anyway : this PR implies some work for me as well :-) |
… 8.0 including adding necessary version macros.
|
BTW: let me bump the library version. I'll take the opportunity of a major version bump to provide a better handling of #66. |
|
I've removed my git tags for the version number. And I've reverted the availabilities macro header to no longer reference a version 8.0, I'll leave the versioning to you. I think that means for iOS this PR is done. OS X Needs to be done still, I'll see if I can do it today. |
|
OK Daniel, thank you very much. I'll review your full PR very shortly. Thanks a lot for your dedication! About the OSX target, that would be very nice of you, but I already appreciate a lot your assistance: do not feel compelled to do do it! |
FIXME: - @import GRMustache does not work in both test targets. - tests for private APIs in iOS tests won't compile.
|
It would be great to get this landed. Much appreciate your efforts. |
|
Yes @marcpalmer, I understand. I won't have much time if the next few days, so I don't expect it to make much progress before next week. Maybe Daniels's branch could help you? |
|
Yeah, I am going to try with this in my Cartfile: |
|
I'm not sure I can be of any more help here, @groue you got this but you just need a bit more time to wrap it up. @marcpalmer my repo isn't going anywhere so that's fine to use until this PR is merged. |
|
OK I'm happy you both are not blocked in a dead-end. |
|
Back to work. And for a start, let's accept your pull request! |
|
Folks, we are close: #100 |
Please consider this pull request which adds a framework target in order for me to use Carthage to clone and build your project into a framework.