Closed berg closed 11 years ago
Here's the issue. It's trivial, but I'm not submitting a pull request because I assume you'd probably like to have tests written for this, and that's probably outside the scope of my Ruby skillz.
https://github.com/CocoaPods/CocoaPods/blob/master/lib/cocoapods/installer.rb#L451
||=
short-circuits if executed is true. What I assume you wanted is |=
, which just does a logical OR on the values, for the purpose of determining whether to print or skip the UI.message call below. The bug exists in the pre_install hooks as well.
@irrationalfab Can you look into this one?
@berg Thanks for the precise report :+1:
@irrationalfab sorry that I didn't take it all the way and write test cases!
BTW, thanks to both of you for CocoaPods. It's done amazingly great stuff for the ecosystem, IMO, and it's saved me a ton of time. I'm trying to contribute where I can! :heart:
Np, the tests in that part are not very clean at the moment. Thanks for actually finding the solution though!
:heart:
@irrationalfab I think you can tell Mocha to expect different arguments for the same method call expectation. (I.e. expect it to pass the right library representation objects.)
:+1:
This originally started as a pod spec update to work around the problem, but @alloy asked me to open a bug here. Instead, for reference: https://github.com/CocoaPods/Specs/pull/1815
In CocoaPods 0.18.1, when defining multiple nonexclusive targets, like this:
The post_install hook for each pod only gets called once per build, not per target, and the LibraryRepresentation passed into the hook only has a reference to a single target (which seems to be chosen nondeterministically.)
For pods like HockeySDK and QuickDialog which do things like modify the resource script and prefix header from the post install hook, this breaks badly.