Skip to content

Xcode 11 build time optimization: Emit dependency file during run script phase  #2783

Description

@rounak

New Issue Checklist

New enhancement request

I was looking through Xcode 11's release notes, and came across this under the build section:

Run script phases and custom build rules may declare and emit a dependencies file, in the Makefile-style .d format output used by some compilers and build tools. The build system checks the files listed for changes during subsequent builds when determining if the rule or phase should be executed. (49226986)

Xcode + SwiftLint integration is done through a run script phase, and it seems like this integration could benefit from this optimization opportunity. I think SwiftLint already does some caching under the hood, so in the ideal case, it emits a representation of that cache in a ".d" output to avoid running SwiftLint again for an unchanged project.

Caveat: I'm not intimately familiar with the inner workings of SwiftLint, so I apologize if this integration is not practical. Thanks to all the contributors for their hard work on making SwiftLint such a useful tool!

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementIdeas for improvements of existing features and rules.wontfixIssues that became stale and were auto-closed by a bot.

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions