https://github.com/uber/swift-common
Common code used by various Uber open source projects
https://github.com/uber/swift-common
Last synced: 5 months ago
JSON representation
Common code used by various Uber open source projects
- Host: GitHub
- URL: https://github.com/uber/swift-common
- Owner: uber
- License: apache-2.0
- Created: 2019-03-01T01:37:01.000Z (almost 7 years ago)
- Default Branch: master
- Last Pushed: 2020-11-07T00:34:34.000Z (about 5 years ago)
- Last Synced: 2025-06-11T18:06:42.587Z (7 months ago)
- Language: Swift
- Homepage:
- Size: 53.7 KB
- Stars: 67
- Watchers: 8
- Forks: 21
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE.txt
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# Swift Common
[](https://travis-ci.com/uber/swift-common?branch=master)
[](https://github.com/Carthage/Carthage)
[](https://opensource.org/licenses/Apache-2.0)
## Requirements
- Xcode 9.3+
- Swift 4.0+
## Overview
Swift-Common contains reusable modules shared among a number of Uber's Swift open source projects, such as [Needle](https://github.com/uber/needle), [Swift Abstract Class](https://github.com/uber/swift-abstract-class) and etc. This code is not specifically designed for external consumption beyond Uber's open source projects. However, it is certainly possible for other projects to depend on these libraries.
### SourceParsingFramework
This framework contains common code used for filtering and parsing Swift source code.
### CommandFramework
This framework contains common code for parsing command line arguments.
## Installation
Since Uber's Swift open source projects use [Swift Package Manager](https://github.com/apple/swift-package-manager) this project only supports installation via SPM. Please refer to the standard SPM package setup for details.
## Building
First fetch the dependencies:
```bash
$ swift package resolve
```
You can then build from the command-line:
```bash
$ swift build
```
Or create an Xcode project and build using the IDE:
```bash
$ swift package generate-xcodeproj
```
## Testing
From command-line.
```bash
$ swift test
```
Or you can follow the steps above to generate a Xcode project and run tests within Xcode.
## Related projects
If you like Swift Common, check out other related open source projects from our team:
- [Needle](https://github.com/uber/needle): a compile-time safe Swift dependency injection framework.
- [Swift Abstract Class](https://github.com/uber/swift-abstract-class): a light-weight library along with an executable that enables compile-time safe abstract class development for Swift projects.
- [Swift Concurrency](https://github.com/uber/swift-concurrency): a set of concurrency utility classes used by Uber, inspired by the equivalent [java.util.concurrent](https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/package-summary.html) package classes.
## License
[](https://app.fossa.io/projects/git%2Bgithub.com%2Fuber%2Fswift-concurrency?ref=badge_large)