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.1

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.1
File Size Uploaded Provenance Actions
fortitude_lint-0.10.1.tar.gz 405.8 kB Without provenance Details for fortitude_lint-0.10.1.tar.gz

Built distributions (wheels)

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

Total release size: 77.2 MB

Release files / fortitude_lint-0.10.1.tar.gz

Download URL fortitude_lint-0.10.1.tar.gz
Size 405.8 kB
Tags Source
SHA-256 checksum
How to use checksums
dbd8046811545558f5d6a6c206131c5bac42762f48ce4bfb35900cd484ee5af0
BLAKE2b-256 checksum
How to use checksums
c23661efdbde966fc76151a30a30ea3ba622dcb63219f358ebd896a9e7990b5d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.6 {"installer":{"name":"uv","version":"0.13.6","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.1-py3-none-win_arm64.whl

Download URL fortitude_lint-0.10.1-py3-none-win_arm64.whl
Size 5.0 MB
Tags Python 3 Windows ARM64
SHA-256 checksum
How to use checksums
4d517678aec0965973e0c5df92f3a54f3a0216a7e2bb1efc38681b8995c829dc
BLAKE2b-256 checksum
How to use checksums
95bf290dda560d5d8abf50f6af9f2a40df10aa6dfff21aae445c83da649e5323
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.6 {"installer":{"name":"uv","version":"0.13.6","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.1-py3-none-win_amd64.whl

Download URL fortitude_lint-0.10.1-py3-none-win_amd64.whl
Size 5.4 MB
Tags Python 3 Windows x86-64
SHA-256 checksum
How to use checksums
da64bfc8f838ccb59aea38ccf714b56dbadcde94f01f0b8d859e57bc01c6e016
BLAKE2b-256 checksum
How to use checksums
32fb13b5e4c3bea4367cf998238e7a49546d662e5ca725616b1f80acd63b9ad3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.6 {"installer":{"name":"uv","version":"0.13.6","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.1-py3-none-win32.whl

Download URL fortitude_lint-0.10.1-py3-none-win32.whl
Size 4.8 MB
Tags Python 3 Windows x86-32
SHA-256 checksum
How to use checksums
fbf8dcfc5992decfdf5cd33dc6ac91e2c0d96665ac26de5ee79cb6a54eb80c2a
BLAKE2b-256 checksum
How to use checksums
59927ccde795590356b8f046daecf21827da2b60b96a72980359d6af6210568f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.6 {"installer":{"name":"uv","version":"0.13.6","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.1-py3-none-musllinux_1_2_x86_64.whl

Download URL fortitude_lint-0.10.1-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
4db97041d44c146bf50927bb1c4375d24109370269bbf411724ef7b7c52b0dec
BLAKE2b-256 checksum
How to use checksums
80b1527658ebd840377919ad063b233f9efe24cc86a8d319f6197ac82ac8109e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.6 {"installer":{"name":"uv","version":"0.13.6","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.1-py3-none-musllinux_1_2_i686.whl

Download URL fortitude_lint-0.10.1-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
f74d7694b85c14ce1efaa4278761fb07c67e693886e2bb25b4eed6ad3256434b
BLAKE2b-256 checksum
How to use checksums
5afcd3b07176ab4729e837df2af4c429a4b01199a5b60902bca0feebbb61bd41
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.6 {"installer":{"name":"uv","version":"0.13.6","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.1-py3-none-musllinux_1_2_armv7l.whl

Download URL fortitude_lint-0.10.1-py3-none-musllinux_1_2_armv7l.whl
Size 4.8 MB
Tags Linux musl 1.2+ ARMv7l Python 3
SHA-256 checksum
How to use checksums
3f83a3a8ec538c7b90c133983fa403f5d4f105056a3dd5361a86a81e8668b9e7
BLAKE2b-256 checksum
How to use checksums
9c99af5584cea877ca30812a4d223004657a4564afaf743cf2353a8386ba68b5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.6 {"installer":{"name":"uv","version":"0.13.6","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.1-py3-none-musllinux_1_2_aarch64.whl

Download URL fortitude_lint-0.10.1-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
f61d7c5278636bf010d21bcda04d4e189b81efae99a647e067c248fcbf7e27e5
BLAKE2b-256 checksum
How to use checksums
bcc5f3cbff834bf246a6eaaf8892135d0257473fca9d4e3fea8af13499041035
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.6 {"installer":{"name":"uv","version":"0.13.6","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.1-py3-none-manylinux_2_28_x86_64.whl

Download URL fortitude_lint-0.10.1-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
35af0192de068a93d5b10d79c79297af2604574018d65a7ec131051cdcb9fc76
BLAKE2b-256 checksum
How to use checksums
8e8d0237d3ee4cb15f941e67eb7b5568b8c219ccbbc572851c96c7c2120aa419
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.6 {"installer":{"name":"uv","version":"0.13.6","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.1-py3-none-manylinux_2_28_s390x.whl

Download URL fortitude_lint-0.10.1-py3-none-manylinux_2_28_s390x.whl
Size 5.3 MB
Tags Linux glibc 2.28+ IBM System/390x Python 3
SHA-256 checksum
How to use checksums
8be9868a94296dae639d5b3fe459a1031e6e501e86f247d30a081ae8c951c673
BLAKE2b-256 checksum
How to use checksums
249a18ba295953a827f2fefa4dd8459e0a1d0cf786bca8ea5559ff1a4cb38da8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.6 {"installer":{"name":"uv","version":"0.13.6","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.1-py3-none-manylinux_2_28_ppc64le.whl

Download URL fortitude_lint-0.10.1-py3-none-manylinux_2_28_ppc64le.whl
Size 5.9 MB
Tags Linux glibc 2.28+ PowerPC 64-le Python 3
SHA-256 checksum
How to use checksums
1a5dbcb54c60bcfa3a58deccf728557fc05d6a8eb4b8d041b63cf77075f439d6
BLAKE2b-256 checksum
How to use checksums
01899b15c242cc208eae4da77c9fe709be34474ff8fa0f190189e2615eb9c4d3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.6 {"installer":{"name":"uv","version":"0.13.6","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.1-py3-none-manylinux_2_28_i686.whl

Download URL fortitude_lint-0.10.1-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
6e1ba37eea740c632941d6a10a417b160745cfaa07370e116b326840ac13abb0
BLAKE2b-256 checksum
How to use checksums
08d5d7c5335e8033980067e3292e97653fc62197d69c984dbd1615b9510bd7b0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.6 {"installer":{"name":"uv","version":"0.13.6","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.1-py3-none-manylinux_2_28_armv7l.whl

Download URL fortitude_lint-0.10.1-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
a5b4f5d78e2683ec6c7af1ba981fd7794d6e8c3a690cc5ba203e4f67ca28d38e
BLAKE2b-256 checksum
How to use checksums
3945010c303cf155613a06c42ac331b950b4067eab52aca021886d2c158b7452
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.6 {"installer":{"name":"uv","version":"0.13.6","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.1-py3-none-manylinux_2_28_aarch64.whl

Download URL fortitude_lint-0.10.1-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
80e1a7afc56a7cd80e8e65013c9a31ebc9a967d2a18d7d340fcea123b0ab06a7
BLAKE2b-256 checksum
How to use checksums
4d9783fd942879d218ae94e824721156368119f8b6e24c201de020e130d1edcd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.6 {"installer":{"name":"uv","version":"0.13.6","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.1-py3-none-macosx_11_0_arm64.whl

Download URL fortitude_lint-0.10.1-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
52256a2782942f82dfb85a33b03b02dd573ac046ea5301a42dc7997c968b8c19
BLAKE2b-256 checksum
How to use checksums
e1a7f1c29f0f6bfb8889c54d1037926616d4ede731c5def3ebce57f0a49efdd9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.6 {"installer":{"name":"uv","version":"0.13.6","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.1-py3-none-macosx_10_12_x86_64.whl

Download URL fortitude_lint-0.10.1-py3-none-macosx_10_12_x86_64.whl
Size 5.0 MB
Tags Python 3 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
25066fb0d23b9b5122ff41e511baf65e8a2f3a09e48e50cfb23646b4b882198c
BLAKE2b-256 checksum
How to use checksums
9261927c0fe812db8fa294d676938a51c106b6d468bcbe65889c35152ccbeedf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.6 {"installer":{"name":"uv","version":"0.13.6","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.1

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