cocoapods 0.19.1 → 0.20.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -2,6 +2,6 @@ module Pod
2
2
 
3
3
  # The version of the cocoapods command line tool.
4
4
  #
5
- VERSION = '0.19.1' unless defined? Pod::VERSION
5
+ VERSION = '0.20.0' unless defined? Pod::VERSION
6
6
  end
7
7
 
@@ -1,9 +1,88 @@
1
1
  module Pod
2
2
  module Generator
3
3
  class CopyResourcesScript
4
- CONTENT = <<EOS
4
+
5
+ # @return [Array<#to_s>] A list of files relative to the project pods
6
+ # root.
7
+ #
8
+ attr_reader :resources
9
+
10
+ # @return [Platform] The platform of the library for which the copy
11
+ # resources script is needed.
12
+ #
13
+ attr_reader :platform
14
+
15
+ # @param [Array<#to_s>] resources @see resources
16
+ # @param [Platform] platform @see platform
17
+ #
18
+ def initialize(resources, platform)
19
+ @resources = resources
20
+ @platform = platform
21
+ end
22
+
23
+ # Saves the resource script to the given pathname.
24
+ #
25
+ # @param [Pathname] pathname
26
+ # The path where the copy resources script should be saved.
27
+ #
28
+ # @return [void]
29
+ #
30
+ def save_as(pathname)
31
+ pathname.open('w') do |file|
32
+ file.puts(script)
33
+ end
34
+ File.chmod(0755, pathname.to_s)
35
+ end
36
+
37
+ private
38
+
39
+ # @!group Private Helpers
40
+
41
+ # @return [Hash{Symbol=>Version}] The minimum deployment target which
42
+ # supports the `--reference-external-strings-file` option for
43
+ # the `ibtool` command.
44
+ #
45
+ EXTERNAL_STRINGS_FILE_MIMINUM_DEPLOYMENT_TARGET = {
46
+ :ios => Version.new('6.0'),
47
+ :osx => Version.new('10.8')
48
+ }
49
+
50
+ # @return [Bool] Whether the external strings file is supported by the
51
+ # `ibtool` according to the deployment target of the platform.
52
+ #
53
+ def use_external_strings_file?
54
+ minimum_deployment_target = EXTERNAL_STRINGS_FILE_MIMINUM_DEPLOYMENT_TARGET[platform.name]
55
+ platform.deployment_target >= minimum_deployment_target
56
+ end
57
+
58
+ # @return [String] The install resources shell function.
59
+ #
60
+ def install_resources_function
61
+ if use_external_strings_file?
62
+ INSTALL_RESOURCES_FUCTION
63
+ else
64
+ INSTALL_RESOURCES_FUCTION.gsub(' --reference-external-strings-file', '')
65
+ end
66
+ end
67
+
68
+ # @return [String] The contents of the copy resources script.
69
+ #
70
+ def script
71
+ script = install_resources_function
72
+ resources.each do |resource|
73
+ script += "install_resource '#{resource}'\n"
74
+ end
75
+ script += RSYNC_CALL
76
+ script
77
+ end
78
+
79
+
80
+ INSTALL_RESOURCES_FUCTION = <<EOS
5
81
  #!/bin/sh
6
82
 
83
+ RESOURCES_TO_COPY=${PODS_ROOT}/resources-to-copy.txt
84
+ touch "$RESOURCES_TO_COPY"
85
+
7
86
  install_resource()
8
87
  {
9
88
  case $1 in
@@ -24,30 +103,20 @@ install_resource()
24
103
  xcrun momc "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename $1 .xcdatamodeld`.momd"
25
104
  ;;
26
105
  *)
27
- echo "rsync -av --exclude '*/.svn/*' ${PODS_ROOT}/$1 ${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}"
28
- rsync -av --exclude '*/.svn/*' "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}"
106
+ echo "${PODS_ROOT}/$1"
107
+ echo "${PODS_ROOT}/$1" >> "$RESOURCES_TO_COPY"
29
108
  ;;
30
109
  esac
31
110
  }
32
111
  EOS
33
112
 
34
- attr_reader :resources
35
113
 
