Skip to content

Latest commit

 

History

History
82 lines (58 loc) · 3.53 KB

CONTRIBUTING.md

File metadata and controls

82 lines (58 loc) · 3.53 KB

Contributing to MultiSigEnterpriseVault

Thank you for considering contributing to MultiSigEnterpriseVault! I welcome contributions from the community and am excited to work with you.

How to Contribute

Reporting Bugs

  • Ensure the bug was not already reported by searching on GitHub under Issues.
  • If you're unable to find an open issue addressing the problem, open a new one. Be sure to include a title and clear description, as much relevant information as possible, and a code sample or an executable test case demonstrating the expected behavior that is not occurring.
  • When opening a new issue, select the appropriate template that best matches your report (e.g., Bug Report).

Suggesting Enhancements

  • Search the existing Issues for enhancement suggestions to avoid duplicates.
  • If you find a related issue, feel free to add your thoughts and suggestions.
  • If you don't find an existing issue, open a new one and describe the enhancement in detail.
  • Use the provided template for feature requests to ensure all necessary information is included.

Submitting Pull Requests

  • Fork the repository and create your branch from main.
  • If you've added code that should be tested, add tests.
  • Ensure the test suite passes.
  • Make sure your code lints.
  • Use the pull request template to ensure all necessary information is included.
  • Follow the checklist in the template to verify that your pull request meets the project requirements.
  • Issue that pull request!

Code Style

  • Follow the existing code style and use forge fmt to format your code.
  • Document all functions using NatSpec comments.
  • Write clear, concise commit messages.

Branch Naming Guidelines

To keep a clean and understandable Git history, always base new branches off the main branch and follow these branch naming conventions:

  • Feature Branches: For new features use: feat/<feature-name>
    • Example: feat/owner-role
  • Enhancement Branches: For existing feature enhancements or improvements use: perf/<enhancement-description>
    • Example: perf/owner-access
  • Bug Fixes: For bug fixes, use: fix/<issue-description>
    • Example: fix/gas-estimation
  • Chores or Refactoring: For maintenance or refactoring tasks, use: chore/<task-description>
    • Example: chore/update-dependencies

Commit Message Guidelines

To maintain a clean and readable commit history, follow these guidelines:

  • Use Conventional Commits: Format your commit messages as follows:

    <type>: <short summary>

    Examples:

    • feat: signer role functionality
    • fix: gas estimation bug
  • Types of Commits:

    • feat: A new feature
    • fix: A bug fix
    • perf: A feature enhancement
    • docs: Documentation-only changes
    • test: Adding or updating tests
    • chore: Routine tasks like refactoring or updating dependencies

Community

  • Follow best practices for collaboration, and ensure tests are written for all new code.
  • Be respectful and considerate in your communication.
  • Follow the Code of Conduct.

Getting Help

If you have any questions, feel free to reach out by opening an issue, join the community chat, or send an email to [email protected].

I appreciate your contributions and thank you for your support!

Emmanuel Joseph (JET)