You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The goal of this task is to restructure and configure Continuous Integration (CI) pipelines and set up pre-commit hooks to ensure that code adheres to established linting and formatting standards without automatically committing any changes. This will involve modifying the current pipelines to run checks for code quality, style, and potential security issues while ensuring that the developer is fully aware of the necessary changes without automatically applying them.
The task aims to maintain clean, readable, and consistent code across the project while preventing clutter in the commit history and ensuring that developers are in control of all code changes.
Specifications
CI/CD Pipelines:
Objective: Set up pipelines that check for code formatting and linting issues without automatically fixing or committing those changes.
Pipeline Behavior:
-- The pipelines should only fail if there are issues, with a clear message prompting the developer to fix them locally.
-- No auto-committing should take place to maintain a clean commit history.
Fail Criteria:
-- Any discrepancies in code style, linting issues, or security vulnerabilities will fail the pipeline.
Pre-Commit Hooks:
Objective: Add pre-commit hooks to ensure that code follows standards before being committed.
Pre-Commit Hooks to be set up:
-- Black: Enforce Python formatting.
-- isort: Ensure sorted imports.
-- codespell: Spell check code comments and documentation.
-- clang-format: Check C/C++ code formatting.
-- Pylint: Lint Python code.
-- Mypy: Enforce type checking in Python.
-- Bandit: Run security checks.
-- Standard Hooks: End-of-file-fixer, trailing whitespace removal, and mixed-line-ending checks.
Contacts
DevOps (Auto)
Code Quality
Every function in header files are documented (inputs/returns/exceptions)
The project has automated tests that cover MOST of the functions and branches in functions (pytest/gtest)
The code is documented on the wiki (provide link)
The text was updated successfully, but these errors were encountered:
Description of task
The goal of this task is to restructure and configure Continuous Integration (CI) pipelines and set up pre-commit hooks to ensure that code adheres to established linting and formatting standards without automatically committing any changes. This will involve modifying the current pipelines to run checks for code quality, style, and potential security issues while ensuring that the developer is fully aware of the necessary changes without automatically applying them.
The task aims to maintain clean, readable, and consistent code across the project while preventing clutter in the commit history and ensuring that developers are in control of all code changes.
Specifications
CI/CD Pipelines:
Objective: Set up pipelines that check for code formatting and linting issues without automatically fixing or committing those changes.
Key Linting/Formatting Tools:
-- Black (Python code formatting)
-- isort (Python import sorting)
-- clang-format (C/C++ formatting)
-- pylint (Python linting)
-- mypy (Python type checking)
-- bandit (Security analysis)
Pipeline Behavior:
-- The pipelines should only fail if there are issues, with a clear message prompting the developer to fix them locally.
-- No auto-committing should take place to maintain a clean commit history.
Fail Criteria:
-- Any discrepancies in code style, linting issues, or security vulnerabilities will fail the pipeline.
Pre-Commit Hooks:
Objective: Add pre-commit hooks to ensure that code follows standards before being committed.
Pre-Commit Hooks to be set up:
-- Black: Enforce Python formatting.
-- isort: Ensure sorted imports.
-- codespell: Spell check code comments and documentation.
-- clang-format: Check C/C++ code formatting.
-- Pylint: Lint Python code.
-- Mypy: Enforce type checking in Python.
-- Bandit: Run security checks.
-- Standard Hooks: End-of-file-fixer, trailing whitespace removal, and mixed-line-ending checks.
Contacts
Code Quality
The text was updated successfully, but these errors were encountered: