Skip to content

Contribution guide

klaus triendl edited this page May 12, 2024 · 5 revisions

Greetings my dear C++ developer. It is very nice that you decided to contribute to sqlite_orm. This guide will help you to do it right.

  1. Please don't create pull requests targeting to master branch. Create PR targeting to dev branch instead cause dev is a main working branch and master is a branch for releases;

  2. Don't edit sqlite_orm.h. Edit sources from dev folder instead and once you finished run amalgamate script from terminal from repo root folder:

python third_party/amalgamate/amalgamate.py -c third_party/amalgamate/config.json -s .

This will regenerate sqlite_orm.h from your version of sources from dev folder;

  1. Don't forget to apply code formatting after you generated sqlite_orm.h. You can do it using a command below on UNIX OS:
clang-format -i -style=file include/sqlite_orm/*.h tests/*.cpp tests/*/*.cpp tests/*/*/*.cpp dev/*.h dev/*/*.h tests/*/*.h examples/*.cpp examples/*/src/*.cpp

and using a command below on Windows using PowerShell:

foreach ($f in get-childitem -path .\ -file -recurse | where {$_.extension -in ".h", ".cpp"}) { clang-format -i -style=file $f.fullname }

To do it you must have clang-format v16 installed on your machine. To check your clang-format version run clang-format --version;

  1. After these steps are done make a commit and a pull request. Wait for CI build to complete and review is done. After that maintainer will merge your PR manually. This repo does not have automatic merge.

Please remember that new maintainers are always welcome. If you have some issue you post it at any time or you can ask a question right into discussions section.

Clone this wiki locally