Skip to content

Instantly share code, notes, and snippets.

@ppave
Created January 19, 2021 09:45
Show Gist options
  • Select an option

  • Save ppave/a1500d03a2fa4202ba91b0692aa97ce9 to your computer and use it in GitHub Desktop.

Select an option

Save ppave/a1500d03a2fa4202ba91b0692aa97ce9 to your computer and use it in GitHub Desktop.

Revisions

  1. ppave created this gist Jan 19, 2021.
    106 changes: 106 additions & 0 deletions com.raywenderlich.swiftlint.yml
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,106 @@
    excluded:
    - Carthage
    - Pods
    - DerivedData

    disabled_rules:
    - discarded_notification_center_observer
    - notification_center_detachment
    - orphaned_doc_comment
    - todo
    - unused_capture_list

    opt_in_rules:
    - array_init
    - attributes
    - closure_end_indentation
    - closure_spacing
    - collection_alignment
    - colon # promote to error
    - convenience_type
    - discouraged_object_literal
    - empty_collection_literal
    - empty_count
    - empty_string
    - enum_case_associated_values_count
    - fatal_error_message
    - first_where
    - force_unwrapping
    - implicitly_unwrapped_optional
    - indentation_width
    - last_where
    - legacy_random
    - literal_expression_end_indentation
    - multiline_arguments
    - multiline_function_chains
    - multiline_literal_brackets
    - multiline_parameters
    - multiline_parameters_brackets
    - operator_usage_whitespace
    - overridden_super_call
    - pattern_matching_keywords
    - prefer_self_type_over_type_of_self
    - redundant_nil_coalescing
    - redundant_type_annotation
    - strict_fileprivate
    - toggle_bool
    - trailing_closure
    - unneeded_parentheses_in_closure_argument
    - unused_import
    - vertical_whitespace_closing_braces
    - vertical_whitespace_opening_braces
    - yoda_condition


    custom_rules:
    array_constructor:
    name: "Array/Dictionary initializer"
    regex: '[let,var] .+ = (\[.+\]\(\))'
    capture_group: 1
    message: "Use explicit type annotation when initializing empty arrays and dictionaries"
    severity: warning


    attributes:
    always_on_same_line:
    - "@IBSegueAction"
    - "@IBAction"
    - "@NSManaged"
    - "@objc"

    force_cast: warning
    force_try: warning
    function_body_length:
    warning: 60

    legacy_hashing: error

    identifier_name:
    excluded:
    - i
    - id
    - x
    - y
    - z

    indentation_width:
    indentation_width: 2

    line_length:
    ignores_urls: true
    ignores_function_declarations: true
    ignores_comments: true

    multiline_arguments:
    first_argument_location: next_line
    only_enforce_after_first_closure_on_first_line: true

    private_over_fileprivate:
    validate_extensions: true

    trailing_whitespace:
    ignores_empty_lines: false
    ignores_comments: true

    vertical_whitespace:
    max_empty_lines: 2