github.com/googleapis/api-linter@v1.65.2/README.md (about)

     1  # Google API Linter
     2  
     3  [![ci](https://github.com/googleapis/api-linter/actions/workflows/ci.yaml/badge.svg)](https://github.com/googleapis/api-linter/actions/workflows/ci.yaml)
     4  ![latest release](https://img.shields.io/github/v/release/googleapis/api-linter)
     5  ![go version](https://img.shields.io/github/go-mod/go-version/googleapis/api-linter)
     6  
     7  The API linter provides real-time checks for compliance with many of Google's
     8  API standards, documented using [API Improvement Proposals][]. It operates on
     9  API surfaces defined in [protocol buffers][].
    10  
    11  It identifies common mistakes and inconsistencies in API surfaces:
    12  
    13  ```proto
    14  // Incorrect.
    15  message GetBookRequest {
    16    // This is wrong; it should be spelled `name`.
    17    string book = 1;
    18  }
    19  ```
    20  
    21  When able, it also offers a suggestion for the correct fix.
    22  
    23  [_Read more ≫_](https://linter.aip.dev/)
    24  
    25  ## Versioning
    26  
    27  The Google API linter does **not** follow semantic versioning. Semantic
    28  versioning is challenging for a tool like a linter because the addition or
    29  correction of virtually any rule is "breaking" (in the sense that a file that
    30  previously reported no problems may now do so).
    31  
    32  Therefore, the version numbers refer to the linter's core interface. In
    33  general:
    34  
    35  - Releases with only documentation, chores, dependency upgrades, and/or
    36    bugfixes are patch releases.
    37  - Releases with new rules (or potentially removed rules) are minor releases.
    38  - Releases with core interface alterations are major releases. This could
    39    include changes to the internal Go interface or the CLI user interface.
    40  
    41  **Note:** Releases that increment the Go version will be considered minor.
    42  
    43  This is an attempt to follow the spirit of semantic versioning while still
    44  being useful.
    45  
    46  ## Contributing
    47  
    48  If you are interested in contributing to the API linter, please review the [contributing guide](https://linter.aip.dev/contributing) to learn more.
    49  
    50  ## License
    51  
    52  This software is made available under the [Apache 2.0][] license.
    53  
    54  [apache 2.0]: https://www.apache.org/licenses/LICENSE-2.0
    55  [api improvement proposals]: https://aip.dev/
    56  [protocol buffers]: https://developers.google.com/protocol-buffers
    57  [rule documentation]: ./rules/index.md