Change Log
All notable changes to this project will be documented in this file.
Alamofire adheres to Semantic Versioning.
Released on 2015-05-13. All issues associated with this milestone can be found using this filter.
Added
- Contributing Guidelines document to the project.
- Documentation to the
URLStringConvertible protocol around RFC specs.
- The
Carthage/Build ignore flag to the .gitignore file.
- The
.DS_Store ignore flag to the .gitignore file.
- Response status code asserts for redirect tests.
- A CHANGELOG to the project documenting each official release.
Updated
SessionDelegate override closure properties to match the method signatures.
- Documentation for the
Printable protocol on Request to reference output stream
rather than the specific OutputStreamType.
- Deployment targets to iOS 8.0 and OS X 10.9 for the respective frameworks.
SessionDelegate willPerformHTTPRedirection method to accept optional return type
from override closure.
- Embedded Framework and Source File documentation in the README.
- Alamofire source to be split into multiple core files and feature files.
TaskDelegate override closure signatures and delegate method implementations.
Removed
- Travis-CI build status from the README until Xcode 6.3 is supported.
- Unnecessary parentheses from closure parameters and typealiases.
Fixed
SessionDelegate override closure documentation.
- Some inaccurate documentation on several of the public
SessionDelegate closures.
- A deinit race condition where the task delegate queue could fail to
dispatch_release.
TaskDelegate to only set qualityOfService for NSOperationQueue on iOS 8+.
- Expectation order issue in the redirect tests.
DataTaskDelegate behavior ensuring NSProgress values and progress override
closures are always updated and executed.
Released on 2015-04-21.
Added
- Redirect tests for the
SessionDelegate.
- TLS evaluation test case.
- Additional guards to ensure unique task identifiers for upload and download tasks.
Updated
- Required Xcode version to Xcode to 6.3 in the README.
- SSL validation to use default system validation by default.
Released on 2015-04-09.
Added
- New
testURLParameterEncodeStringWithSlashKeyStringWithQuestionMarkValueParameter
test.
- New
backgroundCompletionHandler property to the Manager called when the
session background tasks finish.
Updated
Request computed property progress to no longer be an optional type.
- All logic to Swift 1.2.
- The
responseString serializer to respect server provided character encoding with
overrideable configuration, default string response serialization to ISO-8859-1, as
per the HTTP/1.1 specification.
SessionDelegate methods to first call the override closures if set.
SessionDelegate and all override closures to a public ACL allowing for customization.
SessionDelegate class to final.
SessionDelegate header documentation for method override properties.
- Xcode project to set
APPLICATION_EXTENSION_API_ONLY to YES for OS X target.
Removed
- Ambiguous response serializer methods that collided with default parameters.
SessionDelegate initializer and replaced with default property value.
Fixed
- Async tests where asserts were potentially not being run by by moving
expectation.fullfill() to end of closures.
- Small grammatical error in the ParameterEncoding section of the README.
- Typo in a download test comment.
- Signature mismatch in the
dataTaskDidBecomeDownloadTask override closure.
- Issue in the
SessionDelegate where the DataTaskDelegate was not being called.
Released on 2015-03-26.
Added
- Convenience upload functions to the
Manager.
- Info to the README about Swift 1.2 support.
Updated
- All request / upload / download methods on
Manager to match the top-level functions.
- The
testDownloadRequest to no longer remove the downloaded file.
- Ono XML response serializer example in the README.
- Travis-CI settings to only build the master branch.
- Code signing identities for the frameworks and targets to better support Carthage.
- iOS deployment target to iOS 8.0 for iOS target and tests.
- Legal characters to be escaped according to RFC 3986 Section 3.4.
Fixed
- Travis-CI scheme issue, added podspec linting and added ENV variables.
- Code sample in the README in the Manual Parameter Encoding section.
Released on 2015-01-30.
Added
- Podspec argument
requires_arc to the podspec file.
- Support for Travis-CI for automated testing purposes.
Updated
- Installation instructions in the README to include CocoaPods, Carthage and
Embedded Frameworks.
- Travis-CI to use Xcode 6.1.1.
- The
download method on Manager to use Request.DownloadFileDestination typealias.
RequestTests to no longer delete all cookies in default session configuration.
- Travis-CI yaml file to only build the active architecture.
- Deployment targets to iOS 7.0 and Mac OS X 10.9.
Removed
- The
tearDown method in the AlamofireDownloadResponseTestCase.
Fixed
- Small formatting issue in the CocoaPods Podfile example in the README.
- Several issues with the iOS and OSX targets in the Xcode project.
- The
testDownloadRequest in DownloadTests by adding .json file extension.
- The
AlamofireRequestDebugDescriptionTestCase on OSX.
- Spec validation error with CocoaPods 0.36.0.beta-1 by disabling -b flags in
cURL
debug on OSX.
- Travis-CI build issue by adding suppport for an
iOS Example scheme.
Released on 2015-01-09.
Added
- Podspec file to support CocoaPods deployment.
- Shared scheme to support Carthage deployments.
- New target for Alamofire OSX framework.
Updated
- Upload and Download progress state to be updated before calling progress closure.
Fixed
- Some casting code logic in the Generic Response Object Serialization example in
the README.
- Indentation formatting of the
responseString parameter documentation.
Released on 2014-12-21.
Added
- POST request JSON response test.
Updated
- The response object example to use a failable initializer in the README.
- Router example in the README by removing extraneous force unwrap.
- Xcode project
APPLICATION_EXTENSION_API_ONLY flag to YES.
- Default HTTP header creation by moving it into a public class method.
Fixed
- Upload stream method to set
HTTPBodyStream for streamed request.
- ParameterEncoding to compose percent-encoded query strings from
percent-encoded components.
- Serialization handling of NSData with 0 bytes.
- Issue where
suggestedDownloadDestination parameters were being ignored.
- Crash caused by
Manager deinitialization and added documentation.
Released on 2014-11-20.
Updated
- Dispatch-based synchronized access to subdelegates.
- iOS 7 instructions in the README.
- CRUD example in the README to work on Xcode 6.1.
- The
cURL example annotation in the README to pick up bash syntax highlighting.
Fixed
- Out-of-memory exception by replacing
stringByAddingPercentEncodingWithAllowedCharacters
with CFURLCreateStringByAddingPercentEscapes.
- Several issues in the README examples where an NSURL initializer needs to be unwrapped.
- Possible exception when force unwrapping optional header properties.
- Optional cookie entry in
cURL output.
- Optional
textLabel property on cells in the example app.
Released on 2014-10-20.
Updated
- Project to support Swift 1.1 and Xcode 6.1.
Released on 2014-10-20.
Added
- Tests for upload and download with progress.
- Test for question marks in url encoded query.
- The
NSURLSessionConfiguration headers to cURL representation.
- Parameter encoding tests for key/value pairs containing spaces.
- Percent character encoding for the
+ character.
- Escaping for quotes to support JSON in
cURL commands.
- The
request method to the Manager bringing it more inline with the top-level methods.
Fixed
- Parameter encoding of ampersands and escaping of characters.
- Parameter encoding of
HTTPBody from occurring twice.
- Fixed by Yuri in Pull Request
#153.
- Extraneous dispatch to background by using weak reference for delegate in response.
- Response handler threading issue by adding a
subdelegateQueue to the SessionDelegate.
- Challenge issue where basic auth credentials were not being unwrapped.
Released on 2014-09-25.
Added
- Initial release of Alamofire.