Skip to main content

Fortitude PyPI License Tests Clippy Docs DOI

Fortitude

A Fortran linter, inspired by (and built upon) Ruff. Written in Rust 🦀 and installable with Python 🐍.

Shows a bar chart with benchmark results.

Linting 72 files from the GS2 repo.

  • ⚡ Blazingly fast, up to hundreds of times faster than other open-source Fortran linters.
  • 🔧 Automatically fixes linter warnings.
  • 📈 Over 100 rules, with many more planned.
  • 📃 Multiple output formats, including SARIF and GitHub/GitLab CI.
  • 🤝 Follows community best practices.
  • 💪 Built on a robust tree-sitter parser.

Fortitude is developed by PlasmaFAIR, improving the sustainability of plasma science research software.

PlasmaFAIR logo

Table of Contents

For more detail, please see our documentation.

Installation

Fortitude is available as fortitude-lint on PyPI:

# With uv:
uv tool install fortitude-lint@latest

# With pip:
pip install fortitude-lint

Starting with version 0.7.0, Fortitude can be installed with our standalone installers:

# On macOS and Linux:
curl -LsSf https://github.com/PlasmaFAIR/fortitude/releases/latest/download/fortitude-installer.sh | sh

# On Windows:
powershell -c "irm https://github.com/PlasmaFAIR/fortitude/releases/latest/download/fortitude-installer.psi | iex"

It can also be installed as a pure Rust project:

git clone https://github.com/PlasmaFAIR/fortitude
cd fortitude
cargo install --path crates/fortitude

Fortitude can also be installed via other package managers

Usage

Fortitude can lint your whole project under the working directory using the check command:

fortitude check

You can also call check on individual files, globs, and directories. You can configure what extensions Fortitude searches for in directories with --file-extensions:

fortitude check --file-extensions=f90,fpp

By default, Fortitude will ignore files and directories in your .gitignore. This can be disabled by setting --no-respect-gitignore. Additional excludes can be set using --extend-exclude:

# Don't check in the `benchmarks/` and `tests/` directories.
fortitude check --extend-exclude=benchmarks,tests

You can select or ignore individual rules or whole groups with --select and --ignore:

# Just check for missing `implicit none`
fortitude check --select=C001
# Also check for missing `implicit none` in interfaces
fortitude check --select=C001,C002
# Ignore all styling rules
fortitude check --ignore=S
# Only check for style rules, but ignore superfluous implicit none
fortitude check --select=S --ignore=S201
# Rules and categories can also be referred to by name
fortitude check --select=style --ignore=superfluous-implicit-none

Use --output-format=concise to get shorter output:

$ fortitude check --output-format=concise
test.f90:2:1: C111 function not contained within (sub)module or program
test.f90:5:1: S061 end statement should read 'end function double'
test.f90:7:1: C111 subroutine not contained within (sub)module or program
test.f90:8:3: C022 real has implicit kind

Use -o (or --output-file) to write the output to a file instead of printing it to the terminal. This can be combined with any --output-format:

# Write a concise report to `report.txt`
fortitude check --output-format=concise -o report.txt
# Write a SARIF report, for example to upload to GitHub code scanning
fortitude check --output-format=sarif --output-file=fortitude.sarif

The explain command can be used to get extra information about any rules:

# Print extra information for all rules
fortitude explain
# Only get information for selected rules
fortitude explain C001 C011
# Print information on all style rules
fortitude explain S
# Rules and categories can also be referred to by name
fortitude explain obsolescent superfluous-implicit-none

Use --summary to get a brief overview:

# Overview of all rules
fortitude explain --summary
# Overview of all style rules
fortitude explain style --summary

To see further commands and optional arguments, try using --help:

fortitude --help
fortitude check --help

Fixes

Fortitude can automatically fix some lint warnings, such as unnecessary implicit none statements, missing double-colons in variable declarations, and more. Just pass the --fix flag to check:

$ fortitude check --fix
fortitude: 1 files scanned.
Number of errors: 2 (2 fixed, 0 remaining)

Add --show-fixes to list each fix that was applied, grouped by file and rule:

$ fortitude check --fix --show-fixes
Fixed 1 error:
- test.f90:
    1 × S071 (missing-double-colon)

fortitude: 1 files scanned.
Number of diagnostics: 1 (1 fixed, 0 remaining)

