* docs: update PORTING.md and Fast3D README with accurate codebase info Agent-Logs-Url: https://github.com/Kenix3/libultraship/sessions/5ed461fd-5205-4e07-86d7-3fc017141c9d Co-authored-by: Kenix3 <18299654+Kenix3@users.noreply.github.com> * docs: fix minor grammar in PORTING.md Agent-Logs-Url: https://github.com/Kenix3/libultraship/sessions/5ed461fd-5205-4e07-86d7-3fc017141c9d Co-authored-by: Kenix3 <18299654+Kenix3@users.noreply.github.com> * docs: improve README, CONTRIBUTING, and include/fast/README Agent-Logs-Url: https://github.com/Kenix3/libultraship/sessions/71d3affa-8cb3-43ba-a652-3c727c342e7f Co-authored-by: Kenix3 <18299654+Kenix3@users.noreply.github.com> * Update docs/PORTING.md Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * docs: fix Windows vcpkg and Android build type in README Agent-Logs-Url: https://github.com/Kenix3/libultraship/sessions/024701b5-63bc-40c3-97b0-a54357640efa Co-authored-by: Kenix3 <18299654+Kenix3@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: Kenix3 <18299654+Kenix3@users.noreply.github.com> Co-authored-by: Kenix3 <kenixwhisperwind@gmail.com> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2.2 KiB
Preface
LUS accepts any and all contributions. You can interact with the project via PRs, issues, email (kenixwhisperwind@gmail.com), or Discord.
Code of Conduct
Please review and abide by our code of conduct.
Building
Please see the readme for building instructions.
Pull Requests
Procedures
Our CI system will automatically check your PR to ensure that it fits formatting guidelines, linter guidelines, and that the code builds. The submitter of a PR is required to ensure their PR passes all CI checks. The submitter of the PR is encouraged to address all PR review comments in a timely manner to ensure a timely merge of the PR.
Troubleshooting CI Errors
tidy-format-validation
If the tidy-format-validation check fails, then you need to run clang-format. Below is a command that can be used on Linux. Most modern IDEs have a clang-format plugin that can be used. The .clang-format file can be found here
Running clang-format
From within the LUS directory.
Ensure clang-format-14 is installed and available through your system path.
Bash:
find src include -name "*.cpp" -o -name "*.h" | sed 's| |\\ |g' | xargs clang-format-14 -i
Powershell:
Get-ChildItem -Recurse -Path .\src -Include *.cpp, *.h -File | ForEach-Object { clang-format-14.exe -i $_.FullName }
Running clang-tidy
From within the LUS directory.
Ensure clang-tidy is installed and available through your system path.
First, generate a compile_commands.json so clang-tidy can resolve includes:
cmake -B build -DCMAKE_EXPORT_COMPILE_COMMANDS=ON
cmake --build build --target GenerateScriptKeys
Then run clang-tidy-diff on your local changes:
Bash:
git diff -U0 HEAD -- src include | clang-tidy-diff -p1 -path build
To check a specific file:
clang-tidy -p build src/path/to/file.cpp