Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Newer
Older
100644 407 lines (282 sloc) 13.063 kb
7149df1 Eloy Durán [CHANGELOG] Update for 0.8.0 release.
alloy authored
1 ## 0.8.0
0b8e151 Fabio Pelosin Update master
fabiopelosin authored
2
321fd12 Eloy Durán Add Xcodeproj diff to CHANGELOG.
alloy authored
3 [CocoaPods](https://github.com/CocoaPods/CocoaPods/compare/0.7.0...0.8.0) • [Xcodeproj](https://github.com/CocoaPods/Xcodeproj/compare/0.2.2...0.2.3)
0b8e151 Fabio Pelosin Update master
fabiopelosin authored
4
5 ###### Breaking change
6
7 Syntax change in Podfile: `dependency` has been replaced by `pod`.
8
9 ```ruby
10 platform :ios
11 pod 'JSONKit', '~> 1.4'
12 pod 'Reachability', '~> 2.0.4'
13 ```
14
7149df1 Eloy Durán [CHANGELOG] Update for 0.8.0 release.
alloy authored
15 ###### Bug fixes
16
17 - Properly quote all paths given to Git.
0b8e151 Fabio Pelosin Update master
fabiopelosin authored
18
19
d5f6a31 Fabio Pelosin Update develop
fabiopelosin authored
20 ## 0.7.0
874a0ca Fabio Pelosin Update develop
fabiopelosin authored
21
0b8e151 Fabio Pelosin Update master
fabiopelosin authored
22 [CocoaPods](https://github.com/CocoaPods/CocoaPods/compare/0.6.1...0.7.0) • [Xcodeproj](https://github.com/CocoaPods/Xcodeproj/compare/0.2.1...0.2.2)
874a0ca Fabio Pelosin Update develop
fabiopelosin authored
23
24 ###### Features
25
26 - Added support for branches in git repos.
27 - Added support for linting remote files, i.e. `pod spec lint http://raw/file.podspec`.
0b8e151 Fabio Pelosin Update master
fabiopelosin authored
28 - Improved `Spec create template`.
874a0ca Fabio Pelosin Update develop
fabiopelosin authored
29 - The indentation is automatically stripped for podspecs strings.
30
31 ###### Bug fixes
32
33 - The default warnings of Xcode are not overriden anymore.
34 - Improvements to the detection of the license files.
35 - Improvements to `pod spec lint`.
36 - CocoaPods is now case insensitive.
37
38
39 ## 0.6.1
40
0b8e151 Fabio Pelosin Update master
fabiopelosin authored
41 [CocoaPods](https://github.com/CocoaPods/CocoaPods/compare/0.6.0...0.6.1) • [Xcodeproj](https://github.com/CocoaPods/XcodeProj/compare/0.2.0...0.2.1)
874a0ca Fabio Pelosin Update develop
fabiopelosin authored
42
43 ###### Bug fixes
44
45 - Switched to master branch for specs repo.
46 - Fixed a crash with `pod spec lint` related to `preserve_paths`.
47 - Fixed a bug that caused subspecs to not inherit the compiler flags of the top level specification.
48 - Fixed a bug that caused duplication of system framworks.
49
50
311e6cc Eloy Durán Update CHANGELOG with changes for 0.6.0 so far.
alloy authored
51 ## 0.6.0
52
53 A full list of all the changes since 0.5.1 can be found [here][6].
54
55
a3f084b Eloy Durán Add entry to the CHANGELOG regarding link_with.
alloy authored
56 ### Link with specific targets
57
58 CocoaPods can now integrate all the targets specified in your `Podfile`.
59
60 To specify which target, in your Xcode project, a Pods target should be linked
61 with, use the `link_with` method like so:
62
63 ```ruby
64 platform :ios
65
5d756c8 Eloy Durán Styling tweaks.
alloy authored
66 workspace 'MyWorkspace'
a4cd834 Eloy Durán Add notes about specifying the Xcode workspace and projects in a Podfile...
alloy authored
67
a3f084b Eloy Durán Add entry to the CHANGELOG regarding link_with.
alloy authored
68 link_with ['MyAppTarget', 'MyOtherAppTarget']
69 dependency 'JSONKit'
70
71 target :test, :exclusive => true do
81d3550 Eloy Durán Actually add the user's build configurations to Pods.xcodeproj.
alloy authored
72 xcodeproj 'TestProject', 'Test' => :debug
a3f084b Eloy Durán Add entry to the CHANGELOG regarding link_with.
alloy authored
73 link_with 'TestRunnerTarget'
74 dependency 'Kiwi'
75 end
76 ```
77
78 _NOTE: As you can see it can take either one target name, or an array of names._
79
5d756c8 Eloy Durán Styling tweaks.
alloy authored
80 * If no explicit Xcode workspace is specified and only **one** project exists in
a4cd834 Eloy Durán Add notes about specifying the Xcode workspace and projects in a Podfile...
alloy authored
81 the same directory as the Podfile, then the name of that project is used as the
82 workspace’s name.
83
5d756c8 Eloy Durán Styling tweaks.
alloy authored
84 * If no explicit Xcode project is specified for a target, it will use the Xcode
a4cd834 Eloy Durán Add notes about specifying the Xcode workspace and projects in a Podfile...
alloy authored
85 project of the parent target. If no target specifies an expicit Xcode project
86 and there is only **one** project in the same directory as the Podfile then that
87 project will be used.
88
5d756c8 Eloy Durán Styling tweaks.
alloy authored
89 * If no explicit target is specified, then the Pods target will be linked with
a3f084b Eloy Durán Add entry to the CHANGELOG regarding link_with.
alloy authored
90 the first target in your project. So if you only have one target you do not
91 need to specify the target to link with.
92
93 See [#76](https://github.com/CocoaPods/CocoaPods/issues/76) for more info.
94
81d3550 Eloy Durán Actually add the user's build configurations to Pods.xcodeproj.
alloy authored
95 Finally, CocoaPods will add build configurations to the Pods project for all
96 configurations in the other projects in the workspace. By default the
97 configurations are based on the `Release` configuration, to base them on the
98 `Debug` configuration you will have to explicitely specify them as can be seen
99 above in the following line:
100
101 ```ruby
102 xcodeproj 'TestProject', 'Test' => :debug
103 ```
104
a3f084b Eloy Durán Add entry to the CHANGELOG regarding link_with.
alloy authored
105
311e6cc Eloy Durán Update CHANGELOG with changes for 0.6.0 so far.
alloy authored
106 ### Documentation
107
108 CocoaPods will now generate documentation for every library with the
109 [`appledoc`][5] tool and install it into Xcode’s documentation viewer.
110
111 You can customize the settings used like so:
112
113 ```ruby
114 s.documentation = { :appledoc => ['--product-name', 'My awesome project!'] }
115 ```
116
117 Alternatively, you can specify a URL where an HTML version of the documentation
118 can be found:
119
120 ```ruby
121 s.documentation = { :html => 'http://example.com/docs/index.html' }
122 ```
123
c3bb9a1 Eloy Durán Compare 0.5.1 to HEAD until we actually tag 0.6.0 and explicitely link t...
alloy authored
124 See [#149](https://github.com/CocoaPods/CocoaPods/issues/149) and
a3f084b Eloy Durán Add entry to the CHANGELOG regarding link_with.
alloy authored
125 [#151](https://github.com/CocoaPods/CocoaPods/issues/151) for more info.
311e6cc Eloy Durán Update CHANGELOG with changes for 0.6.0 so far.
alloy authored
126
127
2837753 Will Pragnell Updated CHANGELOG.md
goonzoid authored
128 ### Licenses & Documentation
129
130 CocoaPods will now generate two 'Acknowledgements' files for each target specified
131 in your Podfile which contain the License details for each Pod used in that target
132 (assuming details have been specified in the Pod spec).
133
134 There is a markdown file, for general consumption, as well as a property list file
135 that can be added to a settings bundle for an iOS application.
136
137 You don't need to do anything for this to happen, it should just work.
138
139 If you're not happy with the default boilerplate text generated for the title, header
140 and footnotes in the files, it's possible to customise these by overriding the methods
141 that generate the text in your `Podfile` like this:
142
143 ```ruby
144 class ::Pod::Generator::Acknowledgements
145 def header_text
146 "My custom header text"
147 end
148 end
149 ```
150
151 You can even go one step further and customise the text on a per target basis by
152 checking against the target name, like this:
153
154 ```ruby
155 class ::Pod::Generator::Acknowledgements
156 def header_text
157 if @target_definition.label.end_with?("MyTargetName")
158 "Custom header text for MyTargetName"
159 else
160 "Custom header text for other targets"
161 end
162 end
163 end
164 ```
165
166 Finally, here's a list of the methods that are available to override:
167
168 ```ruby
169 header_title
170 header_text
171 footnote_title
172 footnote_text
173 ```
174
175
311e6cc Eloy Durán Update CHANGELOG with changes for 0.6.0 so far.
alloy authored
176 ### Introduced two new classes: LocalPod and Sandbox.
177
178 The Sandbox represents the entire contents of the `POD_ROOT` (normally
179 `SOURCE_ROOT/Pods`). A LocalPod represents a pod that has been installed within
180 the Sandbox.
181
182 These two classes can be used as better homes for various pieces of logic
183 currently spread throughout the installation process and provide a better API
184 for working with the contents of this directory.
185
186
bd07c85 Eloy Durán Add note to CHANGELOG.md about Xcodeproj API changes.
alloy authored
187 ### Xcodeproj API
188
189 All Xcodeproj APIs are now in `snake_case`, instead of `camelCase`. If you are
190 manipulating the project from your Podfile's `post_install` hook, or from a
191 podspec, then update these method calls.
192
193
311e6cc Eloy Durán Update CHANGELOG with changes for 0.6.0 so far.
alloy authored
194 ### Enhancements
195
3a53857 Fabio Pelosin Updated for list command improvements
fabiopelosin authored
196 * [#188](https://github.com/CocoaPods/CocoaPods/pull/188): `list` command now
197 displays the specifications introduced in the master repo if it is given as an
198 option the number of days to take into account.
199
200 * [#188](https://github.com/CocoaPods/CocoaPods/pull/188): Transferred search
201 layout improvements and options to `list` command.
202
0dd703f Fabio Pelosin Updated changelog
fabiopelosin authored
203 * [#166](https://github.com/CocoaPods/CocoaPods/issues/166): Added printing
204 of homepage and source to search results.
205
206 * [#177](https://github.com/CocoaPods/CocoaPods/issues/177): Added `--stat`
207 option to display watchers and forks for pods hosted on GitHub.
208
209 * [#177](https://github.com/CocoaPods/CocoaPods/issues/177): Introduced colors
210 and tuned layout of search.
211
212 * [#112](https://github.com/CocoaPods/CocoaPods/issues/112): Introduced `--push`
213 option to `$ pod setup`. It configures the master spec repository to use the private
214 push URL. The change is preserved in future calls to `$ pod setup`.
215
216 * [#153](https://github.com/CocoaPods/CocoaPods/issues/153): It is no longer
217 required to call `$ pod setup`.
218
c3bb9a1 Eloy Durán Compare 0.5.1 to HEAD until we actually tag 0.6.0 and explicitely link t...
alloy authored
219 * [#163](https://github.com/CocoaPods/CocoaPods/issues/163): Print a template
220 for a new ticket when an error occurs.
221
311e6cc Eloy Durán Update CHANGELOG with changes for 0.6.0 so far.
alloy authored
222 * Added a new Github-specific downloader that can download repositories as a
223 gzipped tarball.
c3bb9a1 Eloy Durán Compare 0.5.1 to HEAD until we actually tag 0.6.0 and explicitely link t...
alloy authored
224
311e6cc Eloy Durán Update CHANGELOG with changes for 0.6.0 so far.
alloy authored
225 * No more global state is kept during resolving of dependencies.
c3bb9a1 Eloy Durán Compare 0.5.1 to HEAD until we actually tag 0.6.0 and explicitely link t...
alloy authored
226
311e6cc Eloy Durán Update CHANGELOG with changes for 0.6.0 so far.
alloy authored
227 * Updated Xcodeproj to have a friendlier API.
228
229
230 ### Fixes
231
4c0b3f4 Luke Redpath Added note about set_arc_compatibility_flag to the CHANGELOG
lukeredpath authored
232 * [#142](https://github.com/CocoaPods/CocoaPods/issues/142): Xcode 4.3.2 no longer
233 supports passing the -fobj-arc flag to the linker and will fail to build. The
234 addition of this flag was a workaround for a compiler bug in previous versions.
235 This flag is no longer included by default - to keep using this flag, you need to
236 add `set_arc_compatibility_flag!` to your Podfile.
237
0dd703f Fabio Pelosin Updated changelog
fabiopelosin authored
238 * [#183](https://github.com/CocoaPods/CocoaPods/issues/183): Fix for
239 `.DS_Store` file in `~/.cocoapods` prevents `$ pod install` from running.
c3bb9a1 Eloy Durán Compare 0.5.1 to HEAD until we actually tag 0.6.0 and explicitely link t...
alloy authored
240
241 * [#134](https://github.com/CocoaPods/CocoaPods/issues/134): Match
242 `IPHONEOS_DEPLOYMENT_TARGET` build setting with `deployment_target` option in
243 generated Pods project file.
244
245 * [#142](https://github.com/CocoaPods/CocoaPods/issues/): Add `-fobjc-arc` to
246 `OTHER_LD_FLAGS` if _any_ pods require ARC.
247
248 * [#148](https://github.com/CocoaPods/CocoaPods/issues/148): External encoding
249 set to UTF-8 on Ruby 1.9 to fix crash caused by non-ascii characters in pod
250 description.
251
311e6cc Eloy Durán Update CHANGELOG with changes for 0.6.0 so far.
alloy authored
252 * Ensure all header search paths are quoted in the xcconfig file.
c3bb9a1 Eloy Durán Compare 0.5.1 to HEAD until we actually tag 0.6.0 and explicitely link t...
alloy authored
253
311e6cc Eloy Durán Update CHANGELOG with changes for 0.6.0 so far.
alloy authored
254 * Added weak quoting to `ibtool` input paths.
255
256
257 ---------------------------------------
258
259 ## 0.5.0
260
261 No longer requires MacRuby. Runs on MRI 1.8.7 (OS X system version) and 1.9.3.
262
263 A full list of all the changes since 0.3.0 can be found [here][7].
264
265
266 ---------------------------------------
267
268 ## 0.4.0
269
270 Oops, accidentally skipped this version.
271
272
273 ---------------------------------------
274
7cb4ea0 Eloy Durán Use a h2 for the version in CHANGELOG
alloy authored
275 ## 0.3.0
4f0d85d Eloy Durán Add CHANGELOG.md
alloy authored
276
6cf539a Eloy Durán Include examples in CHANGELOG.
alloy authored
277 ### Multiple targets
4f0d85d Eloy Durán Add CHANGELOG.md
alloy authored
278
6cf539a Eloy Durán Include examples in CHANGELOG.
alloy authored
279 Add support for multiple static library targets in the Pods Xcode project with
280 different sets of depedencies. This means that you can create a separate
281 library which contains all dependencies, including extra ones that you only use
282 in, for instance, a debug or test build. [[docs][1]]
4f0d85d Eloy Durán Add CHANGELOG.md
alloy authored
283
6cf539a Eloy Durán Include examples in CHANGELOG.
alloy authored
284 ```Ruby
285 # This Podfile will build three static libraries:
286 # * libPods.a
287 # * libPods-debug.a
288 # * libPods-test.a
4f0d85d Eloy Durán Add CHANGELOG.md
alloy authored
289
6cf539a Eloy Durán Include examples in CHANGELOG.
alloy authored
290 # This dependency is included in the `default` target, which generates the
291 # `libPods.a` library, and all non-exclusive targets.
292 dependency 'SSCatalog'
4f0d85d Eloy Durán Add CHANGELOG.md
alloy authored
293
6cf539a Eloy Durán Include examples in CHANGELOG.
alloy authored
294 target :debug do
295 # This dependency is only included in the `debug` target, which generates
296 # the `libPods-debug.a` library.
297 dependency 'CocoaLumberjack'
298 end
4f0d85d Eloy Durán Add CHANGELOG.md
alloy authored
299
6cf539a Eloy Durán Include examples in CHANGELOG.
alloy authored
300 target :test, :exclusive => true do
301 # This dependency is *only* included in the `test` target, which generates
302 # the `libPods-test.a` library.
303 dependency 'Kiwi'
304 end
305 ```
4f0d85d Eloy Durán Add CHANGELOG.md
alloy authored
306
6cf539a Eloy Durán Include examples in CHANGELOG.
alloy authored
307 ### Install libraries from anywhere
4f0d85d Eloy Durán Add CHANGELOG.md
alloy authored
308
6cf539a Eloy Durán Include examples in CHANGELOG.
alloy authored
309 A dependency can take a git url if the repo contains a podspec file in its
310 root, or a podspec can be loaded from a file or HTTP location. If no podspec is
311 available, a specification can be defined inline in the Podfile. [[docs][2]]
312
313 ```Ruby
314 # From a spec repo.
315 dependency 'SSToolkit'
316
317 # Directly from the Pod’s repo (if it contains a podspec).
318 dependency 'SSToolkit', :git => 'https://github.com/samsoffes/sstoolkit.git'
319
320 # Directly from the Pod’s repo (if it contains a podspec) with a specific commit (or tag).
321 dependency 'SSToolkit', :git => 'https://github.com/samsoffes/sstoolkit.git',
322 :commit => '2adcd0f81740d6b0cd4589af98790eee3bd1ae7b'
323
324 # From a podspec that's outside a spec repo _and_ the library’s repo. This can be a file or http url.
325 dependency 'SSToolkit', :podspec => 'https://raw.github.com/gist/1353347/ef1800da9c5f5d267a642b8d3950b41174f2a6d7/SSToolkit-0.1.1.podspec'
326
327 # If no podspec is available anywhere, you can define one right in your Podfile.
328 dependency do |s|
329 s.name = 'SSToolkit'
330 s.version = '0.1.3'
331 s.platform = :ios
332 s.source = { :git => 'https://github.com/samsoffes/sstoolkit.git', :commit => '2adcd0f81740d6b0cd4589af98790eee3bd1ae7b' }
333 s.resources = 'Resources'
334 s.source_files = 'SSToolkit/**/*.{h,m}'
335 s.frameworks = 'QuartzCore', 'CoreGraphics'
336
337 def s.post_install(target)
338 prefix_header = config.project_pods_root + target.prefix_header_filename
339 prefix_header.open('a') do |file|
340 file.puts(%{#ifdef __OBJC__\n#import "SSToolkitDefines.h"\n#endif})
341 end
342 end
343 end
344 ```
345
346 ### Add a `post_install` hook to the Podfile class
347
348 This allows the user to customize, for instance, the generated Xcode project
349 _before_ it’s written to disk. [[docs][3]]
350
351 ```Ruby
352 # Enable garbage collection support for MacRuby applications.
353 post_install do |installer|
354 installer.project.targets.each do |target|
6e4ee6e Luke Redpath Fixes for the latest version of xcodeproj
lukeredpath authored
355 target.build_configurations.each do |config|
356 config.build_settings['GCC_ENABLE_OBJC_GC'] = 'supported'
6cf539a Eloy Durán Include examples in CHANGELOG.
alloy authored
357 end
358 end
359 end
360 ```
361
362 ### Manifest
363
364 Generate a Podfile.lock file next to the Podfile, which contains a manifest of
365 your application’s dependencies and their dependencies.
366
367 ```
368 PODS:
369 - JSONKit (1.4)
370 - LibComponentLogging-Core (1.1.4)
371 - LibComponentLogging-NSLog (1.0.2):
372 - LibComponentLogging-Core (>= 1.1.4)
373 - RestKit-JSON-JSONKit (0.9.3):
374 - JSONKit
375 - RestKit (= 0.9.3)
376 - RestKit-Network (0.9.3):
377 - LibComponentLogging-NSLog
378 - RestKit (= 0.9.3)
379 - RestKit-ObjectMapping (0.9.3):
380 - RestKit (= 0.9.3)
381 - RestKit-Network (= 0.9.3)
382
383 DOWNLOAD_ONLY:
384 - RestKit (0.9.3)
385
386 DEPENDENCIES:
387 - RestKit-JSON-JSONKit
388 - RestKit-ObjectMapping
389 ```
390
391 ### Generate Xcode projects from scratch
392
393 We no longer ship template projects with the gem, but instead generate them
394 programmatically. This code has moved out into its own [Xcodeproj gem][4],
395 allowing you to automate Xcode related tasks.
396
397
398
399
400 [1]: https://github.com/CocoaPods/CocoaPods/blob/master/lib/cocoapods/podfile.rb#L151
401 [2]: https://github.com/CocoaPods/CocoaPods/blob/master/lib/cocoapods/podfile.rb#L82
402 [3]: https://github.com/CocoaPods/CocoaPods/blob/master/lib/cocoapods/podfile.rb#L185
403 [4]: https://github.com/CocoaPods/Xcodeproj
311e6cc Eloy Durán Update CHANGELOG with changes for 0.6.0 so far.
alloy authored
404 [5]: https://github.com/tomaz/appledoc
28da91a Eloy Durán Update CHANGELOG to make comparison of all changes upto 0.6.0
alloy authored
405 [6]: https://github.com/CocoaPods/CocoaPods/compare/0.5.1...0.6.0
311e6cc Eloy Durán Update CHANGELOG with changes for 0.6.0 so far.
alloy authored
406 [7]: https://github.com/CocoaPods/CocoaPods/compare/0.3.10...0.5.0
Something went wrong with that request. Please try again.