washer

command module
v0.2.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 27, 2023 License: GPL-3.0 Imports: 8 Imported by: 0

README

🞉 Washer

⚠ Washer is still in early development. It might work, it might destroy your code! Only use it on code under version control.

Washer is a tool to run checks on a tree of files, e.g. a repository.

It can be used to run linters, formatters, static analysis, etc. on a whole project, both manually and automatically, e.g. by Git hooks or in CI.

For more information see the documentation.

graph LR
  W(Washer)

  subgraph Tools
  L1(Linter A) ; L2(Linter B) ; Fo(Formatter)
  end

  subgraph Files
  F1[File A] ; F2[File B] ; F3[File C]
  end

  L1 ---- W  ; L2 ---- W  ; Fo ---- W
  W  ---- F1 ; W  ---- F2 ; W  ---- F3

💾 Installation

go install gitlab.com/biffen/washer@latest

⌨ Usage

See Usage.

🏃 Quick Start

  1. Install Washer (see above)

  2. Create a file called washer.yaml in the root directory of your project with the following content:

    %YAML 1.1
    ---
    exclude:
        - '.*/'
    
    tools:
        yamllint:
            check:
                - yamllint
                - --format=parsable
            include:
                - '*.y{a,}ml'
                - content: '^%YAML\s+\d+(?:\.\d+)?'
    
  3. Run Washer (the example above also requires YAMLLint):

    washer
    
  4. Add more tools!

🪲 Bugs

Please report bugs here.

📜 License

Copyright © 2020, 2021, 2022 Theo Willows

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see https://www.gnu.org/licenses/.

Documentation

Overview

Package main contains the implementation of the Washer tool.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL