AFNetworking Versions Save

A delightful networking framework for iOS, macOS, watchOS, and tvOS.

3.0.0

8 years ago

Released on Thursday, December 10, 2015. All issues associated with this milestone can be found using this filter.

Migration

For detailed information about migrating to AFNetworking 3.0.0, please reference the migration guide.

Changes

Added

  • Added support for older versions of Xcode to Travis
    • Implemented by Kevin Harwood in #3209.
  • Added support for Codecov.io
    • Implemented by Cédric Luthi and Kevin Harwood in #3196.
  • Added support for IPv6 to Reachability
    • Implemented by SAMUKEI and Kevin Harwood in #3174.
  • Added support for Objective-C light weight generics
    • Implemented by Kevin Harwood in #3166.
  • Added nullability attributes to response object in success block
    • Implemented by Nathan Racklyeft in #3154.
  • Migrated to Fastlane for CI and Deployment
    • Implemented by Kevin Harwood in #3148.
  • Added support for tvOS
    • Implemented by Kevin Harwood in #3128.
  • New image downloading architecture
    • Implemented by Kevin Harwood in #3122.
  • Added Carthage Support
    • Implemented by Kevin Harwood in #3121.
  • Added a method to create a unique reachability manager
    • Implemented by Mo Bitar in #3111.
  • Added a initial delay to the network indicator per the Apple HIG
    • Implemented by Kevin Harwood in #3094.

Updated

  • Improved testing reliability for continuous integration
    • Implemented by Kevin Harwood in #3124.
  • Example project now consumes AFNetworking as a library.
    • Implemented by Kevin Harwood in #3068.
  • Migrated to using instancetype where applicable
    • Implemented by Kyle Fuller in #3064.
  • Tweaks to project to support Framework Project
    • Implemented by Christian Noon in #3062.

Changed

  • Split the iOS and OS X AppDelegate classes in the Example Project
    • Implemented by Cédric Luthi in #3193.
  • Changed SSL Pinning Error to be NSURLErrorServerCertificateUntrusted
    • Implemented by Cédric Luthi and Kevin Harwood in #3191.
  • New Progress Reporting API using NSProgress
    • Implemented by Kevin Harwood in #3187.
  • Changed pinnedCertificates type in AFSecurityPolicy from NSArray to NSSet
    • Implemented by Cédric Luthi in #3164.

Fixed

  • Improved task creation performance for iOS 8+
    • Implemented by nikitahils, Nikita G and Kevin Harwood in #3208.
  • Fixed certificate validation for servers providing incomplete chains
    • Implemented by André Pacheco Neves in #3159.
  • Fixed bug in AFMultipartBodyStream that may cause the input stream to read more bytes than required.
    • Implemented by bang in #3153.
  • Fixed race condition crash from Resume/Suspend task notifications
    • Implemented by Kevin Harwood in #3152.
  • Fixed AFImageDownloader stalling after numerous failures
    • Implemented by Rick Silva in #3150.
  • Fixed warnings generated in UIWebView category
    • Implemented by Kevin Harwood in #3126.

Removed

  • Removed AFBase64EncodedStringFromString static function
    • Implemented by Cédric Luthi in #3188.
  • Removed code supporting conditional compilation for unsupported development configurations.
    • Implemented by Cédric Luthi in #3177.
  • Removed deprecated methods, properties, and notifications from AFN 2.x
    • Implemented by Kevin Harwood in #3168.
  • Removed support for NSURLConnection
    • Implemented by Kevin Harwood in #3120.
  • Removed UIAlertView category support since it is now deprecated
    • Implemented by Kevin Harwood in #3034.

3.0.0-beta.3

8 years ago

Build Statuscodecov.io

For detailed information about migrating to AFNetworking 3.0.0, please reference the migration guide. All 3.0.0 beta changes will be tracked with this filter.

Release Notes

Beta 3 introduces API changes for tracking NSProgress. Feedback from the community is welcome as the 3.0.0 release will soon be finalized. Please provide feedback in #3187.

The following changes have been made since 3.0.0-beta.2:

Added

  • Added support for Codecov.io
    • Implemented by Cédric Luthi and Kevin Harwood in #3196.
    • Please help us increase overall coverage by submitting a pull request!
  • Added support for IPv6 to Reachability
    • Implemented by SAMUKEI and Kevin Harwood in #3174.
  • Added support for Objective-C light weight generics
    • Implemented by Kevin Harwood in #3166.
  • Added nullability attributes to response object in success block
    • Implemented by Nathan Racklyeft in #3154.

