Skip to content

Latest commit

 

History

History
471 lines (423 loc) · 24.4 KB

CHANGELOG.md

File metadata and controls

471 lines (423 loc) · 24.4 KB

Change Log

All notable changes to this project will be documented in this file. Alamofire adheres to Semantic Versioning.


Released on 2015-06-12. All issues associated with this milestone can be found using this filter.

Added

  • Tests for data task progress closure and NSProgress updates.
  • More robust tests around download and upload progress.
  • More robust redirect tests around default behavior and task override closures.
  • The "[" and "]" to the legal escape characters and added more documentation.
  • Percent escaping tests around reserved / unreserved / illegal characters.
  • Tests for various Cache-Control headers with different request cache policies.
  • Link to Carthage in the README.

Updated

  • iOS 7 instructions to cover multiple Swift files in the README.
  • All tests to follow the Given / When / Then structure.
  • All tests to be crash safe.
  • The OS X tests so that they are all passing again.
  • Re-enabled Travis-CI tests for both iOS and Mac OS X.
  • Travis-CI test suite to run all tests in both debug and release.
  • Travis-CI test suite to run all tests on iOS 8.1, 8.2 and 8.3 as well as Mac OS X 10.10.
  • Travis-CI test suite to run pod lib lint against the latest version of CocoaPods.

Fixed

  • Random deinitialization test failure by handling task state race condition.
  • Typo in the API Parameter Abstraction in the README.
  • Cookies are now only applied in the DebugPrintable API when appropriate.

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

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

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


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.
    • Added by Brian Smith.

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