tuist/command
Command is a micro Swift Package that provides utilities for running system processes. We extracted it from Tuist to make it available for other projects that might need to run system processes.
Motivation
Given that Foundation.Process exists, you might be wondering why we created this package. There are several reasons:
- We integrate with swift-log to log debug information about the commands that are being run.
- We provide a more user-friendly API that makes it easier to run commands.
- We align the API with Swift's structured concurrency model, making it easier to run commands concurrently.
- We provide better error handling, making it easier to understand what went wrong when running a command.
Development
Using Tuist
- Clone the repository:
git clone https://github.com/tuist/Command.git - Generate the project:
tuist generate
Using Swift Package Manager
- Clone the repository:
git clone https://github.com/tuist/Command.git - Open the
Package.swiftwith Xcode
Contributors ✨
Thanks goes to these wonderful people (emoji key):
<table> <tbody> <tr> <td align="center" valign="top" width="14.28%"><a href="http://natanrolnik.me"><img src="https://avatars.githubusercontent.com/u/1164565?v=4?s=100" width="100px;" alt="Natan Rolnik"/><br /><sub><b>Natan Rolnik</b></sub></a><br /><a href="https://github.com/tuist/Command/commits?author=natanrolnik" title="Code">💻</a></td> <td align="center" valign="top" width="14.28%"><a href="https://abarba.me"><img src="https://avatars.githubusercontent.com/u/1316152?v=4?s=100" width="100px;" alt="Andrew Barba"/><br /><sub><b>Andrew Barba</b></sub></a><br /><a href="https://github.com/tuist/Command/commits?author=AndrewBarba" title="Code">💻</a></td> <td align="center" valign="top" width="14.28%"><a href="http://danpalmer.me"><img src="https://avatars.githubusercontent.com/u/202400?v=4?s=100" width="100px;" alt="Dan Palmer"/><br /><sub><b>Dan Palmer</b></sub></a><br /><a href="https://github.com/tuist/Command/commits?author=danpalmer" title="Code">💻</a></td> </tr> </tbody> </table>
This project follows the all-contributors specification. Contributions of any kind welcome!
Package Metadata
Repository: tuist/command
Default branch: main
README: README.md