Prerequisites
Before building List from source, ensure you have the following installed:Swift 6.2+
Required Swift version for building the project
macOS 13+
Minimum platform version for macOS builds
Git
For cloning the repository
Xcode (macOS)
Recommended for macOS development
List supports both macOS and Linux platforms. On Linux, you’ll need to install Swift 6.2+ using Swiftly or your distribution’s package manager.
Quick Start
Build the Project
Build List using Swift Package Manager:This creates a debug build in
.build/debug/sls.Build Configurations
Debug Build
The debug build includes debugging symbols and is not optimized:.build/debug/sls.
Release Build
The release build is optimized for production use:.build/release/sls.
Architecture-Specific Builds
On macOS, you can build for specific architectures:Platform-Specific Instructions
- macOS
- Linux
macOS Build
-
Ensure you have Xcode Command Line Tools installed:
-
Verify Swift version:
-
Build the project:
-
The binary will be at
.build/release/sls
Advanced Build Tasks
Generating Documentation
List uses Swift-DocC for documentation generation:The project uses the
swift-docc-plugin (version 1.4.3+) for documentation generation.Running Specific Tests
Run the entire test suite:Clean Build Artifacts
Remove build artifacts to start fresh:Troubleshooting
Swift version mismatch
Swift version mismatch
Problem: Error about Swift version compatibility.Solution: Ensure you’re using Swift 6.2 or later:Update Swift using Xcode (macOS) or Swiftly (Linux).
Missing dependencies
Missing dependencies
Problem: Build fails with missing package dependencies.Solution: Resolve and update dependencies:
Build fails on Linux
Build fails on Linux
Problem: Build errors on Linux systems.Solution: Ensure you have the required system libraries:
Permission denied when installing
Permission denied when installing
Problem: Cannot copy binary to
/usr/local/bin/.Solution: Use sudo or choose a user-writable location:Tests fail unexpectedly
Tests fail unexpectedly
Problem: Test suite fails during build verification.Solution: Ensure you’re in the project root and have a clean build:Check that file permissions are correct in the Tests directory.
Dependencies
List relies on the following Swift packages:| Package | Version | Purpose |
|---|---|---|
| swift-argument-parser | 1.0.0+ | Command-line argument parsing |
| swift-docc-plugin | 1.4.3+ | Documentation generation |
| swift-testing | 0.11.0+ | Modern Swift testing framework |
Next Steps
Architecture
Learn about the project structure and design
Contributing
Start contributing to the project