Debug the SWIG compiler itself: -debug-* command line flags, parse tree dumps (text and XML), gdb with the swigprint/locswigprint helpers from Tools/swig.gdb, valgrind via the SWIGTOOL/RUNTOOL test suite hooks, and DOH_DEBUG_MEMORY_POOLS for memory corruption…
Reproduce a GitHub Actions Linux CI failure locally when it does not happen on your machine: a podman/docker image that mirrors the ubuntu-22.04 runner by reusing the real Tools/CI-linux-*.sh install scripts, parameterised by target language and version.…
Get a SWIG change ready to commit and submit: what to test for each kind of change, including comparing the generated code before and after a core change, commit message rules and the Assisted-by AI disclosure trailer, what to do when the human makes the…
SWIG source code conventions: clang-format / code formatting, C/C++ comment style (quotes, widths, function header blocks), parser.y new code rules, alphabetical ordering of makefile lists, adding or retiring a warning number and checking it is documented,…
Run the SWIG test suite for specific languages or one test case across every configured language. Use when testing SWIG changes, adding or changing a test case, verifying language support, debugging test failures or running regression tests.
Author and edit chapters of the SWIG Users Manual under Doc/Manual: chapter conventions, manual heading anchors, the four content `<div>` styles (code / targetlang / shell / diagram), how to show a warning or error message, the auto generated section TOC, the…