Cocoapods: definición de interfaz duplicada

Envolví la biblioteca privada mía en cocoapods. Tiene dependencia en ReactiveCocoa.

s.name = 'MineLibrary' s.dependency 'ReactiveCocoa/Core' s.source_files = 'Source/*.{h,m,swift}' .... 

Algunos files de encabezado contienen:

 #import <ReactiveCocoa/RACSignal.h> 

Lo incluyo en un nuevo proyecto:

 use_frameworks! .... pod 'ReactiveCocoa' pod 'MineLibrary', :git => 'git@.....' 

Pero cuando compilo un proyecto, recibo un error:

 duplicate interface definition for class 'RACStream' duplicate interface definition for class 'RACSignal' /Users/USER/Library/Developer/Xcode/DerivedData/Project-emcwpmbbuimotuftzijeemvngrvj/Build/Products/Debug-iphoneos/Pods/ReactiveCocoa.framework/Headers/RACStream.h:27:1: error: duplicate interface definition for class 'RACStream' @interface RACStream : NSObject ^ /Users/USER/Workspace/Project/Pods/ReactiveCocoa/ReactiveCocoa/RACStream.h:27:12: note: previous definition is here @interface RACStream : NSObject 

¿Cómo se puede resolver?
PS: estoy usando cocoapods 0.36.0.rc.1

¿Has intentado actualizar a la última versión de CocoaPods? Me di count de que mencionaste que estás usando un candidato de versión obsoleta, que posiblemente sea el culpable aquí.

En general, esto es lo que debe hacer al crear y usar CocoaPod en su aplicación:

1) En su CocoaPod, declare todas sus dependencies en la especificación de pod, usando su s.dependency para cada una

2) En su aplicación, use CocoaPods para administrar todas las dependencies de su aplicación. Es decir, no arrastre y suelte bibliotecas manualmente en su aplicación. Si lo hace, corre el riesgo de crear classs duplicadas con las que drag and drop include.

3) Tanto en su aplicación como en CocoaPod, dependerá de las versiones flexibles que pueda. En general, debería al less permitir actualizaciones menores de la versión, por ejemplo, pod 'PodName', '~> 1.0.0' .

4) En el file pod de su aplicación, especifique un destino para su aplicación y su objective de testing de unidad, por ejemplo

 target "MyApp" do # App pods... end target "MyAppTests", :exclusive => true do # Test pods... end 

Si tiene más de dos objectives, especifique un objective para cada uno. O, como mínimo, especifique un objective diferente para las testings unitarias, que hará que la aplicación se inyecte en él.

Estaba teniendo este problema hace un time, alguien importó un encabezado cocoapod incorrectamente. Asegúrese de usar la notación de corchetes, EG en lugar de: #import "theUsefulClass.h" debería usar: #import <thePod/theUsefulClass.h>