Run fortitude explain to see which rules have fixes available.

Preview

Some fortitude rules are only available through an opt-in preview mode to give the community some time to evaluate them and provide feedback. To enable preview rules, pass the --preview flag to check,

$ fortitude check --preview

or to enable more permanently, set it in your fpm.toml:

[extra.fortitude.check]
preview = true

or fortitude.toml:

[check]
preview = true

Run fortitude explain to see which rules are in preview mode.

Configuration

Fortitude will look for either a fortitude.toml, .fortitude.toml, fpm.toml, or pyproject.toml file in the current directory, or one of its parents. If using fortitude.toml or .fortitude.toml, settings should be under the command name:

[check]
select = ["C", "E", "S"]
ignore = ["S001", "S082"]
line-length = 132
preview = true

For fpm.toml files, this has to be additionally nested under the extra.fortitude table:

[extra.fortitude.check]
select = ["C", "E", "S"]
ignore = ["S001", "S082"]
line-length = 132
preview = true

while pyproject.toml uses the tool.fortitude table:

[tool.fortitude.check]
select = ["C", "E", "S"]
ignore = ["S001", "S082"]
line-length = 132
preview = true

You can use --extend-select from the command line to select additional rules on top of those in the configuration file.

# Select correctness, error, style and obsolescent categories
fortitude check --extend-select=OB

A description of configuration options can be viewed using the config command:

# View all options under the 'check' heading
fortitude config check
# Get description of the 'extend-select' option
fortitude config check.extend-select

Editor Integration

Fortitude can be integrated into text editors and IDEs that support the Language Server Protocol (LSP), providing real-time diagnostics and code actions for applying fixes as you work.

Please see the documentation for details on setting this up for your editor.

We also have a VSCode plugin!.

pre-commit

Pre-commit hooks for Fortitude are available at fortitude-pre-commit.

Documentation

See table of rules for a list of all rules.

Contributing

Please feel free to add or suggest new rules and features! See CONTRIBUTING.md for a guide on contributing to the project. This also includes instructions for building the project from source, running tests, and linting/formatting the code. Please consult our code of conduct before contributing.

Projects Using Fortitude

More and more open-source Fortran projects are using Fortitude to help maintain their code, including:

Show Your Support

If you've found Fortitude useful in your project, please consider adding the Fortitude badge to your README.md:

