Swiftpack.co is a collection of thousands of indexed Swift packages. Search packages.
AdvancedOperation
Operation usefull extensions.
Requirements
Documentation
Documentation is available online.
Installation
CocoaPods
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '12.0'
use_frameworks!
target '<Your Target Name>' do
pod 'AdvancedOperation', '~> 6.2.1'
end
Carthage
github "tinrobots/AdvancedOperation" ~> 6.2.1
Swift Package Manager
dependencies: [
.package(url: "https://github.com/tinrobots/AdvancedOperation.git", .upToNextMajor(from: "6.2.1"))
]
License
AdvancedOperation is released under the MIT license. See LICENSE for details.
Contributing
Pull requests are welcome!
Show your ❤ with a ★
Github
link |
Stars: 2 |
You may find interesting
Releases
6.2.1 - 2020-10-14T08:29:05
- Fix a KVO crash in GroupOperation.
- Fix memory leak in GroupOperation.
6.2.0 - 2020-05-29T16:08:29
- Added
ResultOperation
, anAsynchronousOperation
that produces a result once finished. - Added
FailableAsynchronousOperation
, anAsynchronousOperation
that can finish with an error.
6.1.0 - 2020-05-28T10:22:26
- AsyncOperation now conforms to ProgressReporting.
- AsyncOperation progress now gets successfully reported by the OperationQueue running the operation.
- More tests.
6.0.3 - 2020-04-22T07:34:30
- Fix multi-thread issues when calling the start() method.
- More tests.
6.0.2 - 2020-04-15T15:04:53
- Minor refinements
6.0.1 - 2020-04-09T17:06:36
- Minor refinements
6.0.0 - 2020-04-01T08:49:31
This release aims to be super lightweight offering just a few basic operations:
- AsyncOperation
- AsyncBlockOperation
- AsyncGroupOperation
5.4.0 - 2020-03-29T16:23:45
- ResultOperation has been renamed AsyncResultOperation.
5.3.0 - 2020-03-29T12:20:05
- The isReady property is not participating anymore in the AsyncOperation internal state change.
- A NSException will be thrown if an AsyncOperation gets started without being ready.
- A NSException will be thrown if an AsyncOperation gets started multiple times.
- Added ObservableOperation to easily observe all KVC compliant Operation properties.
- Removed LoggableOperation.
- OutputProducingOperation operations must now implement the onOutputProduced variable.
5.2.0 - 2020-03-02T08:46:29
- Improved the underlying implementawtion of
GroupOperation
. LoggableOperation
now exposes alog
variable.- Refinements.
5.1.0 - 2020-02-18T10:55:51
- Added
GroupOperation
. - Added
ResultOperation
. - Added
GeneratorOperation
protocol. FailableOperation
is now generic over its Error type.- Improved logs for operations conforming to
FailableOperation
.
5.0.0 - 2020-01-24T10:48:53
- Added AsynchronousOperation.
- Added AsynchronousBlockOperation.
- renamed inject into injectOutput.
- Removed AdvancedOperation
- Removed conditions.
4.0.0 - 2019-10-26T10:12:36
- An AdvancedOperation can now be cancelled or finished with only one single Error.
- Injection doesn't require an adapter operation anymore.
- OperationConditionResult has beed replaced by the Swift Result type.
- Removed AdvancedOperationQueue.
- New ExclusivityManager implementation.
- Removed
then
operator. - Added Operation.addDependencies(_:) method.
3.2.0 - 2019-06-26T19:44:54
- Added
OperationDidExecuteObserving
protocol.
3.1.0 - 2019-06-25T12:40:40
- Improved
GroupOperation
. OperationInputHaving
deprecated, useInputRequiring
instead.OperationOutputHaving
deprecated, useOutputProducing
instead.- Bugfixes.
3.0.0 - 2019-04-01T09:51:14
- AdvancedOperation is now completely migrated to Swift 5.0.
- Bugfixes.
2.3.0 - 2019-02-25T17:01:57
- Improved produced operations.
- Bugfixes.
2.2.2 - 2018-12-23T18:32:44
- GroupOperation Bugfixes.
2.2.1 - 2018-12-09T11:22:43
- Bugfixes.
2.2.0 - 2018-12-08T10:16:09
- Added
duration
(in seconds) to AdvancedOperation. - Added
MutualExclusivityCondition
. - Bugfixes.
2.1.0 - 2018-11-08T13:45:11
AdvancedBlockOperation
supportsProgressReporting
.- Bugfixes.
2.0.0 - 2018-11-04T10:41:39
- Added
BlockCondition
. - Added
TimeoutObserver
. - Added support for
isAsynchronous
\isCondurrent
operation. - Fixed KVO for the
isCancelled
property inAdvancedOperation
. - A
GroupOperation
can be cancelled correctly even if it's not yet started. - The property
failed
inAdvancedOperation
has been renamedhasErrors
to better reflect its intent. - Removed
ExclusivityManager
. - Conditions are evaluated as a dependency operation.
- Bugfixes.
1.1.0 - 2018-10-10T10:20:13
- Added a
UIBackgroundObserver
to let anAdvancedOperation
run in background (for a small amount of time) on iOS and tvOS. - The main phases of an
AdvancedOperation
can now be monitored viaOSLog
. ExclusivityManager
improvements.- Better
OperationCondition
errors. - Bugfixes.
1.0.0 - 2018-09-16T20:46:56
- AdvancedOperation is now completely migrated to Swift 4.2.
0.7.6 - 2018-08-10T10:49:23
- Small fixes.
0.7.5 - 2018-08-07T15:12:33
- The main function in GroupOperation is now overridable.
0.7.4 - 2018-08-07T11:03:40
- An Injectable operation now has a
transform
closure.
0.7.3 - 2018-08-07T10:14:26
- Fixed access levels.
0.7.2 - 2018-07-28T11:09:37
- Resolved an ExclusivityManager bug where a cancelled operation was added the operation list.
0.7.1 - 2018-07-27T12:18:57
- Fixed some thread safety isssues.
- Fixed an issue occurring while cancelling a DelayOperation.