X-Authentication-Warning: delorie.com: mail set sender to geda-user-bounces using -f X-Recipient: geda-user AT delorie DOT com Date: Wed, 30 Dec 2015 07:22:00 +0100 (CET) X-X-Sender: igor2 AT igor2priv To: geda-user AT delorie DOT com X-Debug: to=geda-user AT delorie DOT com from="gedau AT igor2 DOT repo DOT hu" From: gedau AT igor2 DOT repo DOT hu Subject: Re: [geda-user] Project leadership (design error in the core of gschem) In-Reply-To: Message-ID: References: <43CC8F96-6452-40FA-9DFB-E0983721C19C AT noqsi DOT com> <20151229094603 DOT 782092b57563336883546bfd AT gmail DOT com> <449C2A4A-814E-4858-ACB3-82807A80BE8A AT noqsi DOT com> User-Agent: Alpine 2.00 (DEB 1167 2008-08-23) MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed Reply-To: geda-user AT delorie DOT com Errors-To: nobody AT delorie DOT com X-Mailing-List: geda-user AT delorie DOT com X-Unsubscribes-To: listserv AT delorie DOT com Precedence: bulk On Tue, 29 Dec 2015, John Doty wrote: > > On Dec 29, 2015, at 10:29 PM, gedau AT igor2 DOT repo DOT hu wrote: > >>> >>> A common netlist/bom format with a canonical form (so equivalent netlists would be identical) would be a useful intermediate. >> >> Could work. To me, the current patch format is much cleaner. I already have fully working code both in pcb-rnd and gschem. If you implement an alternative solution that is at least as capable, let me know. > > I?m not saying get rid of your patch format. But you took a shortcut generally not available by having pcb make the patch directly. False. I did make a shortcut, but on a totally different level of abstraction. Look at how these changes happen (in pcb or anywher else). There's a model of the world in the tool; the user performs some actions; the tool converts these actions into changes in the model. What I realized was this: instead of applying the changes to the model and then trying to regain the same changes by diffing two models, it's more efficient to just save the diff. Not because pcb, not because the netlist forma,t not because flow-specific things. Only because the actual user input _is_ a change, and this way I can avoid converting it forth-and-back. I don't see any real advantage of not saving the diff but generating the changed model and then regenerating the diff later. > Some more general approach is needed. Common, canonical forms of netlist > and BOM could drive patch file generation, and they could be useful for > other things (as others have noted). Since you failed to prove that: - my approach was not generic - yours is more generic - and more generic is really needed your conclusion is wrong. Nevertheless, if you implement a fully working version of your approach, unlike you, I am willing to give it a try.