Changed

  • Split the iOS and OS X AppDelegate classes in the Example Project
    • Implemented by Cédric Luthi in #3193.
  • Changed SSL Pinning Error to be NSURLErrorServerCertificateUntrusted
    • Implemented by Cédric Luthi and Kevin Harwood in #3191.
  • New Progress Reporting API using NSProgress
    • Implemented by Kevin Harwood in #3187.
  • Changed pinnedCertificates type in AFSecurityPolicy from NSArray to NSSet
    • Implemented by Cédric Luthi in #3164.

Fixed

  • Fixed certificate validation for servers providing incomplete chains
    • Implemented by André Pacheco Neves in #3159.
  • Fixed bug in AFMultipartBodyStream that may cause the input stream to read more bytes than required.
    • Implemented by bang in #3153.

Removed

  • Removed AFBase64EncodedStringFromString static function
    • Implemented by Cédric Luthi in #3188.
  • Removed code supporting conditional compilation for unsupported development configurations.
    • Implemented by Cédric Luthi in #3177.
  • Removed deprecated methods, properties, and notifications from AFN 2.x
    • Implemented by Kevin Harwood in #3168.

3.0.0-beta.2

8 years ago

Build Status

For detailed information about migrating to AFNetworking 3.0.0, please reference the migration guide. All 3.0.0 beta changes will be tracked with this filter.

In addition to all the relevant changes from 2.6.2 and 2.6.3, the following changes have been made since 3.0.0-beta.1:

Added

  • Added nullability attributes to response object in success block
  • Migrated to Fastlane for CI and Deployment
  • Added a method to create a unique reachability manager
  • Added a initial delay to the network indicator per the Apple HIG

Updated

  • Improved testing reliability for continuous integration

Fixed

  • Fixed certificate validation for servers providing incomplete chains
  • Fixed bug in AFMultipartBodyStream that may cause the input stream to read more bytes than required.
  • Fixed race condition crash from Resume/Suspend task notifications
  • Fixed AFImageDownloader stalling after numerous failures
  • Fixed warnings generated in UIWebView category

2.6.3

8 years ago

Released on Wednesday, November 11, 2015. All issues associated with this milestone can be found using this filter.

Fixed

  • Fixed clang analyzer warning suppression that prevented building under some project configurations
  • Restored Xcode 6 compatibility

2.6.2

8 years ago

Released on Friday, November 06, 2015. All issues associated with this milestone can be found using this filter.

Important Upgrade Note for Swift

  • #3130 fixes a swift interop error that does have a breaking API change if you are using Swift. This was identified after 2.6.2 was released. It changes the method from throws to an error pointer, since that method does return an object and also handles an error pointer, which does not play nicely with the Swift/Objective-C error conversion. See #2810 for additional notes. This affects AFURLRequestionSerializer and AFURLResponseSerializer.

Added

Updated

  • Updated travis to run on 7.1
  • Simplifications of if and return statements in AFSecurityPolicy

Fixed

  • Fixed swift interop issue that prevented returning a nil NSURL for a download task
  • Suppressed false positive memory leak warning in Reachability Manager
  • Fixed swift interop issue with throws and Request/Response serialization
  • Fixed race condition in reachability callback delivery
  • Fixed URLs that were redirecting in the README
  • Fixed Project Warnings
  • Fixed README link to WWDC session
  • Switched from OS_OBJECT_HAVE_OBJC_SUPPORT to OS_OBJECT_USE_OBJC for watchOS 2 support.
  • Added missing __nullable attributes to failure blocks in AFHTTPRequestOperationManager and AFHTTPSessionManager
  • Fixed memory leak in NSURLSession handling

3.0.0-beta.1

8 years ago

Build Status For detailed information about migrating to AFNetworking 3.0.0, please reference the migration guide. All future 3.0.0 beta changes will be tracked with this filter.

New

  • AFNetworking relies exclusively on NSURLSession. All NSURLConnection support has been removed from AFNetworking.
  • AFNetworking now supports installation through Carthage.
  • All UIKit categories are now build on NSURLSession.
  • Image downloading has been rebuilt using the image downloading architecture from AlamofireImage.
  • AFNetworking now supports tvOS and Xcode 7.1
  • Example project has been refactored to include support for all supported platforms.
  • Test targets have been completely refactored
  • Many other minor improvements.

The full changelog will be available for the final 3.0.0 release.

2.6.1

8 years ago

