cocoapods 0.16.1 → 0.16.2
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGELOG.md +28 -0
- data/README.md +4 -2
- data/lib/cocoapods.rb +1 -1
- data/lib/cocoapods/dependency.rb +11 -12
- data/lib/cocoapods/generator/copy_resources_script.rb +4 -4
- data/lib/cocoapods/platform.rb +7 -0
- data/lib/cocoapods/podfile.rb +1 -1
- data/lib/cocoapods/project.rb +2 -3
- data/lib/cocoapods/specification.rb +41 -1
- metadata +4 -4
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,31 @@
|
|
1
|
+
## 0.16.2
|
2
|
+
[CocoaPods](https://github.com/CocoaPods/CocoaPods/compare/0.16.1...0.16.2) • [Xcodeproj](https://github.com/CocoaPods/Xcodeproj/compare/0.4.1...0.4.3)
|
3
|
+
|
4
|
+
###### Bug fixes
|
5
|
+
|
6
|
+
- Quote storyboard and xib paths in ‘copy resource’ script.
|
7
|
+
[#740](https://github.com/CocoaPods/CocoaPods/pull/740)
|
8
|
+
- Fix use of `podspec` directive in Podfile with no options specified.
|
9
|
+
[#768](https://github.com/CocoaPods/CocoaPods/pull/768)
|
10
|
+
- Generate Mac OS X Pods target with the specified deployment target.
|
11
|
+
[#757](https://github.com/CocoaPods/CocoaPods/issues/757)
|
12
|
+
- Disable libSystem objects for ARC libs that target older platforms.
|
13
|
+
This applies when the deployment target is set to < iOS 6.0 or OS X 10.8,
|
14
|
+
or not specified at all.
|
15
|
+
[#352](https://github.com/CocoaPods/Specs/issues/352)
|
16
|
+
[#1161](https://github.com/CocoaPods/Specs/pull/1161)
|
17
|
+
- Mark header source files as ‘Project’ not ‘Public’.
|
18
|
+
[#747](https://github.com/CocoaPods/CocoaPods/issues/747)
|
19
|
+
- Add `PBXGroup` as acceptable `PBXFileReference` value.
|
20
|
+
[#49](https://github.com/CocoaPods/Xcodeproj/pull/49)
|
21
|
+
- Make `xcodeproj show` without further arguments actually work.
|
22
|
+
[#45](https://github.com/CocoaPods/Xcodeproj/issues/45)
|
23
|
+
|
24
|
+
###### Enhancements
|
25
|
+
|
26
|
+
- Added support for pre-download over Mercurial.
|
27
|
+
[#750](https://github.com/CocoaPods/CocoaPods/pull/750)
|
28
|
+
|
1
29
|
## 0.16.1
|
2
30
|
[CocoaPods](https://github.com/CocoaPods/CocoaPods/compare/0.16.0...0.16.1) • [Xcodeproj](https://github.com/CocoaPods/Xcodeproj/compare/0.4.0...0.4.1)
|
3
31
|
|
data/README.md
CHANGED
@@ -8,7 +8,7 @@
|
|
8
8
|
CocoaPods manages library dependencies for your Xcode project.
|
9
9
|
|
10
10
|
Homepage: [http://cocoapods.org/](http://cocoapods.org/)
|
11
|
-
Twitter: [@
|
11
|
+
Twitter: [@CocoaPods](http://twitter.com/CocoaPods)
|
12
12
|
Mailing List: [http://groups.google.com/group/cocoapods](http://groups.google.com/group/cocoapods)
|
13
13
|
|
14
14
|
You specify the dependencies for your project in one easy text file. CocoaPods resolves dependencies between libraries, fetches source code for the dependencies, and creates and maintains an Xcode workspace to build your project.
|
@@ -45,6 +45,8 @@ Or from `Xcode > Settings > Downloads > Components > Command Line Tools`
|
|
45
45
|
|
46
46
|
2. CocoaPods re-uses some of the RubyGems classes. If you have a version older than 1.4.0, you will have to update RubyGems: `$ gem update --system`.
|
47
47
|
|
48
|
+
3. If you use [RVM](https://rvm.io), you might need to create a symbolic link to the LLVM GCC compiler: `$ [sudo] ln -s /usr/bin/llvm-gcc-4.2 /usr/bin/gcc-4.2`
|
49
|
+
|
48
50
|
|
49
51
|
## Adding it to your project
|
50
52
|
|
@@ -105,7 +107,7 @@ There are several other ways to start using **any** library without a Pod specif
|
|
105
107
|
|
106
108
|
All CocoaPods development happens on GitHub, there is a repository for [CocoaPods](https://github.com/CocoaPods/CocoaPods) and one for the [CocoaPods specs](https://github.com/CocoaPods/Specs). Contributing patches or Pods is really easy and gratifying. You even get push access when one of your specs or patches is accepted.
|
107
109
|
|
108
|
-
Follow [@
|
110
|
+
Follow [@CocoaPods](http://twitter.com/CocoaPods) to get up to date information about what's going on in the CocoaPods world.
|
109
111
|
|
110
112
|
|
111
113
|
# Donations
|
data/lib/cocoapods.rb
CHANGED
data/lib/cocoapods/dependency.rb
CHANGED
@@ -136,6 +136,8 @@ module Pod
|
|
136
136
|
return unless name && params
|
137
137
|
if params.key?(:git)
|
138
138
|
GitSource.new(name, params)
|
139
|
+
elsif params.key?(:hg)
|
140
|
+
MercurialSource.new(name, params)
|
139
141
|
elsif params.key?(:svn)
|
140
142
|
SvnSource.new(name, params)
|
141
143
|
elsif params.key?(:podspec)
|
@@ -193,7 +195,7 @@ module Pod
|
|
193
195
|
end
|
194
196
|
end
|
195
197
|
|
196
|
-
class
|
198
|
+
class DownloaderSource < AbstractExternalSource
|
197
199
|
def copy_external_source_into_sandbox(sandbox, platform)
|
198
200
|
UI.info("->".green + " Pre-downloading: '#{name}'") do
|
199
201
|
target = sandbox.root + name
|
@@ -206,7 +208,9 @@ module Pod
|
|
206
208
|
end
|
207
209
|
end
|
208
210
|
end
|
211
|
+
end
|
209
212
|
|
213
|
+
class GitSource < DownloaderSource
|
210
214
|
def description
|
211
215
|
"from `#{@params[:git]}'".tap do |description|
|
212
216
|
description << ", commit `#{@params[:commit]}'" if @params[:commit]
|
@@ -216,20 +220,15 @@ module Pod
|
|
216
220
|
end
|
217
221
|
end
|
218
222
|
|
219
|
-
class
|
220
|
-
def
|
221
|
-
|
222
|
-
|
223
|
-
target.rmtree if target.exist?
|
224
|
-
downloader = Downloader.for_target(sandbox.root + name, @params)
|
225
|
-
downloader.download
|
226
|
-
store_podspec(sandbox, target + "#{name}.podspec")
|
227
|
-
if local_pod = sandbox.installed_pod_named(name, platform)
|
228
|
-
local_pod.downloaded = true
|
229
|
-
end
|
223
|
+
class MercurialSource < DownloaderSource
|
224
|
+
def description
|
225
|
+
"from `#{@params[:hg]}'".tap do |description|
|
226
|
+
description << ", revision `#{@params[:revision]}'" if @params[:revision]
|
230
227
|
end
|
231
228
|
end
|
229
|
+
end
|
232
230
|
|
231
|
+
class SvnSource < DownloaderSource
|
233
232
|
def description
|
234
233
|
"from `#{@params[:svn]}'".tap do |description|
|
235
234
|
description << ", folder `#{@params[:folder]}'" if @params[:folder]
|
@@ -8,12 +8,12 @@ install_resource()
|
|
8
8
|
{
|
9
9
|
case $1 in
|
10
10
|
*\.storyboard)
|
11
|
-
echo "ibtool --errors --warnings --notices --output-format human-readable-text --compile ${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename $1 .storyboard`.storyboardc ${PODS_ROOT}/$1 --sdk ${SDKROOT}"
|
12
|
-
ibtool --errors --warnings --notices --output-format human-readable-text --compile "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename $1 .storyboard`.storyboardc" "${PODS_ROOT}/$1" --sdk "${SDKROOT}"
|
11
|
+
echo "ibtool --errors --warnings --notices --output-format human-readable-text --compile ${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \\"$1\\" .storyboard`.storyboardc ${PODS_ROOT}/$1 --sdk ${SDKROOT}"
|
12
|
+
ibtool --errors --warnings --notices --output-format human-readable-text --compile "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \\"$1\\" .storyboard`.storyboardc" "${PODS_ROOT}/$1" --sdk "${SDKROOT}"
|
13
13
|
;;
|
14
14
|
*\.xib)
|
15
|
-
|
16
|
-
ibtool --errors --warnings --notices --output-format human-readable-text --compile "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename $1 .xib`.nib" "${PODS_ROOT}/$1" --sdk "${SDKROOT}"
|
15
|
+
echo "ibtool --errors --warnings --notices --output-format human-readable-text --compile ${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \\"$1\\" .xib`.nib ${PODS_ROOT}/$1 --sdk ${SDKROOT}"
|
16
|
+
ibtool --errors --warnings --notices --output-format human-readable-text --compile "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \\"$1\\" .xib`.nib" "${PODS_ROOT}/$1" --sdk "${SDKROOT}"
|
17
17
|
;;
|
18
18
|
*.framework)
|
19
19
|
echo "rsync -rp ${PODS_ROOT}/$1 ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}"
|
data/lib/cocoapods/platform.rb
CHANGED
@@ -116,5 +116,12 @@ module Pod
|
|
116
116
|
def requires_legacy_ios_archs?
|
117
117
|
(name == :ios) && deployment_target && (deployment_target < Version.new("4.3"))
|
118
118
|
end
|
119
|
+
|
120
|
+
def deployment_target_setting_name
|
121
|
+
case @symbolic_name
|
122
|
+
when :ios then 'IPHONEOS_DEPLOYMENT_TARGET'
|
123
|
+
when :osx then 'MACOSX_DEPLOYMENT_TARGET'
|
124
|
+
end
|
125
|
+
end
|
119
126
|
end
|
120
127
|
end
|
data/lib/cocoapods/podfile.rb
CHANGED
@@ -403,7 +403,7 @@ module Pod
|
|
403
403
|
name = File.extname(name) == '.podspec' ? name : "#{name}.podspec"
|
404
404
|
file = config.project_root + name
|
405
405
|
else
|
406
|
-
file = config.project_root
|
406
|
+
file = Pathname.glob(config.project_root + '*.podspec').first
|
407
407
|
end
|
408
408
|
|
409
409
|
spec = Specification.from_file(file)
|
data/lib/cocoapods/project.rb
CHANGED
@@ -63,9 +63,8 @@ module Pod
|
|
63
63
|
settings['ARCHS'] = "armv6 armv7"
|
64
64
|
end
|
65
65
|
|
66
|
-
if platform
|
67
|
-
|
68
|
-
settings['IPHONEOS_DEPLOYMENT_TARGET'] = platform.deployment_target.to_s
|
66
|
+
if platform.deployment_target
|
67
|
+
settings[platform.deployment_target_setting_name] = platform.deployment_target.to_s
|
69
68
|
end
|
70
69
|
|
71
70
|
target.build_settings('Debug').merge!(settings)
|
@@ -319,9 +319,49 @@ module Pod
|
|
319
319
|
@parent ? @parent.recursive_compiler_flags | @compiler_flags[active_platform] : @compiler_flags[active_platform]
|
320
320
|
end
|
321
321
|
|
322
|
+
ENABLE_OBJECT_USE_OBJC_FROM = {
|
323
|
+
:ios => Version.new('6'),
|
324
|
+
:osx => Version.new('10.8')
|
325
|
+
}
|
326
|
+
|
327
|
+
# The following behavior is regarding the `OS_OBJECT_USE_OBJC` flag. When
|
328
|
+
# set to `0`, it will allow code to use `dispatch_release()` on >= iOS 6.0
|
329
|
+
# and OS X 10.8.
|
330
|
+
#
|
331
|
+
# * New libraries that do *not* require ARC don’t need to care about this
|
332
|
+
# issue at all.
|
333
|
+
#
|
334
|
+
# * New libraries that *do* require ARC _and_ have a deployment target of
|
335
|
+
# >= iOS 6.0 or OS X 10.8:
|
336
|
+
#
|
337
|
+
# These no longer use `dispatch_release()` and should *not* have the
|
338
|
+
# `OS_OBJECT_USE_OBJC` flag set to `0`.
|
339
|
+
#
|
340
|
+
# **Note:** this means that these libraries *have* to specify the
|
341
|
+
# deployment target in order to function well.
|
342
|
+
#
|
343
|
+
# * New libraries that *do* require ARC, but have a deployment target of
|
344
|
+
# < iOS 6.0 or OS X 10.8:
|
345
|
+
#
|
346
|
+
# These contain `dispatch_release()` calls and as such need the
|
347
|
+
# `OS_OBJECT_USE_OBJC` flag set to `1`.
|
348
|
+
#
|
349
|
+
# **Note:** libraries that do *not* specify a platform version are
|
350
|
+
# assumed to have a deployment target of < iOS 6.0 or OS X 10.8.
|
351
|
+
#
|
352
|
+
# For more information, see: http://opensource.apple.com/source/libdispatch/libdispatch-228.18/os/object.h
|
353
|
+
#
|
322
354
|
def compiler_flags
|
323
355
|
flags = recursive_compiler_flags.dup
|
324
|
-
|
356
|
+
if requires_arc
|
357
|
+
flags << '-fobjc-arc'
|
358
|
+
ios_target, osx_target = deployment_target(:ios), deployment_target(:osx)
|
359
|
+
if (ios_target.nil? && osx_target.nil?) ||
|
360
|
+
(ios_target && Version.new(ios_target) < ENABLE_OBJECT_USE_OBJC_FROM[:ios]) ||
|
361
|
+
(osx_target && Version.new(osx_target) < ENABLE_OBJECT_USE_OBJC_FROM[:osx])
|
362
|
+
flags << '-DOS_OBJECT_USE_OBJC=0'
|
363
|
+
end
|
364
|
+
end
|
325
365
|
flags.join(' ')
|
326
366
|
end
|
327
367
|
|
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.16.
|
4
|
+
version: 0.16.2
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2013-
|
13
|
+
date: 2013-02-02 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: xcodeproj
|
@@ -19,7 +19,7 @@ dependencies:
|
|
19
19
|
requirements:
|
20
20
|
- - ~>
|
21
21
|
- !ruby/object:Gem::Version
|
22
|
-
version: 0.4.
|
22
|
+
version: 0.4.3
|
23
23
|
type: :runtime
|
24
24
|
prerelease: false
|
25
25
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -27,7 +27,7 @@ dependencies:
|
|
27
27
|
requirements:
|
28
28
|
- - ~>
|
29
29
|
- !ruby/object:Gem::Version
|
30
|
-
version: 0.4.
|
30
|
+
version: 0.4.3
|
31
31
|
- !ruby/object:Gem::Dependency
|
32
32
|
name: faraday
|
33
33
|
requirement: !ruby/object:Gem::Requirement
|