Traceability

Implementation

Implementation: Guard the optional libclang dependency with an install hint IMPL_PREPROC_6
Implementation: Support C and C++ style comments IMPL_C_1
Implementation: Python Scope Node Types IMPL_PY_2
Implementation: Support Python style comments IMPL_PY_1
Implementation: Support Go style comments IMPL_GO_2
Implementation: Discover compile_commands.json by walking up from the source file IMPL_PREPROC_3
Implementation: Drop comments inside inactive preprocessor branches IMPL_PREPROC_2
Implementation: Go comment query for tree-sitter IMPL_GO_3
Implementation: Bash comment query for tree-sitter IMPL_BASH_3
Implementation: One-line comment parser for traceability markers IMPL_OLP_1
Implementation: Resolve per-file compiler flags from the compilation database IMPL_PREPROC_4
Implementation: CLI command to analyse source code and extract traceability markers IMPL_CLI_ANALYZE
Implementation: Tree-sitter parser initialization for multiple languages IMPL_LANG_1
Implementation: Parse headers standalone from configured defines and includes IMPL_PREPROC_5
Implementation: Comment extraction from source code using tree-sitter IMPL_EXTR_1
Implementation: CLI command to discover source files recursively with gitignore support IMPL_CLI_DISCOVER
Implementation: Extract traceability objects with the preprocessor-aware libclang engine IMPL_PREPROC_1
Implementation: CLI command to generate needextend RST file from extracted markers IMPL_CLI_WRITE
Implementation: JSONC comment-to-structure association IMPL_JSONC_2
Implementation: Parse multi-line need blocks in a comment run IMPL_MLN_2
Implementation: Extract one-line traceability needs from comments IMPL_ONE_1
Implementation: Extract multi-line needs from comment runs IMPL_MLN_1

Testing

Test: Test suite for source code analysis and marker extraction TEST_ANA_1
Test: Test suite for source analysis configuration validation TEST_CONF_1
Test: Test that line numbers stay exact far past line 256 TEST_ANA_2
Test: Test suite for the source order of marked content on one row TEST_ANA_ORDER_1
Test: Test suite for tree-sitter parsing utilities and language support TEST_LANG_1
Test: Test suite for CLI commands including analyse, discover, and write TEST_CLI_1
Test: Test suite for references of projects without a src-trace directive TEST_CONFIG_ONLY_REFS_1
Test: Test suite for a src-trace file scope naming no file TEST_MISSING_FILE_1
Test: Test suite for multi-line need runs and prefixes and grammar TEST_MLN_1
Test: Test suite for the need id reference record TEST_NEED_ID_REF_1
Test: Test suite for need id references attached during the build TEST_NEED_ID_REFS_1
Test: Test suite for attaching need id references TEST_NEED_ID_REFS_ATTACH_1
Test: Test suite for the ref_url_field configuration TEST_NEED_ID_REFS_CONFIG_1
Test: Test suite for needextend RST generation from extracted markers TEST_WRITE_1
Test: Test suite for one one-line need per id when src-trace scopes overlap TEST_ONE_NEED_PER_ID_1
Test: Test suite for one-line comment parser functionality TEST_OLP_1
Test: Test suite for the one-line parser's warnings in a build TEST_ONELINE_WARNINGS_1
Test: Test suite for sources outside the roots their records are relative to TEST_OUTSIDE_ROOTS_1
Test: Test suite for incremental builds that see new source files TEST_REDISCOVERY_1
Test: Test suite for source file discovery with gitignore support TEST_DISC_1
Test: Test suite for the source copies and pages as build state TEST_SOURCE_PAGES_1
Test: Test suite for Sphinx extension source tracing functionality TEST_EXT_1