36
- # A list of files relative to the project pods root.
37
- def initialize(resources = [])
38
- @resources = resources
39
- end
114
+ RSYNC_CALL = <<EOS
115
+
116
+ rsync -avr --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}"
117
+ rm "$RESOURCES_TO_COPY"
118
+ EOS
40
119
 
41
- def save_as(pathname)
42
- pathname.open('w') do |script|
43
- script.puts CONTENT
44
- @resources.each do |resource|
45
- script.puts "install_resource '#{resource}'"
46
- end
47
- end
48
- # @todo use File api
49
- system("chmod +x '#{pathname}'")
50
- end
51
120
  end
52
121
  end
53
122
  end
@@ -254,8 +254,6 @@ module Pod
254
254
  @pod_installers ||= []
255
255
  pod_installer = PodSourceInstaller.new(sandbox, specs_by_platform)
256
256
  pod_installer.aggressive_cache = config.aggressive_cache?
257
- pod_installer.generate_docs = config.generate_docs?
258
- pod_installer.install_docs = config.install_docs?
259
257
  pod_installer.install!
260
258
  @pod_installers << pod_installer
261
259
  @installed_specs.concat(specs_by_platform.values.flatten.uniq)
@@ -282,7 +280,7 @@ module Pod
282
280
  def prepare_pods_project
283
281
  UI.message "- Creating Pods project" do
284
282
  @pods_project = Pod::Project.new(sandbox.project_path)
285
- if config.podfile_path.exist?
283
+ if config.podfile_path
286
284
  @pods_project.add_podfile(config.podfile_path)
287
285
  end
288
286
  sandbox.project = @pods_project
@@ -416,8 +414,8 @@ module Pod
416
414
  def run_spec_pre_install_hook(spec, lib_representation)
417
415
  spec.pre_install!(pod_rep(spec.root.name), lib_representation)
418
416
  rescue => e
419
- raise Informative, "The pre install hook of #{spec} is not " \
420
- "compatible with this version of CocoaPods." \
417
+ raise Informative, "An error occurred while processing the pre-install " \
418
+ "hook of #{spec}." \
421
419
  "\n\n#{e.message}\n\n#{e.backtrace * "\n"}"
422
420
  end
423
421
 
@@ -430,8 +428,8 @@ module Pod
430
428
  def run_podfile_pre_install_hook
431
429
  podfile.pre_install!(installer_rep)
432
430
  rescue => e
433
- raise Informative, "The pre install hook of the Podfile is not " \
434
- "compatible with this version of CocoaPods." \
431
+ raise Informative, "An error occurred while processing the pre-install " \
432
+ "hook of the Podfile." \
435
433
  "\n\n#{e.message}\n\n#{e.backtrace * "\n"}"
436
434
  end
437
435
 
@@ -475,8 +473,8 @@ module Pod
475
473
  def run_spec_post_install_hook(spec, lib_representation)
476
474
  spec.post_install!(lib_representation)
477
475
  rescue => e
478
- raise Informative, "The post install hook of #{spec} is not " \
479
- "compatible with this version of CocoaPods." \
476
+ raise Informative, "An error occurred while processing the post-install " \
477
+ "hook of #{spec}." \
480
478
  "\n\n#{e.message}\n\n#{e.backtrace * "\n"}"
481
479
  end
482
480
 
@@ -489,8 +487,8 @@ module Pod
489
487
  def run_podfile_post_install_hook
490
488
  podfile.post_install!(installer_rep)
491
489
  rescue => e
492
- raise Informative, "The post install hook of the Podfile is not " \
493
- "compatible with this version of CocoaPods." \
490
+ raise Informative, "An error occurred while processing the post-install " \
491
+ "hook of the Podfile." \
494
492
  "\n\n#{e.message}\n\n#{e.backtrace * "\n"}"
495
493
  end
496
494
 
@@ -151,7 +151,7 @@ module Pod
151
151
  return true if sandbox.predownloaded?(pod)
152
152
  return true if folder_empty?(pod)
153
153
  if update_mode
154
- return true if spec.version.head?
154
+ return true if sandbox.head_pod?(pod)
155
155
  end
156
156
  return false
157
157
  end
@@ -24,8 +24,6 @@ module Pod
24
24
  @sandbox = sandbox
25
25
  @specs_by_platform = specs_by_platform
26
26
 
27
- @generate_docs = false
28
- @install_docs = false
29
27
  @aggressive_cache = false
30
28
  end
31
29
 
@@ -41,18 +39,6 @@ module Pod
41
39
 
42
40
  # @!group Configuration
43
41
 
44
- # @return [Bool] whether the documentation should be generated for the
45
- # Pod.
46
- #
47
- attr_accessor :generate_docs
48
- alias_method :generate_docs?, :generate_docs
49
-
50
- # @return [Bool] whether the generated documentation should be installed
51
- # in Xcode.
52
- #
53
- attr_accessor :install_docs
54
- alias_method :install_docs?, :install_docs
55
-
56
42
  # @return [Bool] whether the downloader should always check against the
57
43
  # remote if issues might be generated (mostly useful to speed up
58
44
  # testing).
@@ -73,8 +59,7 @@ module Pod
73
59
  # @return [void]
74
60
  #
75
61
  def install!
76
- download_source unless predownloaded? || local?
77
- generate_docs if generate_docs?
62
+ download_source unless predownloaded? || local?
78
63
  end
79
64
 
80
65
  # Cleans the installations if appropriate.
@@ -106,7 +91,7 @@ module Pod
106
91
  #
107
92
  def download_source
108
93
  root.rmtree if root.exist?
109
- if root_spec.version.head?
94
+ if head_pod?
110
95
  downloader.download_head
111
96
  @specific_source = downloader.checkout_options
112
97
  else
@@ -121,20 +106,6 @@ module Pod
121
106
  end
122
107
  end
123
108
 
124
- # Generates the documentation for the Pod.
125
- #
126
- # @return [void]
127
- #
128
- def generate_docs
129
- if documentation_generator.already_installed?
130
- UI.section " > Using existing documentation"
131
- else
132
- UI.section " > Installing documentation" do
133
- documentation_generator.generate(install_docs?)
134
- end
135
- end
136
- end
137
-
138
109
  # Removes all the files not needed for the installation according to the
139
110
  # specs by platform.
140
111
  #
@@ -162,13 +133,6 @@ module Pod
162
133
  @downloader
163
134
  end
164
135
 
165
- # @return [Generator::Documentation] The documentation generator to use
166
- # for generating the documentation.
167
- #
168
- def documentation_generator
169
- @documentation_generator ||= Generator::Documentation.new(sandbox, root_spec, path_list)
170
- end
171
-
172
136
  #-----------------------------------------------------------------------#
173
137
 
174
138
  private
@@ -208,6 +172,10 @@ module Pod
208
172
  sandbox.local?(root_spec.name)
209
173
  end
210
174
 
175
+ def head_pod?
176
+ sandbox.head_pod?(root_spec.name)
177
+ end
178
+
211
179
  #-----------------------------------------------------------------------#
212
180
 
213
181
  private
@@ -89,11 +89,6 @@ module Pod
89
89
  library.target = @target
90
90
  end
91
91
 
92
- ENABLE_OBJECT_USE_OBJC_FROM = {
93
- :ios => Version.new('6'),
94
- :osx => Version.new('10.8')
95
- }
96
-
97
92
  # Adds the build files of the pods to the target and adds a reference to
98
93
  # the frameworks of the Pods.
99
94
  #
@@ -222,7 +217,7 @@ module Pod
222
217
  UI.message "- Generating copy resources script at #{UI.path(path)}" do
223
218
  resources = library.file_accessors.map { |accessor| accessor.resources.flatten.map {|res| project.relativize(res)} }.flatten
224
219
  resources << bridge_support_file if bridge_support_file
225
- generator = Generator::CopyResourcesScript.new(resources)
220
+ generator = Generator::CopyResourcesScript.new(resources, library.platform)
226
221
  generator.save_as(path)
227
222
  add_file_to_support_group(path)
228
223
  end
@@ -314,6 +309,11 @@ module Pod
314
309
  support_files_group.new_file(relative_path)
315
310
  end
316
311
 
312
+ ENABLE_OBJECT_USE_OBJC_FROM = {
313
+ :ios => Version.new('6'),
314
+ :osx => Version.new('10.8')
315
+ }
316
+
317
317
  # Returns the compiler flags for the source files of the given specification.
318
318
  #
319
319
  # The following behavior is regarding the `OS_OBJECT_USE_OBJC` flag. When
