← Back to team overview

kicad-developers team mailing list archive

Re: PcbNew netlist updating codepaths

 

I suspect the original intent was to move both to the new one, it just never got done.

If you want help with it Jon, give a scream.  I’ve been in that code a bit.

Cheers,
Jeff.


> On 18 Mar 2019, at 17:37, Jon Evans <jon@xxxxxxxxxxxxx> wrote:
> 
> Thanks for the history.  I don't want to remove the manual netlist workflow, but I do think it would be good for the under-the-hood part to be unified to BOARD_NETLIST_UPDATER.
> I'm looking at some possible bugs/enhancements here related to the bus upgrades, so I will see if it is practical to combine them.
> 
> -Jon
> 
> On Mon, Mar 18, 2019 at 1:35 PM Wayne Stambaugh <stambaughw@xxxxxxxxx <mailto:stambaughw@xxxxxxxxx>> wrote:
> Hi Jon,
> 
> On 3/18/2019 12:21 PM, Jon Evans wrote:
> > Does anyone know why we have two different netlist update codepaths?
> > 
> > When using "Update PCB from Schematic" workflow, the netlist is
> > processed by BOARD_NETLIST_UPDATER called from PCB_EDIT_FRAME::KiwayMailIn()
> 
> This was created when the "Update PCB from Schematic" workflow was
> implemented.  Judging by the error messages in BOARD_NETLIST_UPDATER, I
> would guess this was derived from the original BOARD::ReplaceNetlist()
> and split into more manageable chunks.  I believe this was written by
> either Tom or Orson so maybe they can shed some more light on it.
> 
> > 
> > When using "Load Netlist" workflow, the netlist is processed
> > by BOARD::ReplaceNetlist() called by PCB_EDIT_FRAME::ReadPcbNetlist()
> 
> This is the original netlist import code and is called when loading the
> netlist using an external netlist file.  I'm not sure why this was not
> replaced with the new BOARD_NETLIST_UPDATER object when the above was
> written.  I wrote this by merging the original netlist update code into
> BOARD::ReplaceNetlist which used to require access to the frame window.
>  I removed that dependency because it was preventing the BOARD object
> from being built without UI code which I consider a worthwhile objective.
> 
> Now we have two separate netlist update code paths to maintain. :( I
> would prefer that we used BOARD_NETLIST_UPDATER in both code paths.  I'm
> not completely sure we can or should remove the manual netlist update
> code.  There was talk of some day having a real command line interface
> for performing automated tasks so this would have to remain if we wanted
> to update the netlist from the command line.
> 
> Cheers,
> 
> Wayne
> 
> > 
> > Best,
> > Jon
> > 
> > _______________________________________________
> > Mailing list: https://launchpad.net/~kicad-developers <https://launchpad.net/~kicad-developers>
> > Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx>
> > Unsubscribe : https://launchpad.net/~kicad-developers <https://launchpad.net/~kicad-developers>
> > More help   : https://help.launchpad.net/ListHelp <https://help.launchpad.net/ListHelp>
> > 
> 
> _______________________________________________
> Mailing list: https://launchpad.net/~kicad-developers <https://launchpad.net/~kicad-developers>
> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx>
> Unsubscribe : https://launchpad.net/~kicad-developers <https://launchpad.net/~kicad-developers>
> More help   : https://help.launchpad.net/ListHelp <https://help.launchpad.net/ListHelp>
> _______________________________________________
> 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