Skip to main content

Lintr

image image image

A powerful and flexible GitHub repository settings linter.

Demo Animation

Highlights

  • ✅ Enforces consistent repository configurations.
  • 🔒 Monitors key repository settings against predefined rules.
  • 🛡️ Helps mitigate security issues.
  • ⚙️ Streamlines repository management.
  • 🤖 Automates checks for repository hygiene.

Installation

Install Lintr from PyPI.

# Using pip.
pip install lintr
# Using pipx.
pipx install lintr
# Using uv.
uv install lintr

After installation, run Lintr via the lintr command. The command line reference documentation can be viewed with lintr help. You can also invoke Lintr by running the lintr module as a script through the Python interpreter, python -m lintr ....

Features

Command-line Interface (CLI)

Operate Lintr effortlessly through its CLI. Whether it’s linting all your repositories, listing available rules, or initializing a configuration file, every task can be performed with simple commands.

Pre-defined Rules

tba

Rule Sets

Lintr comes with pre-built rule sets covering a wide range of repository configurations, including branch policies, permissions, issue settings, and more.

Automatic Fixes

For many common issues, Lintr not only detects problems but can also automatically apply fixes. This is especially useful in large environments where manual interventions might be too time-consuming.

Customizability

Every project is unique. Configure Lintr with repository-specific rules and settings as needed.

Detailed Output and Reporting

Get clear and concise feedback about each check, including colorized status symbols and descriptive messages. This clarity helps you quickly identify and address any problems.

Purpose of Lintr

Lintr was built with the aim of streamlining repository management by automatically linting various aspects of a repository’s configuration. At its core, the tool monitors key repository settings and compares them against a set of predefined rules – from branch naming conventions to GitHub permission configurations. Here’s why Lintr exists:

• Addressing Inconsistencies:
Many organizations face challenges due to inconsistent repository configurations, which can lead to fragmented practices and unexpected security issues. Lintr helps mitigate these issues by ensuring that every repository adheres to the desired guidelines.

• Automation and Efficiency:
Manual checks are tedious and error-prone. With Lintr, you can automate the process of verifying repository settings, which not only saves time but also reduces the risk of human error.

• Extensibility:
Lintr is designed to be highly extensible. Not only does it come with a set of core rules, but it also allows you to create and register custom rules tailored to your organization’s specific needs.

• Improved Repository Health:
By catching configuration deviations early, Lintr helps maintain an overall healthy repository environment. This proactive monitoring can prevent potential security oversights and streamline your development workflow.

Who Should Use Lintr?

Lintr is aimed primarily at those who manage or contribute to multiple GitHub repositories and wish to enforce a uniform standard across them. Its flexibility and robust feature set make it ideal for:

• Repository Maintainers:
Ensure that every repository under your stewardship adheres to consistent configuration standards. Lintr helps catch misconfigurations before they cause issues.

• DevOps Engineers:
Integrate Lintr into your CI/CD pipelines to automate the process of repository configuration validation. This guarantees that your deployment environments meet the necessary guidelines.

• Developers Interested in Automation:
If you love automation and want your development process to be as robust as possible, Lintr offers automated linting that can save countless hours and reduce manual oversight.

Quick Demo

For a glimpse of Lintr in action, imagine running a single command that inspects all your repositories, reports discrepancies, and even fixes several common issues automatically. In one terminal session, you could see output much like the following:

  ✓ repository-name: Repository has default branch set correctly
  ✗ repository-name: Merge commits are disabled (fix available)
  ℹ Would apply fix – run with --fix to enable auto-fixes

Feel free to include a screenshot or animated GIF of your terminal running Lintr to give newcomers an immediate visual impression of its capabilities.

────────────────────────────

By automating repository configuration audits, Lintr helps you maintain a high standard of consistency and operational excellence across your projects. Whether you’re looking to enforce best practices, improve repository security, or simply reduce manual overhead, Lintr is designed with your needs in mind.

For more details on installation, configuration, and advanced usage, continue reading the subsequent sections in this documentation. Happy linting!

Metadata

Release files for lintr 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for lintr 0.2.0
File Size Uploaded Provenance Actions
lintr-0.2.0.tar.gz 46.9 kB With provenance Details for lintr-0.2.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for lintr 0.2.0
File Interpreter ABI Platform Actions
lintr-0.2.0-py3-none-any.whl Python 3 none any Details for lintr-0.2.0-py3-none-any.whl

Total release size: 76.3 kB

Release files / lintr-0.2.0.tar.gz

Download URL lintr-0.2.0.tar.gz
Size 46.9 kB
Tags Source
SHA-256 checksum
How to use checksums
c8251027fbf13dd06c64347a846e9b51f2a10a0d11bde8ae58c7e3af18201fec
BLAKE2b-256 checksum
How to use checksums
bee53451bd5f57d0d44d2bad4927827262d2c0de5993f95597a2663efbf2534b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.9

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Feb 28, 2025.

Transparency log

Release files / lintr-0.2.0-py3-none-any.whl

Download URL lintr-0.2.0-py3-none-any.whl
Size 29.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
7fa3ee61623efb3a2ec4c54f84020a3d2adbed29bfef0509a6046d25eceb22a2
BLAKE2b-256 checksum
How to use checksums
c5c0a11bfaa1d63649823af1a963019d704a96f912b2c80a8f50bccdc5ec680f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.9

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Feb 28, 2025.

Transparency log

Security for lintr 0.2.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for lintr-0.2.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Feb 28, 2025.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.2.0 This release

2 release files Full provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page