Skip to content
Branch: master
Find file Copy path
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
158 lines (118 sloc) 5.83 KB


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

2.x Releases

1.x Releases

2.1.0 - Swift 5.0 Support

12 Apr 2019


  • Added support to Xcode 10.2 and Swift 5.0

2.0.1 - Better APIs

26 Dec 2018


  • Renamed open func finish(_ hasFailed: Bool) to open func finish(success: Bool = true), the old one has been deprecated but still valid #12
  • Renamed hasFailed variable to success, the old one has been deprecated but still valid #12


  • Updated SwiftLint to 0.29.2

Thanks to @zykloman for this release

2.0.0 - Let Me Retry

1 Nov 2018


  • Added support to Xcode 10 and Swift 4.2
  • Added retry feature to ConcurrentOperation class #10, more info on how to use it here and here
  • Added addCompletionHandler(_:) function to Queuer class
  • Added a Scheduler class to better schedule your tasks, more info on how to use it here
  • Added queue state restoration (beta) feature, more info on how to use it here


  • Changed executionBlock of ConcurrentOperation to pass the concurrentOperation variable inside the closure to be able to use the retry feature. If you don't need it simply put _ in after the block creation:
    let concurrentOperation = ConcurrentOperation { _ in
        /// Your task here
    This also affects SynchronousOperation
  • Changed from Codecov to Coveralls service for code coverage


  • Improved Semaphore with timeout handling
  • Updated SwiftLint to 0.27.0


  • Removed watchOS 2.0 support in favor of watchOS 3.0, thanks to an App Store submission bug #11
  • Removed Hound CI

Thanks to @SureshSc, @zykloman and @debjitk for this release

1.3.2 - Linux Quality

7 Jul 2018


  • Added QualityOfService on Linux
  • Deprecated RequestOperation, it will be removed in Queuer 2


  • Updated SwiftLint to 0.26.0
  • Improved code with new SwiftLint rules

1.3.1 - Swift 4.1 Support

2 Apr 2018


  • Added support to Xcode 9.3 and Swift 4.1


  • OperationQueue in Queuer class is now open

Thanks to @BabyAzerty for this release

1.3.0 - Open Everything

18 Feb 2018


  • Added swift_version property in podspec file for CocoaPods 1.4.0
  • Added Hound CI


  • body, headers and query parameters in RequestOperation class may now be nil
  • RequestOperation class and all of its functions are now open
  • session object in RequestOperation class in now open and has waitsForConnectivity sets to true for iOS 11 or later by default
  • Updated SwiftLint to 0.25.0


  • Now Swift Package Manager correctly builds Queuer with Swift 4
  • Removed self captures

1.2.1 - Unwanted Alert

22 Oct 2017


  • Removed alert on Xcode 9 that shows the ability to convert the code to Swift 4 even it's already written in Swift 4

1.2.0 - Swift 4 Support

23 Sep 2017


  • Added support to Swift 4 and Xcode 9


  • Using new Xcode 9 build system
  • Updated SwiftLint to 0.22.0

1.1.0 - Quality Of Service

1 Sep 2017


  • Added qualityOfService property on Queuer class
  • Added ddChainedOperations(_ operations: Operation..., completionHandler: convenience function on Queuer class


  • Improved the init function on Queuer class with maxConcurrentOperationCount and qualityOfService properties, both with a default value, so no changes are required
  • Updated SwiftLint to 0.21.0


  • Now ConcurrentOperation is subclassable with open instead of public Access Control #2
  • Fixed tests that sometimes fails

1.0.0 - First Queue

26 Jul 2017


  • Added ConcurrentOperation to create asynchronous operations
  • Added Queuer to handle a shared queue or create a custom one
  • Added RequestOperation to create network request operations
  • Added Semaphore to create a Dispath semaphore
  • Added SynchronousOperation to create synchronous operations
You can’t perform that action at this time.