New Issue Checklist

New rule request

Why should this rule be added? Share links to existing discussion about what
the community thinks about this.
> Leftover logs in production can cause security breaches in any app. Also, logging to the console has performance drawbacks on iOS.

Provide several examples of what would and wouldn't trigger violations.
> Any calls to print, debugPrint or dump would trigger a warning violation.

Should the rule be configurable, if so what parameters should be configurable?
> I cannot think of anything that should be configurable at this moment.

Should the rule be opt-in or enabled by default? Why?
See README.md for guidelines on when to mark a rule as opt-in.
> Considering how it could pose as a security violation, I do believe no-print should be enabled by default.

If this RFC is approved, I'm more than happy to work on it and open a PR.

This rule should contain a limited number of common shell commands, such as those listed above. We can add more over time. Configuration for this rule should be able to customize which of these command patterns is relevant to the user's Swift project.

As a security concern, this rule can reasonably become a default rule, as shelling out introduces additional security risks, including shell injections, compared to sticking to pure Swift code.

I would be happy to see this rule be included in Swift's available suite of checks, and if we find we're happy to apply it in a lot of places, then we can always turn it on by default later.

New Issue Checklist

Describe the bug

The behaviour of the rule validation is either defined wrong or undefined for the situation when functions are chained without line breaking, whereas arguments in some functions have line breaks.
For example:
object.func1(arg1: value1,
arg2: value2).func2()
will generate a warning, whilst it shouldn't, in my opinion.