Fix incremental connectivity

The connectivity routine would consider symbols, overwriting unused
subgraphs for pins that were not in the change list.  This is resolved
by updating the full connectivity to only use pins in the graph since
symbols are not connected independently.

In the process of adding QA tests for this change, additional issues
with the schematic QA were discovered.  Specifically, we were not
properly setting the root sheet UUID.  This was partially masked by a
const_cast setting of the RefDes in sch_symbol when called the RefDes
getter.  This exposed the fact that our QA ERC numbers did not match the
schematic editor stand alone ERC numbers.  So the test value for one
check needed to be updated

Fixes https://gitlab.com/kicad/code/kicad/-/issues/17528
This commit is contained in:
Seth Hillbrand
2024-04-10 17:25:58 -07:00
parent 59f99d9a6a
commit a9f35ba42e
14 changed files with 898 additions and 87 deletions
+1 -1
View File
@@ -51,7 +51,7 @@ void LoadSheetSchematicContents( const std::string& fileName, SCH_SHEET* sheet )
wxASSERT( fileStream.is_open() );
STDISTREAM_LINE_READER reader;
reader.SetStream( fileStream );
SCH_IO_KICAD_SEXPR_PARSER parser( &reader );
SCH_IO_KICAD_SEXPR_PARSER parser( &reader, nullptr, 0, sheet );
parser.ParseSchematic( sheet );
}