← Back to team overview

kicad-developers team mailing list archive

Bug 1677282 fix feedback.


I have found and fixed the bug in this bug report:


This bug creates invalid schematic files which sets the component unit
flag to 0 and breaks the netlist generator.  The fix itself is simple.
What is not simple is what to do about the invalid schematic files that
have already been created.  I added code to schematic parser to fix this
but this creates a dilemma.  Technically the schematic is modified which
begs the question, what to do next.  None of the following choices are
particularly appealing:

1) Do nothing and leave the file in an invalid status until the next
time the user saves the schematic.  This is probably the most convenient
but what about broken schematics being used by versions of kicad prior
to this fix?

2) Set the schematic modified status which will trigger a save warning
when eeschema is closed even if the user hasn't made any changes.  We
already do this with SCH_SCREEN::SchematicCleanUp() that gets called
lots of places outside of schematic editing.  The problem with this is
that the user has no idea why they are getting a save warning when they
didn't actually change anything.

3) Set the schematic modified status and inform the user that there was
an error in their schematic file that was repaired on load and requires
saving.  This is the most informative for the user but reeks of nagware.

4) Silently save the corrected schematic with no user interaction.  This
will undoubtedly make VCS users unhappy.

As much as I hate nagware, I like unexpected save warnings when I
haven't changed anything even less so I'm leaning towards option 3.  Any
feedback would be appreciated.



Follow ups