Skip to content

Files

Latest commit

45ae8d8 · Feb 20, 2023

History

History
80 lines (64 loc) · 3.43 KB

CONTRIBUTING.md

File metadata and controls

80 lines (64 loc) · 3.43 KB

Contributing Guidelines

Ways to Contribute

Note that this file only contains a guide for code contributions. However, there are many other ways how to contribute to the LibrePCB project, see librepcb.org/contribute for details.

Notes

  • Before spending lots of time on something, please ask for feedback on your idea first!
  • Please search issues and pull requests before adding something new to avoid duplicating efforts and conversations.
  • Issues which are considered to be easy to solve are marked with the label easy: Browse all easy issues.
  • To contact us use one of the following options:

Getting Started

Making Changes

  • Create a topic branch from where you want to base your work.
    • This is usually the master branch.
    • To quickly create a topic branch based on master: git checkout -b my_contribution master
    • Please avoid working directly on the master branch.
  • Write code which follows our code style guides and .editorconfig settings.
  • Make commits of logical units.
    • Make sure your commit messages are in the proper format:
      ScopeGuardList: Fix crash when constructing with size
      
      Default constructed std::function is empty and throws an
      std::bad_function_call when being called.
      
      Check if it is empty and use reserve() when constructing with size.
      
      Fixes #62
      
  • Make sure you have added the necessary tests for your changes.
  • Run all tests to ensure nothing else was accidentally broken.
    • This is done by running the binary ./build/tests/unittests/librepcb-unittests.
  • If you like, feel free to add yourself to the AUTHORS.md file.

Submitting Changes

  • Push your changes to a topic branch in your fork of the repository.
  • Submit a pull request to the repository in the LibrePCB organization.
  • We will then check the pull request and give you feedback quickly.

Please also take a look at our Pull Request Guidelines.

Additional Resources