← Back to team overview

kicad-developers team mailing list archive

Re: [PATCH] DRC: Add an optional mode to report all track errors

 

Hi Jon-

I don't see anything inherently problematic here.  Works as advertised and
seems to be minimally invasive.

I suspect that your primary speed bump is the BOARD_COMMIT being called on
each segment error marker.  You might get bang for the buck by
conditionally starting a BOARD_COMMIT at the beginning of DoTrackDRC in the
case where you are reporting all errors and commit.add the markers rather
than calling addMarkerToPcb().  Then push at the end of the function.
Also, do we need to create undo entries for the DRC markers?  I suspect not
but I could be overlooking something.

All that said, this is a useful addition and definitely speeds up error
resolution on problematic boards.

-S

2018-03-19 19:58 GMT-07:00 Jon Evans <jon@xxxxxxxxxxxxx>:

> I'd like some eyes on this before I push it, since it's a rather
> significant change.
>
> I have added a (disabled by default) option to report all DRC issues on
> each tested track.  The current behavior is to stop at the first error,
> which means that the only way to get a full DRC report is to fix errors one
> by one.
>
> See: https://bugs.launchpad.net/kicad/+bug/1754442
>
> I tried to make this change as minimal as possible because I know the DRC
> code is a target for refactoring after 5.0.  The performance of the current
> system is not great, and I can think of several optimizations that would
> help a lot, but I think they would touch too much to be a part of 5.0.
> Fortunately there is progress reporting on this step, so at least users
> will have feedback.
>
> -Jon
>
> _______________________________________________
> Mailing list: https://launchpad.net/~kicad-developers
> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~kicad-developers
> More help   : https://help.launchpad.net/ListHelp
>
>

Follow ups

References