mirror of
https://github.com/orange-cpp/omath.git
synced 2026-04-18 15:23:26 +00:00
updated contributing
This commit is contained in:
@@ -1,32 +1,36 @@
|
|||||||
## 🤝 Contributing to OMath or other Orange's Projects
|
# Contributing
|
||||||
|
|
||||||
### ❕ Prerequisites
|
## Prerequisites
|
||||||
|
|
||||||
- A working up-to-date OMath installation
|
- C++ compiler with C++23 support (Clang 18+, GCC 14+, MSVC 19.38+)
|
||||||
- C++ knowledge
|
- CMake 3.25+
|
||||||
- Git knowledge
|
- Git
|
||||||
- Ability to ask for help (Feel free to create empty pull-request or PM a maintainer
|
- Familiarity with the codebase (see `INSTALL.md` for setup)
|
||||||
in [Telegram](https://t.me/orange_cpp))
|
|
||||||
|
|
||||||
### ⏬ Setting up OMath
|
For questions, create a draft PR or reach out via [Telegram](https://t.me/orange_cpp).
|
||||||
|
|
||||||
Please read INSTALL.md file in repository
|
## Workflow
|
||||||
|
|
||||||
### 🔀 Pull requests and Branches
|
1. [Fork](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/working-with-forks/fork-a-repo) the repository.
|
||||||
|
2. Create a feature branch from `main`.
|
||||||
|
3. Make your changes, ensuring tests pass.
|
||||||
|
4. Open a [pull request](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-a-pull-request-from-a-fork) against `main`.
|
||||||
|
|
||||||
In order to send code back to the official OMath repository, you must first create a copy of OMath on your github
|
## Code Style
|
||||||
account ([fork](https://help.github.com/articles/creating-a-pull-request-from-a-fork/)) and
|
|
||||||
then [create a pull request](https://help.github.com/articles/creating-a-pull-request-from-a-fork/) back to OMath.
|
|
||||||
|
|
||||||
OMath development is performed on multiple branches. Changes are then pull requested into master. By default, changes
|
Follow the project `.clang-format`. Run `clang-format` before committing.
|
||||||
merged into master will not roll out to stable build users unless the `stable` tag is updated.
|
|
||||||
|
|
||||||
### 📜 Code-Style
|
## Building
|
||||||
|
|
||||||
The orange code-style can be found in `.clang-format`.
|
Use one of the CMake presets defined in `CMakePresets.json`:
|
||||||
|
|
||||||
### 📦 Building
|
```bash
|
||||||
|
cmake --preset <preset-name> -DOMATH_BUILD_TESTS=ON
|
||||||
|
cmake --build --preset <preset-name>
|
||||||
|
```
|
||||||
|
|
||||||
OMath has already created the `cmake-build` and `out` directories where cmake/bin files are located. By default, you
|
Run `cmake --list-presets` to see available configurations.
|
||||||
can build OMath by running `cmake --build cmake-build/build/windows-release --target omath -j 6` in the source
|
|
||||||
directory.
|
## Tests
|
||||||
|
|
||||||
|
All new functionality must include unit tests. Run the test binary after building to verify nothing is broken.
|
||||||
|
|||||||
Reference in New Issue
Block a user