Releases: AlaskaAirlines/atom
Time-out support
Allows clients to set timeout as part of service configuration to there desired interval.
Async-Await support
- Introduce async-await support.
- Update protocol requirements from class to AnyObject.
README
- README.md updates.
Version 2.0
- Add Combine support.
- Introduce
RequestableItem
. - Introduce
HeaderItem
andQueryItem
types. Conform and implementExpressibleByDictionaryLiteral
for cleanerRequestable
conformance. - Move Atom's nested types to be their own (resolve nesting issues with SPM, etc).
- Remove Carthage support (sorry). Please use SPM.
- Update Example to use SwiftUI.
- Update UNIT tests.
- Update documentation.
SPM
- Add SPM support.
- Update macOS support to 10_14.
Multipath Service Type
The multipath service type determines whether multipath TCP should be attempted and the conditions for creating and switching between subflows. Using these service types requires the appropriate entitlement. Any connection attempt will fail if the process does not have the required entitlement.
Available options are:
.none
- The default service type indicating that Multipath TCP should not be used..handover
- A Multipath TCP service that provides seamless handover between Wi-Fi and cellular in order to preserve the connection..interactive
- A service whereby Multipath TCP attempts to use the lowest-latency interface..aggregate
- A service that aggregates the capacities of other Multipath options in an attempt to increase throughput and minimize latency.
Cleanup
- Remove forgotten debug code.
Logging & Metrics
This version of Atom adds the ability to log all network requests to the Console app as well as export all logs to a file.
To take advantage of this new feature, set log
property on Atom instance to .on
:
let atom: Atom = {
let atom = Atom()
atom.log = .on
return atom
}()
Current implementation uses os_log
.
If you choose to use the Console app for monitoring outgoing requests, you can use the following categories and subsystems to filter results.
Categories: Network, Authentication.
Subsystems: Your App’s Bundle Identifier.
Changelog
- Add and implement required
OSLog
options. - Add and implement required additions to
Bool
,URLRequest
,URLResponse
,URLSessionTask
,URLSessionTaskMetrics
. - Introduce and implement
Interceptor
type. - Update implementation of the
Service
andAuthenticationManager
to use newInterceptor
for logging requests to the Console. - Update the Example app.
- Update documentation.
Token Refresh Notifications
- Add implementation for posting a notification on token refresh failure.
Initial release.
v1.0.0 Initial release.