Tools
Development Tools
Services
- Pull Requests: code contribution and review
- BuildBot: automated builds at builder.blender.org
- Git: how to download, update and commit code
- Subversion: how to check out prebuild libraries and tests
- tea: command line tool for interacting with Gitea
There is an issue tracker for bugs and plans in development web services.
Development Tools
- ClangFormat: automatic code formatting following Blender style
- CMake for Developers: CMake options for development
- distcc: distributed building
- Unity Builds: reduce compile times
- C/C++ Code Documentation: viewing and editing with doxygen
Testing
- Setup: setup to run tests
- C/C++ Tests: GTest tests
- Python Tests: Python testing
- Performance Tests: benchmarking
Debugging
C/C++
- GDB: debugging on Unix system
- Address Sanitizer: debugging with GCC/Clang & ASAN
- Valgrind: detecting memory errors (linux/osx only)
- BuGLe: OpenGL debugging
- Py from C: run Python scripts in C code (test changes without rebuilds).
Python
- Eclipse PyDev: How to debug Python scripts running in Blender from the Eclipse IDE.
- Profiling: How to profile Python function calls.
- Tracing: How to log script execution.
Guides
- Coding Tips: how to navigate the code and debug problems.
- Blender Dev Tools: how to setup Blenders optional developer tools repo.
- Git Bisect with Event Simulation: automatically find faulty commits