[![Fortitude](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/PlasmaFAIR/fortitude/main/docs/assets/badge/v0.json)](https://github.com/PlasmaFAIR/fortitude)

or README.rst:

.. image:: https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/PlasmaFAIR/fortitude/main/docs/assets/badge/v0.json
    :target: https://github.com/PlasmaFAIR/fortitude
    :alt: Fortitude

or, as HTML:

<a href="https://github.com/PlasmaFAIR/fortitude"><img src="https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/PlasmaFAIR/fortitude/main/docs/assets/badge/v0.json" alt="Fortitude" style="max-width:100%;"></a>

License

This work is distributed under the MIT License. See LICENSE for more information.

Fortitude is inspired by, and uses parts from ruff, used under the MIT licence. See LICENSE for more information.

Metadata

Release files for fortitude-lint 0.10.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 fortitude-lint 0.10.0
File Size Uploaded Provenance Actions
fortitude_lint-0.10.0.tar.gz 396.2 kB Without provenance Details for fortitude_lint-0.10.0.tar.gz

Built distributions (wheels)

Table of built distributions (wheels) for fortitude-lint 0.10.0
File Actions
fortitude_lint-0.10.0-py3-none-win_arm64.whl Python 3 none Windows ARM64 Details for fortitude_lint-0.10.0-py3-none-win_arm64.whl
fortitude_lint-0.10.0-py3-none-win_amd64.whl Python 3 none Windows x86-64 Details for fortitude_lint-0.10.0-py3-none-win_amd64.whl
fortitude_lint-0.10.0-py3-none-win32.whl Python 3 none Windows x86-32 Details for fortitude_lint-0.10.0-py3-none-win32.whl
fortitude_lint-0.10.0-py3-none-musllinux_1_2_x86_64.whl Python 3 none Linux musl 1.2+ x86-64 Details for fortitude_lint-0.10.0-py3-none-musllinux_1_2_x86_64.whl
fortitude_lint-0.10.0-py3-none-musllinux_1_2_i686.whl Python 3 none Linux musl 1.2+ x86-32 Details for fortitude_lint-0.10.0-py3-none-musllinux_1_2_i686.whl
fortitude_lint-0.10.0-py3-none-musllinux_1_2_armv7l.whl Python 3 none Linux musl 1.2+ ARMv7l Details for fortitude_lint-0.10.0-py3-none-musllinux_1_2_armv7l.whl
fortitude_lint-0.10.0-py3-none-musllinux_1_2_aarch64.whl Python 3 none Linux musl 1.2+ ARM64 Details for fortitude_lint-0.10.0-py3-none-musllinux_1_2_aarch64.whl
fortitude_lint-0.10.0-py3-none-manylinux_2_28_x86_64.whl Python 3 none Linux glibc 2.28+ x86-64 Details for fortitude_lint-0.10.0-py3-none-manylinux_2_28_x86_64.whl
fortitude_lint-0.10.0-py3-none-manylinux_2_28_s390x.whl Python 3 none Linux glibc 2.28+ IBM System/390x Details for fortitude_lint-0.10.0-py3-none-manylinux_2_28_s390x.whl
fortitude_lint-0.10.0-py3-none-manylinux_2_28_ppc64le.whl Python 3 none Linux glibc 2.28+ PowerPC 64-le Details for fortitude_lint-0.10.0-py3-none-manylinux_2_28_ppc64le.whl
fortitude_lint-0.10.0-py3-none-manylinux_2_28_i686.whl Python 3 none Linux glibc 2.28+ x86-32 Details for fortitude_lint-0.10.0-py3-none-manylinux_2_28_i686.whl
fortitude_lint-0.10.0-py3-none-manylinux_2_28_armv7l.whl Python 3 none Linux glibc 2.28+ ARMv7l Details for fortitude_lint-0.10.0-py3-none-manylinux_2_28_armv7l.whl
fortitude_lint-0.10.0-py3-none-manylinux_2_28_aarch64.whl Python 3 none Linux glibc 2.28+ ARM64 Details for fortitude_lint-0.10.0-py3-none-manylinux_2_28_aarch64.whl
fortitude_lint-0.10.0-py3-none-macosx_11_0_arm64.whl Python 3 none macOS 11.0+ ARM64 Details for fortitude_lint-0.10.0-py3-none-macosx_11_0_arm64.whl
fortitude_lint-0.10.0-py3-none-macosx_10_12_x86_64.whl Python 3 none macOS 10.12+ x86-64 Details for fortitude_lint-0.10.0-py3-none-macosx_10_12_x86_64.whl

Total release size: 76.8 MB

Release files / fortitude_lint-0.10.0.tar.gz

Download URL fortitude_lint-0.10.0.tar.gz
Size 396.2 kB
Tags Source
SHA-256 checksum
How to use checksums
0e7fa2d962ceb8c306c7eba27b27c62e5156784c4e999c4f5bc48d1bc5a0ee9c
BLAKE2b-256 checksum
How to use checksums
5b4117d373b62713617f13dd73d9cf4fd3f841c425dc16060fc841d371db3905
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.5 {"installer":{"name":"uv","version":"0.13.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / fortitude_lint-0.10.0-py3-none-win_arm64.whl

Download URL fortitude_lint-0.10.0-py3-none-win_arm64.whl
Size 5.0 MB
Tags Python 3 Windows ARM64
SHA-256 checksum
How to use checksums
1765aa1502cee082a2499a6cc89af8cabb5d41c3c9d433ccd312dac0626a2227
BLAKE2b-256 checksum
How to use checksums
263aaf485c0389bcd47840b4a1d050ca615b5a638186d06bb87b9f51715f7f07
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.5 {"installer":{"name":"uv","version":"0.13.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / fortitude_lint-0.10.0-py3-none-win_amd64.whl

Download URL fortitude_lint-0.10.0-py3-none-win_amd64.whl
Size 5.3 MB
Tags Python 3 Windows x86-64
SHA-256 checksum
How to use checksums
e3b0fdebd7da73247345910433a86d47c482fcfef62a82738c01f6aa7cded838
BLAKE2b-256 checksum
How to use checksums
0c19f36b6e1dafb375ab777ab8ea4d00bcd5841ccf4cf9df77b2a998aff7c63c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.5 {"installer":{"name":"uv","version":"0.13.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / fortitude_lint-0.10.0-py3-none-win32.whl

Download URL fortitude_lint-0.10.0-py3-none-win32.whl
Size 4.8 MB
Tags Python 3 Windows x86-32
SHA-256 checksum
How to use checksums
3ad07350598e3391bab27a09f3b75a3b5f925299565921983b2f18ddce09b854
BLAKE2b-256 checksum
How to use checksums
3de8bc7e21ee1e4587ce42d628bfac7c3f386655df0e30d8738d1a98fd34dc29
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.5 {"installer":{"name":"uv","version":"0.13.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / fortitude_lint-0.10.0-py3-none-musllinux_1_2_x86_64.whl

Download URL fortitude_lint-0.10.0-py3-none-musllinux_1_2_x86_64.whl
Size 5.3 MB
Tags Linux musl 1.2+ x86-64 Python 3
SHA-256 checksum
How to use checksums
5a7bf61643631a8146164d5ef3aa34004ae70d9a0560c235c898371d8ae54441
BLAKE2b-256 checksum
How to use checksums
86a58a42e56768ad053e9caed76b02599c02d44f5983b80bedd15a451a55a3db
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.5 {"installer":{"name":"uv","version":"0.13.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / fortitude_lint-0.10.0-py3-none-musllinux_1_2_i686.whl

Download URL fortitude_lint-0.10.0-py3-none-musllinux_1_2_i686.whl
Size 5.3 MB
Tags Linux musl 1.2+ x86-32 Python 3
SHA-256 checksum
How to use checksums
018acf18be7a233a2619331c4fbbe03af3424cbd736ff73468fd3f00744f09d7
BLAKE2b-256 checksum
How to use checksums
eafc2891621ec31555c57a6467cf38daa0b0a8da1559af5541560111da19ab81
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.5 {"installer":{"name":"uv","version":"0.13.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / fortitude_lint-0.10.0-py3-none-musllinux_1_2_armv7l.whl

Download URL fortitude_lint-0.10.0-py3-none-musllinux_1_2_armv7l.whl
Size 4.7 MB
Tags Linux musl 1.2+ ARMv7l Python 3
SHA-256 checksum
How to use checksums
7446db6b1ac8ae51c2302cec2b0b7074ecf7eabc33cafa344a4a596a7acb54fe
BLAKE2b-256 checksum
How to use checksums
2fb12e415b63e0a969bd44b1cf2c55e51103a2cfff83fe87135b09cb8f0da719
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.5 {"installer":{"name":"uv","version":"0.13.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / fortitude_lint-0.10.0-py3-none-musllinux_1_2_aarch64.whl

Download URL fortitude_lint-0.10.0-py3-none-musllinux_1_2_aarch64.whl
Size 4.9 MB
Tags Linux musl 1.2+ ARM64 Python 3
SHA-256 checksum
How to use checksums
8bb5554904ec151d77730ad27fd029c36e8ae455a796277b5175913e7e1b9c8b
BLAKE2b-256 checksum
How to use checksums
02981b0941e2ca36621fd68b552da22c42c1d08f3fda081c7fff400158513b9f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.5 {"installer":{"name":"uv","version":"0.13.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / fortitude_lint-0.10.0-py3-none-manylinux_2_28_x86_64.whl

Download URL fortitude_lint-0.10.0-py3-none-manylinux_2_28_x86_64.whl
Size 5.2 MB
Tags Linux glibc 2.28+ x86-64 Python 3
SHA-256 checksum
How to use checksums
f8c34926a001b50314f4796736bc69b15f7b0719a637a09fc6ed11e7257a9162
BLAKE2b-256 checksum
How to use checksums
00c2891ac3a5141066fd97672956ad0ab4143c9077b7ab0757c272537c47d5cd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.5 {"installer":{"name":"uv","version":"0.13.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / fortitude_lint-0.10.0-py3-none-manylinux_2_28_s390x.whl

Download URL fortitude_lint-0.10.0-py3-none-manylinux_2_28_s390x.whl
Size 5.2 MB
Tags Linux glibc 2.28+ IBM System/390x Python 3
SHA-256 checksum
How to use checksums
75b6091dd90bf1c12987416894ceb90bc3bd7cf10fa2e0940ffcb860ea2d714e
BLAKE2b-256 checksum
How to use checksums
d731e39ae9035f0715857733b9e6fe89b373500f7d01e56aaee1fc3c2814e922
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.5 {"installer":{"name":"uv","version":"0.13.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / fortitude_lint-0.10.0-py3-none-manylinux_2_28_ppc64le.whl

Download URL fortitude_lint-0.10.0-py3-none-manylinux_2_28_ppc64le.whl
Size 5.8 MB
Tags Linux glibc 2.28+ PowerPC 64-le Python 3
SHA-256 checksum
How to use checksums
773da4dac79412087165f6f0dfc16812d3f8d1a2b780bde35cce0ed49ee9a64e
BLAKE2b-256 checksum
How to use checksums
d499a3bd4366e71dc7fe3d44385b62b1d973173d5176b887886dfe1f677ca3a6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.5 {"installer":{"name":"uv","version":"0.13.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / fortitude_lint-0.10.0-py3-none-manylinux_2_28_i686.whl

Download URL fortitude_lint-0.10.0-py3-none-manylinux_2_28_i686.whl
Size 5.5 MB
Tags Linux glibc 2.28+ x86-32 Python 3
SHA-256 checksum
How to use checksums
bfabeeeb2bec784b39085f10076917e335bbe31d56dc7292dcbf8c8d2c2a0cde
BLAKE2b-256 checksum
How to use checksums
1e183423206baca3f1286d9de41b2146902ecab75767a89cec81c9d533713e5a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.5 {"installer":{"name":"uv","version":"0.13.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / fortitude_lint-0.10.0-py3-none-manylinux_2_28_armv7l.whl

Download URL fortitude_lint-0.10.0-py3-none-manylinux_2_28_armv7l.whl
Size 4.7 MB
Tags Linux glibc 2.28+ ARMv7l Python 3
SHA-256 checksum
How to use checksums
2c6ae9378e77229893719112e97b91875bc442d7b7c707584804716be606516c
BLAKE2b-256 checksum
How to use checksums
ada4cae207c2f37355ebaf9db8e2d888ea43deae049b799bdae5acfe57ec706e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.5 {"installer":{"name":"uv","version":"0.13.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / fortitude_lint-0.10.0-py3-none-manylinux_2_28_aarch64.whl

Download URL fortitude_lint-0.10.0-py3-none-manylinux_2_28_aarch64.whl
Size 4.9 MB
Tags Linux glibc 2.28+ ARM64 Python 3
SHA-256 checksum
How to use checksums
a5bf590af72633e20cbe9afda53de632afc5e7aae7cdcc620ffcfdd2d3f34a7d
BLAKE2b-256 checksum
How to use checksums
7e70182ee7319cb4b3aab0d75a0e8f289389bdd728d003b7e80542952c979157
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.5 {"installer":{"name":"uv","version":"0.13.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / fortitude_lint-0.10.0-py3-none-macosx_11_0_arm64.whl

Download URL fortitude_lint-0.10.0-py3-none-macosx_11_0_arm64.whl
Size 4.8 MB
Tags Python 3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
01a33a2ca12ebd7c22b04292980d9035f59d977a9e67b12eb3c328d36dc56cb8
BLAKE2b-256 checksum
How to use checksums
d1cbd76b8366dd40b9f61f2488063ac0f621c676d2205873e0c0984d1a1398ac
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.5 {"installer":{"name":"uv","version":"0.13.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / fortitude_lint-0.10.0-py3-none-macosx_10_12_x86_64.whl

Download URL fortitude_lint-0.10.0-py3-none-macosx_10_12_x86_64.whl
Size 4.9 MB
Tags Python 3 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
5fd317c5be76f27e722fd3d33734c47e8cf3d42917811019a08c2a5678eb564b
BLAKE2b-256 checksum
How to use checksums
bf9a9766760f390a1058bce10a74d8db5527488e083f065770f30e54d953a1f8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.5 {"installer":{"name":"uv","version":"0.13.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Security for fortitude-lint 0.10.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.

No provenance found

None of the files in this release were uploaded with provenance metadata.

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.

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