Skip to content

Latest commit

 

History

History
95 lines (66 loc) · 3.9 KB

File metadata and controls

95 lines (66 loc) · 3.9 KB

Contributing to Blockscout-rs

First off, thanks for taking the time to contribute to 🚀 Blockscout-Rust 🚀 projects! 🎉

How Can I Contribute?

The following is a set of guidelines for contributing to blockscout-rs, which is hosted in the Blockscout organization.

Reporting Bugs

This section guides you through submitting a bug report. Following these guidelines helps maintainers and the community understand your report, reproduce the behavior, and find related reports.

Before Submitting a Bug Report

  • Check the issues list to see if the problem has already been reported.
  • Update to the latest version and see if the issue persists.

How Do I Submit a ✨Good✨ Bug Report?

Bugs are tracked as GitHub issues. Create an issue and provide the following information by filling in the provided template:

  • Use a clear and descriptive title for the issue to identify the problem.
  • Describe the exact steps which reproduce the problem in as many details as possible.
  • Describe the behavior you observed after following the steps and explain why it is problematic.
  • Explain which behavior you expected to see instead and why.
  • Include screenshots, logs, ENVs, or any other information that might help in understanding the problem.
  • Mark the issue with the appropriate label (bug, enhancement, documentation, question, etc).

Contributing Code

We welcome code contributions of all sizes - from fixing typos to implementing new features. However, if you're only fixing typos, we encourage you to bundle these changes with other meaningful code improvements to maximize the impact of your contribution.

For example, while fixing typos, you could:

  • Add missing code comments
  • Improve error messages
  • Update outdated examples
  • Enhance test coverage

This helps ensure that each pull request provides substantial value to the project.

If you want to help us improve the project, you can contribute code. To do so, follow these steps:

Rust Code Style Guide

For more details see RUST_CODE_STYLE_GUIDE.md

Commit Messages Guidelines

  1. Use Conventional Commits:

  2. Commit Types:

    Note: those types are preferred, but you can use any other type if it fits better.

    • feat: New feature
    • fix: Bug fix
    • perf: Performance improvement
    • chore: Maintenance tasks (including code changes that do not fit other types)
    • refactor: Code restructuring
    • ci: Continuous Integration changes
    • docs: Documentation updates
    • build: Build system changes
    • config: Configuration changes
    • test: Adding or updating tests
    • revert: Reverting commit changes
  3. Message Format type(scope): description

    • Type: Lowercase (e.g., feat, fix)
    • Scope: Service name (optional)
    • Description: Short and concise (imperative mood)
  4. Examples:

    • feat: add new feature ...
    • fix: correct bug ...
    • docs: update README
    • ci: add new workflow
  5. Pull Request Titles

    • SHOULD include service name (in lower-kebab-case) or other scope of change after <type>
    • Examples:
      • feat(stats): add resolution for newAccounts chart
      • fix(stats): correct wrong update bug
      • docs: add CONTRIBUTING.md
      • ci(verifier): update docker build step