@@ -158,7 +158,10 @@ module Pod
158
158
  @loaded_specs << spec.name
159
159
  cached_specs[spec.name] = spec
160
160
  validate_platform(spec, target_definition)
161
- spec.version.head = dependency.head?
161
+ if dependency.head? || sandbox.head_pod?(spec.name)
162
+ spec.version.head = true
163
+ sandbox.store_head_pod(spec.name)
164
+ end
162
165
 
163
166
  spec_dependencies = spec.all_dependencies(target_definition.platform)
164
167
  find_dependency_specs(spec, spec_dependencies, target_definition)
@@ -70,6 +70,7 @@ module Pod
70
70
  @build_headers = HeadersStore.new(self, "BuildHeaders")
71
71
  @public_headers = HeadersStore.new(self, "Headers")
72
72
  @predownloaded_pods = []
73
+ @head_pods = []
73
74
  @checkout_sources = {}
74
75
  @local_pods = {}
75
76
  FileUtils.mkdir_p(@root)
@@ -94,8 +95,9 @@ module Pod
94
95
  root.rmtree
95
96
  end
96
97
 
98
+ # Removes the files of the Pod with the given name from the sandbox.
97
99
  #
98
- #
100
+ # @return [void]
99
101
  #
100
102
  def clean_pod(name)
101
103
  root_name = Specification.root_name(name)
@@ -279,6 +281,37 @@ module Pod
279
281
 
280
282
  #--------------------------------------#
281
283
 
284
+ # Marks a Pod as head.
285
+ #
286
+ # @param [String] name
287
+ # The name of the Pod.
288
+ #
289
+ # @return [void]
290
+ #
291
+ def store_head_pod(name)
292
+ root_name = Specification.root_name(name)
293
+ head_pods << root_name
294
+ end
295
+
296
+ # @return [Array<String>] The names of the pods that have been
297
+ # marked as head.
298
+ #
299
+ attr_reader :head_pods
300
+
301
+ # Checks if a Pod should attempt to use the head source of the git repo.
302
+ #
303
+ # @param [String] name
304
+ # The name of the Pod.
305
+ #
306
+ # @return [Bool] Whether the Pod has been marked as head.
307
+ #
308
+ def head_pod?(name)
309
+ root_name = Specification.root_name(name)
310
+ head_pods.include?(root_name)
311
+ end
312
+
313
+ #--------------------------------------#
314
+
282
315
  # Stores the local path of a Pod.
283
316
  #
284
317
  # @param [String] name
@@ -148,7 +148,7 @@ module Pod
148
148
  #
149
149
  def path(pathname)
150
150
  if pathname
151
- path = pathname.relative_path_from(config.podfile_path.dirname || Pathname.pwd)
151
+ path = pathname.relative_path_from((config.podfile_path.dirname if config.podfile_path) || Pathname.pwd)
152
152
  "`#{path}`"
153
153
  else
154
154
  ''
@@ -45,7 +45,7 @@ Repositories : #{repo_information.join("\n ")}
45
45
  #{'[!] Oh no, an error occurred.'.red}
46
46
  #{error_from_podfile(exception)}
47
47
  #{'Search for existing github issues similar to yours:'.yellow}
48
- #{"https://github.com/CocoaPods/CocoaPods/issues/search?q=#{CGI.escape(exception.message)}"}
48
+ #{"https://github.com/CocoaPods/CocoaPods/search?q=#{CGI.escape(exception.message)}&type=Issues"}
49
49
 
50
50
  #{'If none exists, create a ticket, with the template displayed above, on:'.yellow}
51
51
  https://github.com/CocoaPods/CocoaPods/issues/new
@@ -191,7 +191,6 @@ module Pod
191
191
  config.sandbox_root = validation_dir + 'Pods'
192
192
  config.silent = !config.verbose
193
193
  config.integrate_targets = false
194
- config.generate_docs = false
195
194
  config.skip_repo_update = true
196
195
  end
197
196
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cocoapods
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.19.1
4
+ version: 0.20.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Eloy Duran
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-04-30 00:00:00.000000000 Z
12
+ date: 2013-05-23 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: cocoapods-core
@@ -17,56 +17,56 @@ dependencies:
17
17
  requirements:
18
18
  - - '='
19
19
  - !ruby/object:Gem::Version
20
- version: 0.19.1
20
+ version: 0.20.0
21
21
  type: :runtime
22
22
  prerelease: false
23
23
  version_requirements: !ruby/object:Gem::Requirement
24
24
  requirements:
25
25
  - - '='
26
26
  - !ruby/object:Gem::Version
27
- version: 0.19.1
27
+ version: 0.20.0
28
28
  - !ruby/object:Gem::Dependency
29
29
  name: claide
30
30
  requirement: !ruby/object:Gem::Requirement
31
31
  requirements:
32
32
  - - ~>
33
33
  - !ruby/object:Gem::Version
34
- version: 0.2.0
34
+ version: 0.3.0
35
35
  type: :runtime
36
36
  prerelease: false
37
37
  version_requirements: !ruby/object:Gem::Requirement
38
38
  requirements:
39
39
  - - ~>
40
40
  - !ruby/object:Gem::Version
41
- version: 0.2.0
41
+ version: 0.3.0
42
42
  - !ruby/object:Gem::Dependency
43
43
  name: cocoapods-downloader
44
44
  requirement: !ruby/object:Gem::Requirement
45
45
  requirements:
46
46
  - - ~>
47
47
  - !ruby/object:Gem::Version
48
- version: 0.1.0
48
+ version: 0.1.1
49
49
  type: :runtime
50
50
  prerelease: false
51
51
  version_requirements: !ruby/object:Gem::Requirement
52
52
  requirements:
53
53
  - - ~>
54
54
  - !ruby/object:Gem::Version
55
- version: 0.1.0
55
+ version: 0.1.1
56
56
  - !ruby/object:Gem::Dependency
57
57
  name: xcodeproj
58
58
  requirement: !ruby/object:Gem::Requirement
59
59
  requirements:
60
60
  - - ~>
61
61
  - !ruby/object:Gem::Version
62
- version: 0.5.5
62
+ version: 0.6.0
63
63
  type: :runtime
64
64
  prerelease: false
65
65
  version_requirements: !ruby/object:Gem::Requirement
66
66
  requirements:
67
67
  - - ~>
68
68
  - !ruby/object:Gem::Version
69
- version: 0.5.5
69
+ version: 0.6.0
70
70
  - !ruby/object:Gem::Dependency
71
71
  name: faraday
72
72
  requirement: !ruby/object:Gem::Requirement
@@ -129,14 +129,14 @@ dependencies:
129
129
  requirements:
130
130
  - - ~>
131
131
  - !ruby/object:Gem::Version
132
- version: 1.7.3
132
+ version: 1.8.0
133
133
  type: :runtime
134
134
  prerelease: false
135
135
  version_requirements: !ruby/object:Gem::Requirement
136
136
  requirements:
137
137
  - - ~>
138
138
  - !ruby/object:Gem::Version
139
- version: 1.7.3
139
+ version: 1.8.0
140
140
  - !ruby/object:Gem::Dependency
141
141
  name: open4
142
142
  requirement: !ruby/object:Gem::Requirement
@@ -230,7 +230,6 @@ files:
230
230
  - lib/cocoapods/generator/acknowledgements.rb
231
231
  - lib/cocoapods/generator/bridge_support.rb
232
232
  - lib/cocoapods/generator/copy_resources_script.rb
233
- - lib/cocoapods/generator/documentation.rb
234
233
  - lib/cocoapods/generator/dummy_source.rb
235
234
  - lib/cocoapods/generator/prefix_header.rb
236
235
  - lib/cocoapods/generator/target_environment_header.rb
@@ -260,6 +259,7 @@ files:
260
259
  - lib/cocoapods/validator.rb
261
260
  - lib/cocoapods.rb
262
261
  - bin/pod
262
+ - bin/sandbox-pod
263
263
  - README.md
264
264
  - LICENSE
265
265
  - CHANGELOG.md
@@ -267,7 +267,86 @@ homepage: https://github.com/CocoaPods/CocoaPods
267
267
  licenses:
268
268
  - MIT
269
269
  metadata: {}
