A Fortran linter, written in Rust and installable with Python
Project description
Fortitude
A Fortran linter, written in Rust :crab: and installable with Python :snake:.
Table of Contents
Installation
Fortitude can be installed directly into your Python environment:
pip install fortitude-lint
It is also available as a pure Rust project:
cargo install fortitude
Usage
Fortitude can lint your project using the check
command:
fortitude check my_code.f90
You can also call check
on directories, and if no files are provided, fortitude
will
search for them from your current working directory.
The explain
command can be used to get extra information about any rules:
fortitude explain B023
If no rules are provided, this will print all rule descriptions to the terminal.
To see further commands and optional arguments, try using --help
:
fortitude --help
fortitude check --help
Configuration
Fortitude will look for either a fortitude.toml
or fpm.toml
file in the
current directory, or one of its parents. If using fortitude.toml
, settings
should be under the command name:
[check]
ignore = ["S001", "S051"]
line-length = 132
For fpm.toml
files, this has to be additionally nested under the
extra.fortitude
table:
[extra.fortitude.check]
ignore = ["S001", "S051"]
line-length = 132
Contributing
Please feel free to add or suggest new rules or comment on the layout of the project
while it's still at this early stage of development. See
CONTRIBUTING.md
for a guide on contributing to the project, and
README.dev.md
for details on building the project from source,
running tests, and linting/formatting the code. Please consult our code of
conduct before contributing.
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.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
File details
Details for the file fortitude_lint-0.4.0.tar.gz
.
File metadata
- Download URL: fortitude_lint-0.4.0.tar.gz
- Upload date:
- Size: 44.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/1.7.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 617376ef62556827031c43a2416d32dcaaa9ffb1f09724a78502061218c940d3 |
|
MD5 | 52d677f7e987070a930b3a76a8eff5e1 |
|
BLAKE2b-256 | 40fed4109cee23daf24d496474571f6420cffe1bceee3f35ca9f30f4a60dc8ba |
File details
Details for the file fortitude_lint-0.4.0-py3-none-win_amd64.whl
.
File metadata
- Download URL: fortitude_lint-0.4.0-py3-none-win_amd64.whl
- Upload date:
- Size: 1.6 MB
- Tags: Python 3, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/1.7.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | bb10c1264a5568cea65ccbf0fb33602b34959a51f4879c45ea9ed2fda43a0cea |
|
MD5 | 614d916f95f6eb508e5a5799e51cf1ed |
|
BLAKE2b-256 | 4c9a819a6ed6446d0a45d3a298d41f9a2a63ebb8191cfac32bcbf39aae9d9d32 |
File details
Details for the file fortitude_lint-0.4.0-py3-none-win32.whl
.
File metadata
- Download URL: fortitude_lint-0.4.0-py3-none-win32.whl
- Upload date:
- Size: 1.4 MB
- Tags: Python 3, Windows x86
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/1.7.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0cc81d4b1a99882e4fbaaabc56a08b58f997e5141356de0ec8be04690254abc7 |
|
MD5 | 46e987caf3049f756276426b24bbf5f0 |
|
BLAKE2b-256 | c8f77b60a9471f805d711f5757e3cfb2d1fec20ac422e73b11afa0d466b04ddb |
File details
Details for the file fortitude_lint-0.4.0-py3-none-musllinux_1_2_x86_64.whl
.
File metadata
- Download URL: fortitude_lint-0.4.0-py3-none-musllinux_1_2_x86_64.whl
- Upload date:
- Size: 1.9 MB
- Tags: Python 3, musllinux: musl 1.2+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/1.7.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 471c776cb58c68fbbe72ce86feba8856598ed65eba227aa7e3abf58bb9523097 |
|
MD5 | 8a7f6523edf67214ca4ea25eeadb7251 |
|
BLAKE2b-256 | 20b4d0c4f21f54e1c1465b7ff5079d2f15002dbdf3e99b5293b8ec90b77b11e4 |
File details
Details for the file fortitude_lint-0.4.0-py3-none-musllinux_1_2_i686.whl
.
File metadata
- Download URL: fortitude_lint-0.4.0-py3-none-musllinux_1_2_i686.whl
- Upload date:
- Size: 1.9 MB
- Tags: Python 3, musllinux: musl 1.2+ i686
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/1.7.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | dc6b20f3096cb66864315c21f3c4a8b3871e13703e66b087d1cc0dd10c20bcd6 |
|
MD5 | 34191d678c00746b145081227c32a64f |
|
BLAKE2b-256 | a0ce6c48a9f155c426ccb743cdcdba95744945a6f0c54c65892f01a896084874 |
File details
Details for the file fortitude_lint-0.4.0-py3-none-musllinux_1_2_armv7l.whl
.
File metadata
- Download URL: fortitude_lint-0.4.0-py3-none-musllinux_1_2_armv7l.whl
- Upload date:
- Size: 1.8 MB
- Tags: Python 3, musllinux: musl 1.2+ ARMv7l
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/1.7.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5a722fd6d9b5b48953e98f22e6088a1e604a5a1e164396a84fa4ee5f46857f41 |
|
MD5 | 907e506cd848e1b276852fd8adf89261 |
|
BLAKE2b-256 | 18add23127000da9fbbb577a73f7cb866aede012fd59f203d0305fd38f676e59 |
File details
Details for the file fortitude_lint-0.4.0-py3-none-musllinux_1_2_aarch64.whl
.
File metadata
- Download URL: fortitude_lint-0.4.0-py3-none-musllinux_1_2_aarch64.whl
- Upload date:
- Size: 1.8 MB
- Tags: Python 3, musllinux: musl 1.2+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/1.7.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e122f3f7db7fd4e665cf8b6b50a911b14c51b7c56a4962a331ff75a86e4bbebd |
|
MD5 | a6da32b6d3688862314c7ebd37d1fff2 |
|
BLAKE2b-256 | 907293b048902a89589cbceeee719568c307af728f21bde024648c31776b9819 |
File details
Details for the file fortitude_lint-0.4.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
.
File metadata
- Download URL: fortitude_lint-0.4.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 1.9 MB
- Tags: Python 3, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/1.7.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 77385bfa41d95e84dc6aa2678da6c201f8035d46f6a86563bbfd5e97f4a04852 |
|
MD5 | 4e70dee1e09712f2882f3b37fab2d361 |
|
BLAKE2b-256 | 3bbf81ecd07adadcfb6e21521c0e26b5001e43998ae88f545017d1793d3ec210 |
File details
Details for the file fortitude_lint-0.4.0-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl
.
File metadata
- Download URL: fortitude_lint-0.4.0-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl
- Upload date:
- Size: 2.1 MB
- Tags: Python 3, manylinux: glibc 2.17+ s390x
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/1.7.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ea04cf23fabe881e5e83e70445c8e31df78e9fb3fd945ac29908b07224c63e09 |
|
MD5 | 3a1ca9d266bced071e1191f900c1a550 |
|
BLAKE2b-256 | e419cf6e55af3d180606d947ddb2033666e6f7a335530a8df847ebd8c788ea41 |
File details
Details for the file fortitude_lint-0.4.0-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
.
File metadata
- Download URL: fortitude_lint-0.4.0-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
- Upload date:
- Size: 2.0 MB
- Tags: Python 3, manylinux: glibc 2.17+ ppc64le
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/1.7.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2cd1f022a1c645e8f5c3b23491140bbd664d3edd553fd5e79de59724136027d1 |
|
MD5 | a559101b2994cc4b818c3505eb55bfc4 |
|
BLAKE2b-256 | e7a5ead816df5d596b7d01e1736ce570bdb2ee14ba29d6c4d473aa5a074770a8 |
File details
Details for the file fortitude_lint-0.4.0-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl
.
File metadata
- Download URL: fortitude_lint-0.4.0-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl
- Upload date:
- Size: 2.0 MB
- Tags: Python 3, manylinux: glibc 2.17+ i686
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/1.7.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 151905ba0b62b15792a7e465e22e568ff561f8a01341ae822777e6336e3714d6 |
|
MD5 | 520c7cbe8f49724f4fd0427c256c49a1 |
|
BLAKE2b-256 | 16b008085ceb637326628ab2d38ad7b11bcc4c001b6557574884cd98dcbd253b |
File details
Details for the file fortitude_lint-0.4.0-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
.
File metadata
- Download URL: fortitude_lint-0.4.0-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
- Upload date:
- Size: 1.8 MB
- Tags: Python 3, manylinux: glibc 2.17+ ARMv7l
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/1.7.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 09702af926e4014b8374d7a2c3721634775ee911328e77db251dc179c694957f |
|
MD5 | 011e563f01e1e3fe2c7e1cb32d1322e7 |
|
BLAKE2b-256 | d76ff380cbd071e224f8b10ae42414bb613e5df6e28ec528ae10286ef7dc70cb |
File details
Details for the file fortitude_lint-0.4.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
.
File metadata
- Download URL: fortitude_lint-0.4.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 1.9 MB
- Tags: Python 3, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/1.7.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 95384de485b65269fff842892c73036dcdc8e2c1210d009120d52c15c390689c |
|
MD5 | e2619d479c32d75a7b3404576960c08c |
|
BLAKE2b-256 | 12eabb3fe680aee110071db6ae27f98bfe0835ace68dab03fc364202cfc0e0f0 |
File details
Details for the file fortitude_lint-0.4.0-py3-none-macosx_11_0_arm64.whl
.
File metadata
- Download URL: fortitude_lint-0.4.0-py3-none-macosx_11_0_arm64.whl
- Upload date:
- Size: 1.7 MB
- Tags: Python 3, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/1.7.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 81d85a5b1117695c5de99d08f53c519ad2666e4a8c2e905880d16817a98d1397 |
|
MD5 | ea403ca5e861e22052964446aa8a1cb5 |
|
BLAKE2b-256 | 7097958b136f9c282ad6fb4b7adf85f2d9ebd00814f09c1f5d9b492d3bdc7805 |
File details
Details for the file fortitude_lint-0.4.0-py3-none-macosx_10_12_x86_64.whl
.
File metadata
- Download URL: fortitude_lint-0.4.0-py3-none-macosx_10_12_x86_64.whl
- Upload date:
- Size: 1.8 MB
- Tags: Python 3, macOS 10.12+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/1.7.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 70b8ad70a8a58c650591b9296ae1d8deccecb1a9a20f7e4b2dce5784d70c2abc |
|
MD5 | ec664f825c7567ba405a080639e10f81 |
|
BLAKE2b-256 | 9a16095d831c416147e5fbe8f51fa1718fc3fe630e8acf102ada3914d50e3953 |