Future Compatibility Note Note that AFNetworking 3.0 will soon be released, and will drop support for all NSURLConnection based API's (AFHTTPRequestOperationManager, AFHTTPRequestOperation, and AFURLConnectionOperation. If you have not already migrated to NSURLSession based API's, please do so soon. For more information, please see the 3.0 migration guide.

Fixed

  • Fixed a bug that prevented empty x-www-form-urlencoded bodies.
  • Fixed bug that prevented AFNetworking from being installed for watchOS via CocoaPods.
  • Added missing nullable attributes to AFURLRequestSerialization and AFURLSessionManager.
  • Migrated to OS_OBJECT_USE_OBJC.
  • Added missing nullable tags to UIKit extensions.
  • Fixed potential infinite recursion loop if multiple versions of AFNetworking are loaded in a target.
  • Updated Travis CI test script
  • Migrated to FOUNDATION_EXPORT from extern.
  • Fixed issue where AFURLConnectionOperation could get stuck in an infinite loop.
  • Fixed regression where URL request serialization would crash on iOS 8 for long URLs.

2.6.0

8 years ago

2.6.0 (08-18-2015) Released on Tuesday, August 18th, 2015. All issues associated with this milestone can be found using this filter.

Important Upgrade Notes Please note the following API/project changes have been made:

  • iOS 6 support has now been removed from the podspec. Note that iOS 6 support has not been removed explicitly from the project, but it will be removed in a future update.
  • Full Certificate Chain Validation has been removed from AFSecurityPolicy. As discussed in #2744, there was no documented security advantage to pinning against an entire certificate chain. If you were using full certificate chain, please determine and select the most ideal certificate in your chain to pin against.
  • The request url will now be returned by the UIImageView category if the image is returned from cache. In previous releases, both the request and the response were nil. Going forward, only the response will be nil.
  • Support for App Extension Targets is now baked in using NS_EXTENSION_UNAVAILABLE_IOS. You no longer need to define AF_APP_EXTENSIONS in order to include code in a extension target.
  • This release now supports watchOS 2.0, which relys on target conditionals that are only present in Xcode 7 and iOS 9/watchOS 2.0/OS X 10.10. If you install the library using CocoaPods, AFNetworking will define these target conditionals for on older platforms, allowing your code to complile. If you do not use Cocoapods, you will need to add the following code your to PCH file.
#ifndef TARGET_OS_IOS
  #define TARGET_OS_IOS TARGET_OS_IPHONE
#endif
#ifndef TARGET_OS_WATCH
  #define TARGET_OS_WATCH 0
#endif
  • This release migrates query parameter serialization to model AlamoFire and adhere to RFC standards. Note that / and ? are no longer encoded by default.

Note that support for NSURLConnection based API's will be removed in a future update. If you have not already done so, it is recommended that you transition to the NSURLSession APIs in the very near future.

Added

Fixed

  • Fixed a crash related for objects that observe notifications but don't properly unregister.
  • Fixed a race condition crash that occured with AFImageResponseSerialization.
  • Fixed an issue where tests failed to run on CI due to unavailable simulators.
  • Fixed "method override not found" warnings in Xcode 7 Betas
  • Removed Duplicate Import and UIKit Header file.
  • Removed the ability to include duplicate certificates in the pinned certificate chain.
  • Fixed potential memory leak in AFNetworkReachabilityManager.

Documentation Improvements

  • Clarified best practices for Reachability per Apple recommendations.
  • Added startMonitoring call to the Reachability section of the README
  • Fixed documentation error around how baseURL is used for reachability monitoring.
  • Numerous spelling corrections in the documentation.

2.5.4

9 years ago

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

Updated

  • Updated the CI test script to run iOS tests on all versions of iOS that are installed on the build machine.

Fixed

  • Fixed an issue where AFNSURLSessionTaskDidResumeNotification and AFNSURLSessionTaskDidSuspendNotification were not being properly called due to implementation differences in NSURLSessionTask in iOS 7 and iOS 8, which also affects the AFNetworkActivityIndicatorManager.
  • Fixed an issue where the OS X test linker would throw a warning during tests.
  • Fixed an issue where tests would randomly fail due to mocked objects not being cleaned up.

2.5.3

9 years ago
  • Add security policy tests for default policy
  • Add network reachability tests
  • Change validatesDomainName property to default to YES under all security policies
  • Fix NSURLSession subspec compatibility with iOS 6 / OS X 10.8
  • Fix leak of data task used in NSURLSession swizzling
  • Fix leak for observers from addObserver:...:withBlock:
  • Fix issue with network reachability observation on domain name