270
- post_install_message:
270
+ post_install_message: |2+
271
+
272
+ CHANGELOG:
273
+
274
+ ## 0.20.0
275
+ [CocoaPods](https://github.com/CocoaPods/CocoaPods/compare/0.19.0...0.20.0)
276
+ • [cocoapods-core](https://github.com/CocoaPods/Core/compare/0.19.0...0.20.0)
277
+ • [cocoapods-downloader](https://github.com/CocoaPods/CLAide/compare/0.1.0...0.1.1)
278
+ • [Xcodeproj](https://github.com/CocoaPods/Xcodeproj/compare/0.5.5...0.6.0)
279
+ • [CLAide](https://github.com/CocoaPods/CLAide/compare/0.2.0...0.3.0)
280
+
281
+ ###### Enhancements
282
+
283
+ * Introduces an experimental sandbox feature.
284
+ [#939](https://github.com/CocoaPods/CocoaPods/issues/939)
285
+
286
+ Let’s face it, even though we have a great community that spends an amazing
287
+ amount of time on curating the specifications, the internet can be a hostile
288
+ place and the community is growing too large to take a naive approach any
289
+ longer.
290
+
291
+ As such, we have started leveraging OS X’s sandbox facilities to disallow
292
+ unsanctioned operations. This is still very experimental and therefore has to
293
+ be used explicitely, for now, but that does **not** mean we don’t want you to
294
+ start using it and **report issues**.
295
+
296
+ To use the sandbox, simply use the `sandbox-pod` command instead. E.g.:
297
+
298
+ $ sandbox-pod install
299
+
300
+ In case of issues, be sure to check `/var/log/system.log` for ‘deny’ messages.
301
+ For instance, here’s an example where the sandbox denies read access to `/`:
302
+
303
+ May 16 00:23:35 Khaos kernel[0]: Sandbox: ruby(98430) deny file-read-data /
304
+
305
+ **NOTE**: _The above example is actually one that we know of. We’re not sure
306
+ yet which process causes this, but there shouldn’t be a need for any process
307
+ to read data from the root path anyways._
308
+
309
+ **NOTE 2**: _At the moment the sandbox is not compatible with the `:path` option
310
+ when referencing Pods that are not stored within the directory of the Podfile._
311
+
312
+ * The naked `pod` command now defaults to `pod install`.
313
+ [#958](https://github.com/CocoaPods/CocoaPods/issues/958)
314
+
315
+ * CocoaPods will look for the Podfile in the ancestors paths if one is
316
+ not available in the working directory.
317
+ [#940](https://github.com/CocoaPods/CocoaPods/issues/940)
318
+
319
+ * Documentation generation has been removed from CocoaPods as it graduated
320
+ to CocoaDocs. This decision was taken because CocoaDocs is a much better
321
+ solution which doesn't clutter Xcode's docsets while still allowing
322
+ access to the docsets with Xcode and with Dash. Removing this feature
323
+ keeps the installer leaner and easier to develop and paves the way for the
324
+ upcoming sandbox. Private pods can use pre install hook to generate the
325
+ documentation. If there will be enough demand this feature might be
326
+ reintegrated as plugin (see
327
+ [#1037](https://github.com/CocoaPods/CocoaPods/issues/1037)).
328
+
329
+ * Improved performance of the copy resources script and thus build time of
330
+ the integrated targets. Contribution by [@onato](https://github.com/onato)
331
+ [#1050](https://github.com/CocoaPods/CocoaPods/issues/1050).
332
+
333
+ * The changelog for the current version is printed after CocoaPods is
334
+ installed/updated.
335
+ [#853](https://github.com/CocoaPods/CocoaPods/issues/853).
336
+
337
+
338
+ ###### Bug fixes
339
+
340
+ * Inheriting `inhibit_warnings` per pod is now working
341
+ [#1032](https://github.com/CocoaPods/CocoaPods/issues/1032)
342
+ * Fix copy resources script for iOS < 6 and OS X < 10.8 by removing the
343
+ `--reference-external-strings-file`
344
+ flag. [#1030](https://github.com/CocoaPods/CocoaPods/pull/1030)
345
+ * Fixed issues with the `:head` option of the Podfile.
346
+ [#1046](https://github.com/CocoaPods/CocoaPods/issues/1046)
347
+ [#1039](https://github.com/CocoaPods/CocoaPods/issues/1039)
348
+
349
+
271
350
  rdoc_options: []
272
351
  require_paths:
273
352
  - lib