Mailing list archives : pcb-rnd

ID:3736
From:ge...@igor2.repo.hu
Date:Sun, 2 Feb 2020 04:17:21 +0100 (CET)
Subject:[pcb-rnd] new: import schematics rewrite
replies: 3796 from ge...@igor2.repo.hu
Hi all,
 
after spending about 25 hours on this, I have more or less finished the 
first version of the new import schematics feature.
 
Since majority of our users work from schematics and most of them use 
import schematics for forward annotation, this affects almost everybody. 
You are very likely affected too. Please read this mail and the material 
linked below. *** THESE CHANGES MOSTY LIKELY AFFECT YOU. ***
 
This part of the code was a real dark corner. It really 
needed a full rewrite. I plan to remove the old code later in this cycle 
so please test the new code ASAP.
 
Unfortunately the only way to clean up the mess was breaking backward 
compatibility in a few places. I tried to make the transition as painless 
as possible, I think it will be not that bad for most of us, but please 
prepare for the following changes:
 
- some menus and action names changed
 
- the most common flow, gnetlist, has only a very small change and the 
code usually will automatically switch over the configuration on the first 
import with the new code (but we also have a GUI where you can check and 
chaneg the configuration, see the links below)
 
- the exotic, very rarely used make based import needs some tuning, even 
in the Makefile, but we have detailed doc about that (see the links below)
 
- since the old code could not import any other format or from any other 
external software, the rest of the changes will affect other flows/formats 
only the good way: they became available for easier, single-click import
 
In return we got a much cleaner, easier to maintain code, more 
modularity and major feature improvements on all parts.
 
 
There are three documents dealing with these changes:
 
 
1. Overview on what happened and why and what benefits we get:
 
http://repo.hu/cgi-bin/pool.cgi?cmd=show&node=isch_overview
 
 
2. a howto for easy switch from the old import schematics to the new:
 
http://repo.hu/cgi-bin/pool.cgi?cmd=show&node=isch_switch
 
 
3. a document about the new placement/removal configuration:
 
http://repo.hu/projects/pcb-rnd/user/09_appendix/action_details.html#elementlist
 
 
The last one attempts to fix our long standing problem with how new 
subcircuits placed in an import and excess subcircuits after an import 
should be handled. It provides multiple options with an internal structure 
that makes it easy to extend. If anyone shows active interest, I can make 
script binding to this so you can write an user script for placement and 
removal strategy. 
 
As an user I find the "frame" method of placement and "list" method of 
removal the best combination.
 
While being there, I've also fixed a bug we had: the nonetlist flag on a 
subcircuit makes sure it is not scheduled for removal in an import. This 
is a good alternative to "no refdes" subcircuits.
 
Please test the new code and report any bug or srangeness.
 
Best regards,
 
Igor2
 

Reply subtree:
3736 [pcb-rnd] new: import schematics rewrite from ge...@igor2.repo.hu
  3796 Re: [pcb-rnd] new: import schematics rewrite (call for test from ge...@igor2.repo.hu
    3797 Re: [pcb-rnd] new: import schematics rewrite (call for test results) from Majenko Technologies <ma...@majenko.co.uk>
    3798 Re: [pcb-rnd] new: import schematics rewrite (call for test results) from Gabriel Paubert <pa...@iram.es>
      3801 Re: [pcb-rnd] new: import schematics rewrite (call for test from ge...@igor2.repo.hu