pre-commit-matlab-lint
A pre-commit hook to validate MATLAB code.
Science Score: 26.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
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (11.8%) to scientific vocabulary
Keywords
Repository
A pre-commit hook to validate MATLAB code.
Basic Info
Statistics
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 9
- Releases: 6
Topics
Metadata Files
README.md
pre-commit-matlab-lint
A pre-commit hook for validating MATLAB code.
Available Hook
lint-matlab
Validate MATLAB files by analyzing them with MATLAB's checkcode function.
In order to use this hook, MATLAB must be installed and registered. There are three ways to specify which MATLAB instance should be used:
- Use
--matlab-home-path=PATHto supply the full path to a MATLAB home directory (e.g. "/Applications/MATLAB_R2021a.app" on macOS, "C:\Program Files\MATLAB\R2021a" on Windows) - Use
--matlab-version=VERSIONto specify a MATLAB version to locate (e.g. "9.10") - Use
--matlab-release-name=NAMEto specify a MATLAB release to locate (e.g. "R2021a")
Other options:
- Use
--treat-warning-as-errorto fail on linter warnings, in addition to linter errors. - Use
--enable-cyclomaticityto enable McCabe cyclomaticity complexity calculation display for each file. - Use
--enable-modified-cyclomaticityto enable modified cyclomaticity complexity calculation display for each file. - Use
--ignore-ok-pragmasto ignore%#okcheckcode suppression pragmas in files. - Use
--checkode-config-file=FILEto specify a settings file. For instructions detail how to create the file, see Save and Reuse Code Analyzer Message Settings. - Use
--use-default-checkcode-configto ignore any checkcode settings files and use factory defaults.
Usage with pre-commit
Add this to your .pre-commit-config.yaml
yaml
- repo: https://github.com/tcumby/pre-commit-matlab-lint
rev: "" # Use the sha / tag you want to point at
hooks:
- id: lint-matlab
args: ["--matlab_release_name=R2021a"]
Licensed under the terms of the MIT License. New issues and pull requests are welcome. Please refer to the contributing guide and security policy. Generated with Tyrannosaurus.
Owner
- Login: tcumby
- Kind: user
- Location: Denver, CO
- Company: @imatest
- Repositories: 13
- Profile: https://github.com/tcumby
GitHub Events
Total
- Push event: 10
Last Year
- Push event: 10
Dependencies
- sphinx >=4.0,<5.0
- sphinx-autoapi >=1.8,<2.0
- sphinx-copybutton >=0.4,<1.0
- sphinx-rtd-theme >=1.0,<2.0
- tomlkit >=0.7,<1.0
- alabaster 0.7.12 develop
- astroid 2.9.3 develop
- atomicwrites 1.4.0 develop
- attrs 21.4.0 develop
- babel 2.9.1 develop
- bandit 1.7.1 develop
- cfgv 3.3.1 develop
- click 8.0.3 develop
- colorama 0.4.4 develop
- coverage 6.2 develop
- distlib 0.3.4 develop
- docutils 0.17.1 develop
- filelock 3.4.2 develop
- flake8 3.9.2 develop
- flake8-bugbear 22.1.11 develop
- flake8-docstrings 1.6.0 develop
- gitdb 4.0.9 develop
- gitpython 3.1.26 develop
- grayskull 0.9.1 develop
- hypothesis 6.35.0 develop
- identify 2.4.4 develop
- imagesize 1.3.0 develop
- importlib-metadata 4.10.0 develop
- iniconfig 1.1.1 develop
- jinja2 3.0.3 develop
- lazy-object-proxy 1.7.1 develop
- markupsafe 2.0.1 develop
- mccabe 0.6.1 develop
- mypy 0.910 develop
- mypy-extensions 0.4.3 develop
- nodeenv 1.6.0 develop
- packaging 21.3 develop
- pbr 5.8.0 develop
- platformdirs 2.4.1 develop
- pluggy 1.0.0 develop
- pre-commit 2.16.0 develop
- pre-commit-hooks 4.1.0 develop
- progressbar2 4.0.0 develop
- py 1.11.0 develop
- pycodestyle 2.7.0 develop
- pydocstyle 6.1.1 develop
- pyflakes 2.3.1 develop
- pygments 2.11.2 develop
- pyparsing 3.0.6 develop
- pytest 6.2.5 develop
- pytest-cov 3.0.0 develop
- python-utils 3.1.0 develop
- pytz 2021.3 develop
- pyyaml 6.0 develop
- rapidfuzz 1.9.1 develop
- ruamel.yaml 0.17.20 develop
- ruamel.yaml.clib 0.2.6 develop
- ruamel.yaml.jinja2 0.2.7 develop
- six 1.16.0 develop
- smmap 5.0.0 develop
- snowballstemmer 2.2.0 develop
- sortedcontainers 2.4.0 develop
- sphinx 4.4.0 develop
- sphinx-autoapi 1.8.4 develop
- sphinx-copybutton 0.4.0 develop
- sphinx-rtd-theme 1.0.0 develop
- sphinxcontrib-applehelp 1.0.2 develop
- sphinxcontrib-devhelp 1.0.2 develop
- sphinxcontrib-htmlhelp 2.0.0 develop
- sphinxcontrib-jsmath 1.0.1 develop
- sphinxcontrib-qthelp 1.0.3 develop
- sphinxcontrib-serializinghtml 1.1.5 develop
- stdlib-list 0.8.0 develop
- stevedore 3.5.0 develop
- toml 0.10.2 develop
- tomli 2.0.0 develop
- tomlkit 0.7.2 develop
- typer 0.4.0 develop
- typing-extensions 4.0.1 develop
- tyrannosaurus 0.10.4 develop
- unidecode 1.3.2 develop
- virtualenv 20.13.0 develop
- wrapt 1.13.3 develop
- xdoctest 0.15.10 develop
- zipp 3.7.0 develop
- certifi 2021.10.8
- charset-normalizer 2.0.10
- defusedxml 0.7.1
- idna 3.3
- requests 2.27.1
- urllib3 1.26.8
- bandit ^1.7 develop
- coverage ^6.0 develop
- defusedxml ^0.7 develop
- flake8 ^3.9 develop
- flake8-bugbear >=21 develop
- flake8-docstrings ^1.5 develop
- hypothesis ^6 develop
- mypy ^0.910 develop
- pre-commit ^2.16 develop
- pre-commit-hooks ^4.1 develop
- pytest ^6.2 develop
- pytest-cov ^3.0 develop
- requests ^2.0 develop
- sphinx ^4.0 develop
- sphinx-autoapi ^1.5 develop
- sphinx-copybutton ^0.4 develop
- sphinx-rtd-theme ^1.0 develop
- tomlkit ^0.7 develop
- tyrannosaurus >=current, <1.0 develop
- xdoctest >=0.15, <1.0 develop
- defusedxml ^0.7
- python ^3.8
- pyyaml ^6.0
- requests ^2.0
- python 3.12.0a5 build
- actions/checkout v3 composite
- gaurav-nelson/github-action-markdown-link-check v1 composite
- github/codeql-action/analyze v2 composite
- github/codeql-action/autobuild v2 composite
- github/codeql-action/init v2 composite
- actions/checkout v3 composite
- lannonbr/issue-label-manager-action 4.0.0 composite
- actions/checkout v3 composite
- actions/setup-python v4 composite
- skx/github-action-publish-binaries master composite
- actions/checkout v3 composite
- actions/setup-python v4 composite
- 8398a7/action-slack v3 composite
- actions/checkout v3 composite
- actions/setup-python v4 composite