cpplint

Static code checker for C++

https://github.com/cpplint/cpplint

Science Score: 36.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
    5 of 161 committers (3.1%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (11.3%) to scientific vocabulary

Keywords

cpp lint linter

Keywords from Contributors

distributed flexible alignment unit-testing arrow closember qt deep-neural-networks python2 reproducibility
Last synced: 6 months ago · JSON representation

Repository

Static code checker for C++

Basic Info
  • Host: GitHub
  • Owner: cpplint
  • License: other
  • Language: Python
  • Default Branch: develop
  • Homepage:
  • Size: 4.37 MB
Statistics
  • Stars: 1,735
  • Watchers: 35
  • Forks: 294
  • Open Issues: 69
  • Releases: 3
Topics
cpp lint linter
Created about 10 years ago · Last pushed 6 months ago
Metadata Files
Readme Changelog Contributing License

README.rst

#####################################
cpplint - static code checker for C++
#####################################

.. image:: https://img.shields.io/pypi/v/cpplint.svg
    :target: https://pypi.python.org/pypi/cpplint

.. image:: https://img.shields.io/pypi/pyversions/cpplint.svg
    :target: https://pypi.python.org/pypi/cpplint

.. image:: https://img.shields.io/pypi/status/cpplint.svg
    :target: https://pypi.python.org/pypi/cpplint

.. image:: https://img.shields.io/pypi/l/cpplint.svg
    :target: https://pypi.python.org/pypi/cpplint

.. image:: https://img.shields.io/pypi/dd/cpplint.svg
    :target: https://pypi.python.org/pypi/cpplint

.. image:: https://img.shields.io/pypi/dw/cpplint.svg
    :target: https://pypi.python.org/pypi/cpplint

.. image:: https://img.shields.io/pypi/dm/cpplint.svg
    :target: https://pypi.python.org/pypi/cpplint

Cpplint is a command-line tool to check C/C++ files for style issues according to `Google's C++ style guide `_.

Cpplint used to be developed and maintained by Google Inc. at `google/styleguide `_. Nowadays, `Google is no longer maintaining the public version of cpplint `_, and pretty much everything in their repo's PRs and issues about cpplint have gone unimplemented.

This fork aims to update cpplint to modern specifications, and be (somewhat) more open to adding fixes and features to make cpplint usable in wider contexts.


Installation
============

Use [`pipx`](https://pipx.pypa.io) to install cpplint from PyPI, run:

.. code-block:: bash

    $ pipx install cpplint

Usage
-----
.. code-block:: bash

    $ cpplint [OPTIONS] files

For full usage instructions, run:

.. code-block:: bash

    $ cpplint --help

cpplint can also be run as a pre-commit hook by adding to `.pre-commit-config.yaml`:

.. code-block:: yaml

  - repo: https://github.com/cpplint/cpplint
    rev: 2.0.0
    hooks:
      - id: cpplint
        args:
          - --filter=-whitespace/line_length,-whitespace/parens

Changes
=======

* python 3 compatibility
* more default file extensions
* customizable file extensions with the --extensions argument
* continuous integration on github
* support for recursive file discovery via the --recursive argument
* support for excluding files via --exclude
* JUnit XML output format
* Overriding repository root auto-detection via --repository
* Support ``#pragma once`` as an alternative to header include guards
* ... and `quite a bit `_ more

Acknowledgements
================

Thanks to Google Inc. for open-sourcing their in-house tool.

Thanks to `our contributors `_.

Maintainers
-----------

* `@aaronliu0130 `_
* `@jayvdb `_

Former
^^^^^^

* `@tkruse `_
* `@mattyclarkson `_
* `@theandrewdavis `_

Owner

  • Name: cpplint
  • Login: cpplint
  • Kind: organization

GitHub Events

Total
  • Create event: 52
  • Release event: 2
  • Issues event: 40
  • Watch event: 160
  • Delete event: 50
  • Issue comment event: 185
  • Push event: 187
  • Pull request review comment event: 150
  • Pull request event: 136
  • Pull request review event: 211
  • Fork event: 22
Last Year
  • Create event: 52
  • Release event: 2
  • Issues event: 40
  • Watch event: 160
  • Delete event: 50
  • Issue comment event: 185
  • Push event: 187
  • Pull request review comment event: 150
  • Pull request event: 136
  • Pull request review event: 211
  • Fork event: 22

Committers

Last synced: 9 months ago

All Time
  • Total Commits: 831
  • Total Committers: 161
  • Avg Commits per committer: 5.161
  • Development Distribution Score (DDS): 0.832
Past Year
  • Commits: 74
  • Committers: 13
  • Avg Commits per committer: 5.692
  • Development Distribution Score (DDS): 0.568
Top Committers
Name Email Commits
Thibault Kruse t****e@g****e 140
Andrew Davis t****s@g****m 75
Aaron Liu a****0@g****m 73
Christian Clauss c****s@m****m 38
Google Python team n****y@g****m 37
erg@google.com e****g@g****m@9****0 37
Matt Clarkson m****n@g****m 25
mmentovai m****i@9****0 22
Tony Ruscoe t****e@g****m 20
Isaac Good g****i@g****m 15
tunes@google.com t****s@g****m@9****0 11
Igor Murashkin i****m@g****m 10
mark@chromium.org m****k@c****g@9****0 9
Daniel Cheng d****g@c****g 9
samantharachelcook s****k@9****0 8
cclauss c****s@b****h 8
John Vandenberg j****b@g****m 7
Gaal Yahas g****l@g****m 6
LukeCz l****k@g****m 6
Elliot Glaysher g****r@u****u 6
Geoffrey Viola g****a 6
James Lamb j****0@g****m 6
Liam Miller-Cushon c****n@g****m 6
Victor Costan p****l@c****g 5
Mark Mentovai m****k@c****g 5
Piotr Semenov p****v@g****m 5
Stephane Moore s****e@g****m 5
naomib@google.com n****b@g****m@9****0 5
mshields@google.com m****s@g****m@9****0 5
avakulenko@google.com a****o@g****m@9****0 5
and 131 more...

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 100
  • Total pull requests: 300
  • Average time to close issues: over 1 year
  • Average time to close pull requests: 4 months
  • Total issue authors: 72
  • Total pull request authors: 57
  • Average comments per issue: 2.67
  • Average comments per pull request: 1.76
  • Merged pull requests: 204
  • Bot issues: 0
  • Bot pull requests: 12
Past Year
  • Issues: 21
  • Pull requests: 150
  • Average time to close issues: 11 days
  • Average time to close pull requests: 8 days
  • Issue authors: 17
  • Pull request authors: 12
  • Average comments per issue: 0.62
  • Average comments per pull request: 1.65
  • Merged pull requests: 103
  • Bot issues: 0
  • Bot pull requests: 12
Top Authors
Issue Authors
  • geoffviola (6)
  • aaronliu0130 (6)
  • alejandro-colomar (5)
  • cclauss (4)
  • nickhuangxinyu (3)
  • mcandre (3)
  • Bouncner (2)
  • mattyclarkson (2)
  • crogre (2)
  • ptomato (2)
  • Yujinmon (2)
  • MoFHeka (2)
  • matyalatte (2)
  • jblueberry (1)
  • jayvdb (1)
Pull Request Authors
  • cclauss (77)
  • aaronliu0130 (65)
  • tkruse (22)
  • norab0130 (20)
  • geoffviola (12)
  • jayvdb (12)
  • pre-commit-ci[bot] (10)
  • ember91 (4)
  • armandas (3)
  • n3world (3)
  • nvuillam (3)
  • vapier (2)
  • Hs293Go (2)
  • thibaudeau-irt (2)
  • nate-thirdwave (2)
Top Labels
Issue Labels
bug (10) enhancement (8) question (1)
Pull Request Labels
tests (6) enhancement (2) docs (2) dependencies (2) github_actions (2)

Packages

  • Total packages: 4
  • Total downloads:
    • pypi 320,393 last-month
  • Total docker downloads: 950,723
  • Total dependent packages: 23
    (may contain duplicates)
  • Total dependent repositories: 359
    (may contain duplicates)
  • Total versions: 52
  • Total maintainers: 5
pypi.org: cpplint

Check C++ files configurably against Google's style guide

  • Versions: 33
  • Dependent Packages: 23
  • Dependent Repositories: 341
  • Downloads: 320,393 Last month
  • Docker Downloads: 950,723
Rankings
Dependent packages count: 0.6%
Docker downloads count: 0.6%
Downloads: 0.7%
Dependent repos count: 0.8%
Average: 1.3%
Stargazers count: 1.8%
Forks count: 3.2%
Last synced: 11 months ago
alpine-edge: cpplint-pyc

Precompiled Python bytecode for cpplint

  • Versions: 6
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent repos count: 0.0%
Forks count: 7.2%
Average: 7.4%
Stargazers count: 8.7%
Dependent packages count: 13.9%
Maintainers (1)
Last synced: 6 months ago
alpine-edge: cpplint

Static code checker for C++

  • Versions: 7
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent repos count: 0.0%
Forks count: 6.9%
Average: 7.5%
Stargazers count: 8.5%
Dependent packages count: 14.6%
Maintainers (1)
Last synced: 6 months ago
conda-forge.org: cpplint

Cpplint is a command-line tool to check C/C++ files for style issues following Google's C++ style guide. Cpplint is developed and maintained by Google Inc. at google/styleguide, also see see the wikipedia entry. While Google maintains cpplint, Google is not (very) responsive to issues and pull requests, this fork aims to be (somewhat) more open to add fixes to cpplint to enable fixes, when those fixes make cpplint usable in wider contexts.

  • Versions: 6
  • Dependent Packages: 0
  • Dependent Repositories: 18
Rankings
Dependent repos count: 8.4%
Forks count: 11.3%
Stargazers count: 11.3%
Average: 20.6%
Dependent packages count: 51.6%
Last synced: 6 months ago

Dependencies

.github/workflows/ci.yml actions
  • actions/checkout v2 composite
  • actions/setup-python v2 composite
.github/workflows/release.yml actions
  • actions/checkout v4 composite
  • actions/download-artifact v4 composite
  • actions/setup-python v5 composite
  • actions/upload-artifact v4 composite
  • pypa/gh-action-pypi-publish release/v1 composite
  • sigstore/gh-action-sigstore-python v3.0.0 composite
pyproject.toml pypi