Swiftpack.co - Package - spothero/UtilityBelt-iOS


CI Status Latest Release Swift Version Platform Support License

UtilityBelt is a collection of utilities used across various applications and libraries.

:warning: The code in this library has been provided as-is. SpotHero uses this library in Production, but it may lack the documentation, stability, and functionality necessary to support external use. While we work on improving this codebase, use this library at your own risk and please reach out if you have any questions or feedback.


Swift Package Manager

Swift Package Manager is built into the Swift toolchain and is our preferred way of integrating the SDK.

For Swift package projects, simply add the following line to your Package.swift file in the dependencies section:

dependencies: [
  .package(url: "https://github.com/spothero/UtilityBelt-iOS", .upToNextMajor(from: "<version>")),

For app projects, simply follow the Apple documentation on adding package dependencies to your app.


For all bug reports, feature requests, and general communication, please open an issue to get in contact with us.


Stars: 0


Used By

Total: 0


0.3.2: Added temporary Pod compatibility - 2019-10-21 17:54:35

SPM can have multiple products whereas CocoaPods only allows a single product header. To fix this, I've set the module_name to UtilityBeltNetworking for the time being.

0.3.1 - 2019-10-15 21:47:03

  • MockService.shared.hasStubs now inverts the check for stubbedData.isEmpty, returning the correct value.

0.3.0: SpotHero API Mocker... Sham! - 2019-10-14 18:29:40

This release introduces the SpotHero API Mocker, or "Sham" for short. It allows us to stub various requests and responses for testing across our libraries. Currently, we use VOKMockUrlProtocol for this, but it does too much magic. There were other libraries like MockingJay out there in the wild, but they are not maintained well and the cost of implementation was very low, so bringing this in-house made sense.

This is just a proof of concept rollout for Sham for slow integration into SpotHeroAPI. Stay tuned.

0.2.0: HTTPClient and Swift 5.1 - 2019-10-07 22:57:42

  • Added HTTPClient, a proof of concept class for bringing all Networking-related functionality in-house.
  • Split up the UtilityBelt module in anticipation of having more modules in the project, starting with UtilityBeltNetworking.
  • Added lots of documentation through UtilityBeltNetworking.
  • Ensured Xcode 11 and Swift 5.1 support.

0.1.0: Networking - 2019-09-20 21:05:17

  • Migrated Networking module from SpotHero-iOS.
  • Implemented Swift package structure with added Podspec for CocoaPods support.