Error al intentar desactivar Loggin de MagicalRecord con CocoaPods 0.38

Estoy usando la solución de ank de esta pregunta de SO: Cocoapods: desactivando la grabación de MagicalRecord, que solía funcionar bien antes de actualizar CocoaPods a la última versión (0.38.2). Ahora cada vez que ejecuto el command de pod install , regresa varios errores.

Como reference, aquí está el fragment original de Podfile compartido por ank ( enlace ):

 post_install do |installer| target = installer.project.targets.find{|t| t.to_s == "Pods-MagicalRecord"} target.build_configurations.each do |config| s = config.build_settings['GCC_PREPROCESSOR_DEFINITIONS'] s = [ '$(inherited)' ] if s == nil; s.push('MR_ENABLE_ACTIVE_RECORD_LOGGING=0') if config.to_s == "Debug"; config.build_settings['GCC_PREPROCESSOR_DEFINITIONS'] = s end end 

El primer problema que encontré fue que el project debía replacese con pods_project en el Podfile, así que lo hice.

Pero el que me atoró es que no reconoce la instrucción build_configurations , como puedes ver en el siguiente error de la console:

 ... Generating Pods project [!] An error occurnetworking while processing the post-install hook of the Podfile. undefined method `build_configurations' for nil:NilClass ... 

He buscado en Google el problema, pero no pude encontrar una solución funcional para él, ni desde SO ni gitHub u otros sitios. Creo que podría haber algunos cambios más necesarios para que el fragment vuelva a funcionar en esta versión de CocoaPods, así que me gustaría saber si alguien ha llegado a una solución para este problema o si hay otra forma de desactivar el inicio de session MagicalRecord (BTW estoy usando la versión 2.2).

Aquí está la última parte de mi Podfile:

 post_install do |installer| target = installer.pods_project.targets.find{|t| t.to_s == "Pods-MagicalRecord"} target.build_configurations.each do |config| s = config.build_settings['GCC_PREPROCESSOR_DEFINITIONS'] s = [ '$(inherited)' ] if s == nil; s.push('MR_ENABLE_ACTIVE_RECORD_LOGGING=0') if config.to_s == "Debug"; config.build_settings['GCC_PREPROCESSOR_DEFINITIONS'] = s end end 

Cualquier ayuda será ampliamente apreciada 🙂

Descubrí que necesitas usar "MagicalRecord" lugar de "Pods-MagicalRecord" agregando la siguiente línea en post_install:

 puts installer.pods_project.targets 

Mi código de solución de trabajo:

 # Turn off Magical Record logging in debug mode - in release mode it is off by default target = installer.pods_project.targets.find{|t| t.to_s == "MagicalRecord"} target.build_configurations.each do |config| s = config.build_settings['GCC_PREPROCESSOR_DEFINITIONS'] s = [ '$(inherited)' ] if s == nil; # Uncomment one matching your version #s.push('MR_ENABLE_ACTIVE_RECORD_LOGGING=0') if config.to_s == "Debug"; # MagicalRecord < 2.3 #s.push('MR_LOGGING_DISABLED=1') if config.to_s == "Debug"; # MagicalRecord 2.3+ config.build_settings['GCC_PREPROCESSOR_DEFINITIONS'] = s end