Skip to main content

Missing SwiftLint runner

Missing Xcode project aware SwiftLint runner with support for different targets.

Motivation

The original SwiftLint tool is Xcode project agnostic. This can be problematic. Imagine you want to use different SwiftLint config for production and test targets and you have a directory structure where tests (specs) are mixed up with production code:

UI /
│
└── Controllers /
    │
    ├── ViewController.swift
    ├── ViewControllerSpec.swift
    └── Doubles
        └── APIClientDouble.swift

As of now, SwiftLint does not support recursive glob patterns, so you can't exclude the directory like **Doubles.

SwiftLint runner

SwiftLint runner lists all of the Swift files under a specific target, appends it to the specified config file and performs linting on those files.

Given the directory structure:

Project /
│
├── .swiftlint_sources.yml
├── .swiftlint_specs.yml
├── Project.xcodeproj
└── Controllers /
    ├── ViewController.swift
    └── ViewControllerSpec.swift

and the two targets called Production & Specs you can use SwiftLint runner as follows:

slrunner Project.xcodeproj Production .swiftlint_sources.yml
slrunner Project.xcodeproj Specs .swiftlint_specs.yml

And forget about glob patterns at all!

Installation

SwiftLint runner requires Python 3.7. To install it, simply run:

pip install swiftlint-runner

Metadata

Release files for swiftlint-runner 0.0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for swiftlint-runner 0.0.1
File Size Uploaded Provenance Actions
swiftlint-runner-0.0.1.tar.gz 4.0 kB Without provenance Details for swiftlint-runner-0.0.1.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for swiftlint-runner 0.0.1
File Interpreter ABI Platform Actions
swiftlint_runner-0.0.1-py3-none-any.whl Python 3 none any Details for swiftlint_runner-0.0.1-py3-none-any.whl

Total release size: 8.8 kB

Release files / swiftlint-runner-0.0.1.tar.gz

Download URL swiftlint-runner-0.0.1.tar.gz
Size 4.0 kB
Tags Source
SHA-256 checksum
How to use checksums
ac4b7e4fd41180c479d06aeff983b6ad1f822d549a80ca5032d850d7088bbe0b
BLAKE2b-256 checksum
How to use checksums
213791ca23b31808cb6f7fa8e0de4ceb866cc6728b278f7bd4add409741c999f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.7.1

Release files / swiftlint_runner-0.0.1-py3-none-any.whl

Download URL swiftlint_runner-0.0.1-py3-none-any.whl
Size 4.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
9b21d0291a71583b901458cd1686367f5476902e0ee3cc862cf5fd8ab03a2382
BLAKE2b-256 checksum
How to use checksums
e84de1ed0f46f75f2ee4ded277076db69bd9f6e5bf22f9444770fb15780302e5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.7.1

Security for swiftlint-runner 0.0.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.0.1 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page